SQL复习

合集下载

sql 五十题

sql 五十题

sql 五十题以下是一些SQL练习题,共50题:1. 什么是SQL?2. 什么是关系型数据库?3. 什么是主键?4. 什么是外键?5. 什么是索引?6. 什么是查询?7. 什么是插入操作?8. 什么是更新操作?9. 什么是删除操作?10. 什么是聚合函数?11. 什么是分组操作?12. 什么是排序操作?13. 什么是联接操作?14. 什么是子查询?15. 什么是视图?16. 什么是存储过程?17. 什么是触发器?18. 如何使用WHERE子句进行过滤?19. 如何使用ORDER BY子句进行排序?20. 如何使用GROUP BY子句进行分组?21. 如何使用HAVING子句进行分组过滤?22. 如何使用JOIN操作联接表?23. 如何使用聚合函数SUM、AVG、MIN、MAX?24. 如何使用聚合函数COUNT、COUNT()和COUNT(列名)的区别?25. 如何使用子查询嵌套查询?26. 如何创建视图并查询视图数据?27. 如何创建存储过程并调用存储过程?28. 如何创建触发器并触发触发器?29. 如何使用INSERT INTO语句插入数据?30. 如何使用UPDATE语句更新数据?31. 如何使用DELETE语句删除数据?32. 如何使用TRUNCATE TABLE语句清空表数据?33. 如何使用UNION操作符合并多个查询结果?34. 如何使用UNION ALL操作符合并多个查询结果(包括重复行)?35. 如何使用IN操作符筛选符合条件的多个值?36. 如何使用LIKE操作符进行模糊查询?37. 如何使用NOT操作符进行否定筛选?38. 如何使用BETWEEN操作符筛选范围值?39. 如何使用EXISTS操作符检查子查询结果是否存在?40. 如何使用NOT EXISTS操作符检查子查询结果是否存在(否定筛选)?41. 如何使用CASE语句进行条件判断和值转换?42. 如何使用DISTINCT关键字去除查询结果的重复行?43. 如何使用LIMIT关键字限制查询结果的行数?44. 如何使用JOIN操作连接多个表并筛选数据?45. 如何使用INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN的区别和用法?46. 如何使用视图提高查询效率和维护数据安全性?47. 如何使用存储过程存储复杂的业务逻辑和重复使用的查询语句?48. 如何使用触发器自动执行特定事件或数据修改操作?49. 如何优化SQL查询性能,提高数据库的响应速度?50. 如何安全地管理和维护数据库,确保数据的完整性和可靠性?。

SQL基础复习03--数据查询SQL语句(单表查询)

SQL基础复习03--数据查询SQL语句(单表查询)

SQL基础复习03--数据查询SQL语句(单表查询)参考教材《数据库系统:原理、设计与编程(MOOC版)》,陆鑫张凤荔陈安龙终于到查询这⼀块了。

3.4 数据查询SQL语句3.4.1 查询语句基本结构SELECT [ALL/DISTINCT] <⽬标列>[,<⽬标列>...][INTO <新表>]FROM <表名>[,<表名>...][WHERE <条件表达式>][GROUP BY <列名> [HAVING <条件表达式>]ORDER BY <列名> [ASC/DESC]];SELECT语句由多种字句组成:1. SELECT⼦句,⽤来指明从数据库表中需要查询的⽬标列。

ALL是默认操作,获取所有满⾜条件的数据⾏;DISTINCT⽤来去掉结果集中的重复数据⾏;<⽬标列>为被查询表的指定列名,可以有多个。

2. INTO⼦句,⽤来将被查询的结果集数据插⼊新表。

3. FROM⼦句,⽤来指定被查询的数据来⾃哪个表或哪些表。

多表⽤逗号分隔。

4. WHERE⼦句,⽤来给出查询的检索条件,多个条件之间可以⽤AND、OR进⾏连接。

5. GROUP BY⼦句,⽤来对查询结果进⾏分组,并进⾏分组统计等处理,在分组中,还可以使⽤HAVING关键词定义分组条件。

6. ORDER BY⼦句,⽤来对查询结果集进⾏排序。

ASC当然是升序,DESC是降序。

默认为ASC。

从SELECT语句的操作结果看,<⽬标列>实现对关系表的投影操作,WHERE <条件表达式>实现对关系表的元组选择操作。

当前Student表的全部数据:下⾯将会对该表进⾏⼀系列查询操作3.4.2 从单表读取指定列SELECT <⽬标列>[,<⽬标列>...]FROM <表名>;例3-191. 从Student表中读取学⽣的学号、姓名、专业三列数据:SELECT StudentID, StudentName, MajorFROM Student;GO2. 从Student表中查询所有列数据:SELECT *FROM Student;GO3. 只查Major数据:SELECT MajorFROM Student;GO倘若只想查出不同的专业名称,可以消除重复⾏,⽤DISTINCT:SELECT DISTINCT MajorFROM Student;GO3.4.3 从单表读取指定⾏SELECT *FROM <表名>WHERE <条件表达式>;例3-20从Student表中读取专业为“软件⼯程”,性别为“男”的学⽣数据:SELECT *FROM StudentWHERE Major='软件⼯程' AND StudentGender='男';GO3.4.4 从单表读取指定⾏和列SELECT <⽬标列> [,<⽬标列>...]FROM <表名>WHERE <条件表达式>;例3-21从Student表中读取专业为“软件⼯程”,性别为“男”的学⽣的学号、姓名、性别、专业四列的数据:SELECT StudentID, StudentName, StudentGender, MajorFROM StudentWHERE Major='软件⼯程' AND StudentGender='男';GO3.4.5 WHERE⼦句条件在WHERE⼦句条件中,可以⽤BETWEEN...AND关键词来限定列值范围,还可以⽤关键字LIKE与通配符来限定查询范围,NOT LIKE⽤于给出不在范围的条件。

sql考试题及答案

sql考试题及答案

sql考试题及答案SQL考试题及答案一、选择题(每题2分,共20分)1. 下列哪个SQL语句用于查询数据?A. SELECTB. INSERTC. UPDATED. DELETE答案:A2. 以下哪个SQL语句用于删除表中的数据?A. DROP TABLEB. DELETE FROMC. TRUNCATE TABLED. ALTER TABLE答案:B3. SQL中的主键约束是什么?A. UNIQUEB. PRIMARY KEYC. FOREIGN KEYD. CHECK答案:B4. 以下哪个函数用于计算字符串的长度?A. CONCAT()B. SUBSTRING()C. LENGTH()D. UPPER()答案:C5. 以下哪个语句用于添加新的数据表?A. CREATE DATABASEB. CREATE TABLEC. ALTER TABLED. DROP TABLE答案:B6. SQL中的LIKE语句用于什么?A. 排序B. 条件搜索C. 聚合数据D. 连接表答案:B7. 以下哪个语句用于修改表结构?A. CREATE TABLEB. ALTER TABLEC. DROP TABLED. TRUNCATE TABLE答案:B8. SQL中的GROUP BY语句用于什么?A. 排序结果B. 聚合数据C. 过滤数据D. 连接表答案:B9. 以下哪个语句用于删除数据库?A. DROP TABLEB. DROP DATABASEC. DELETE FROMD. TRUNCATE TABLE答案:B10. SQL中的INNER JOIN用于什么?A. 内连接B. 外连接C. 全连接D. 交叉连接答案:A二、填空题(每空2分,共20分)1. SQL中的______语句用于插入数据到表中。

答案:INSERT INTO2. 要查询所有列,可以使用SQL中的______关键字。

答案:*3. SQL中的______语句用于删除表。

sql考试题及答案

sql考试题及答案

sql考试题及答案一、选择题1. SQL是什么意思?a. Structured Query Languageb. Sequential Query Languagec. Structured Question Languaged. Sequential Question Language答案:a. Structured Query Language2. 下列哪个关键词用于在SQL中创建新表?a. UPDATEb. INSERTc. CREATEd. SELECT答案:c. CREATE3. 在SQL中,用于查找符合一定条件的记录的关键词是?a. SELECTb. UPDATEc. INSERTd. DELETE答案:a. SELECT4. 在SQL中,如何在表中添加新的数据?a. INSERT INTOb. ADD INTOc. UPDATEd. MODIFY答案:a. INSERT INTO5. 在SQL中,如何删除表中的数据?a. DELETE ROWb. REMOVEc. DELETE FROMd. ERASE FROM答案:c. DELETE FROM二、填空题1. SQL中用于选择所有列的通配符是______。

答案:*2. SQL中用于指定唯一键的关键词是______。

答案:PRIMARY KEY3. SQL中用于按照某一列对结果进行排序的关键词是______。

答案:ORDER BY4. SQL中用于更新数据的关键词是______。

答案:UPDATE5. SQL中用于计算某一列的总和的函数是______。

答案:SUM三、简答题1. 请解释SQL中的JOIN操作。

答案:JOIN操作用于连接两个或多个表,基于表之间的关联关系获取相关数据。

常用的JOIN类型包括INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN。

2. 什么是SQL注入?如何防止SQL注入?答案:SQL注入是一种恶意的攻击方式,通过在用户输入的数据中插入恶意的SQL代码,以获取、修改或删除数据库中的数据。

sql入门试题

sql入门试题

sql入门试题SQL(Structured Query Language)是用于管理和操作关系数据库的标准化查询语言。

以下是一组SQL 入门试题,旨在测试对基本SQL 查询语句的理解和应用。

一、选择题1.下列哪个是SQL 的关键字?– A. SELECT– B. PRINT– C. SEARCH– D. FIND2.在SQL 中,用于从表中检索数据的命令是?– A. RETRIEVE– B. SELECT– C. GET– D. EXTRACT3.SQL 中用于过滤结果的子句是?– A. WHERE– B. FROM– C. SELECT– D. ORDER BY4.在SQL 中,用于按照某一列对结果进行排序的子句是?– A. GROUP BY– B. ORDER BY– C. SORT BY– D. ARRANGE BY5.在SQL 中,用于将结果按照某一列进行分组的子句是?– A. GROUP BY– B. ORDER BY– C. SORT BY– D. ARRANGE BY二、填空题6.编写一个SQL 查询,从"Employees" 表中选择所有员工的名字和薪水。

SELECT Name, SalaryFROM Employees;7.编写一个SQL 查询,从"Products" 表中选择产品的名称和价格,并按价格从高到低排序。

SELECT ProductName, PriceFROM ProductsORDER BY Price DESC;8.编写一个SQL 查询,统计"Orders" 表中订单的总数。

SELECT COUNT(*) AS TotalOrdersFROM Orders;9.编写一个SQL 查询,找到"Customers" 表中不重复的城市数量。

SELECT COUNT(DISTINCT City) AS UniqueCitiesFROM Customers;三、简答题10.解释SQL 中的WHERE 子句的作用。

sql期末考试题及答案

sql期末考试题及答案

sql期末考试题及答案SQL期末考试题及答案一、选择题(每题2分,共20分)1. SQL代表什么?A. Structured Query LanguageB. Simple Query LanguageC. Standard Query LanguageD. Streamline Query Language答案:A2. 在SQL中,用于查询数据的命令是什么?A. SELECTB. INSERTC. UPDATED. DELETE答案:A3. 下列哪个不是SQL的数据类型?A. INTB. CHARC. IMAGED. DATE答案:C4. SQL中的主键约束是什么?A. 唯一性约束B. 非空约束C. 默认值约束D. 检查约束答案:A5. SQL语句中,用于插入数据的命令是什么?A. SELECT INTOB. INSERT INTOC. UPDATED. DELETE答案:B6. 下列哪个不是SQL中的聚合函数?A. COUNTB. AVGC. SUMD. DISTINCT答案:D7. SQL中的外连接是什么?A. INNER JOINB. LEFT JOINC. RIGHT JOIND. OUTER JOIN答案:D8. SQL中的事务是什么?A. 一组SQL语句的集合B. 一个数据库表C. 一个数据库视图D. 一个数据库索引答案:A9. SQL中的视图是什么?A. 一个数据库表B. 一个数据库索引C. 一个虚拟的数据库表D. 一个数据库存储过程答案:C10. SQL中的存储过程是什么?A. 一组预先编写好的SQL语句B. 一个数据库表C. 一个数据库视图D. 一个数据库触发器答案:A二、简答题(每题5分,共30分)1. 解释SQL中的主键和外键的区别。

答案:主键是表中用来唯一标识每条记录的字段,不能有重复值,也不能为NULL。

外键是一个表中的字段,它对应于另一个表的主键,用于维护两个表之间的链接。

SQL复习资料

SQL复习资料

题型:填空(10’),单选(10’),判断(10’),简答题(30’),程序设计(40’):表中数据操作(30’)5-6章程序修改(10’)视图1.数据库系统(DBS)包括数据库(DB/database),数据库管理系统(DBMS),数据库管理员(BDA)。

2.数据库是长期存储在计算机内、有组织的、可共享的、统一管理的相关数据的集合。

3.数据模型分为层次模型,网状模型,关系模型。

4.实体联系模型主要要素:实体(矩形框表示),联系(菱形框表示),属性(椭圆形表示)。

5.联系的类型:“一对一(1:1)”,“一对多(1:n)”,“多对多(n:n)”。

6.关系范式:第一范式(基本),第二范式,第三范式(必须满足),BC范式,第四范式,第五范式。

7.SQL是标准的关系数据库操作语言。

8.SQL语言包括数据查询语言(Data Retrieval)、数据操作语言(DML)、数据定义语言(DDL)、数据控制语言(DCL)和事务控制语言(Transaction Control)。

9.系统数据库:master 、model 、msdb 、tempdb 。

10.数据文件包括:①主数据文件(.mdf , 数据库中只能含有一个);②次数据文件(.ndf ,可以有0~n个)。

11.SQL Server 遵循先写日志(.ldf)后操作。

12.视图被定义后便存储在数据中,通过视图看到的数据只是存放在基表中的数据。

党对通过视图看到的数据修改时,相应的基表的数据已发生变化。

当对基表的数据发生变化时,变化也尝自动反映在视图中。

13.视图的优点:①集中用户使用的数据;②屏蔽数据库的复杂性。

14.索引的类型:①聚集索引;②非聚集索引。

15.数据完整性分为4种类型:实体完整性、域完整性、引用完整性和用户自定义完整性。

16.主键约束(PRIMARY KEY)是在表中定义一个主键来唯一确定表中的每一行记录。

主键可以定义在单列上,也可以在多列上。

全国计算机二级sql知识点

全国计算机二级sql知识点

全国计算机二级sql知识点
全国计算机二级SQL的知识点包括但不限于:
1. SQL的数据定义语言(DDL),如CREATE、ALTER、DROP等命令,用于定义和管理数据库中的表、视图、索引等对象。

2. SQL的数据操纵语言(DML),如INSERT、UPDATE、DELETE等命令,用于添加、修改、删除数据库中的数据。

3. SQL的数据查询语言(DQL),如SELECT命令,用于查询数据库中的数据,可以进行条件查询、聚合查询、连接查询等操作。

4. SQL的数据控制语言(DCL),如GRANT、REVOKE等命令,用于控制数据库中的数据访问权限。

5. 数据库规范化理论,包括第一范式(1NF)、第二范式(2NF)、第三范式(3NF)等,用于规范化数据库表的设计,消除数据冗余和提高数据一致性。

6. 数据库设计的基本概念和方法,如ER图、实体-关系模型等,用于设计数据库结构和数据关系。

7. 数据库的备份与恢复技术,如备份数据库文件、恢复数据库文件等,用于保护数据库的数据安全和完整性。

8. 数据库的性能优化技术,如索引优化、查询优化等,用于提高数据库性能和响应时间。

9. 数据库的安全性管理,如用户账户管理、权限控制等,用于保护数据库的安全和机密信息。

以上是全国计算机二级SQL知识点的一部分,仅供参考。

具体考
试内容和要求可能因地区和考试机构而有所不同,建议查阅相关的考试大纲和教材。

第 5 章 复习 SQL(结构化查询语言)

第 5 章  复习 SQL(结构化查询语言)

在T_SQL中,连接查询有两大类表示 形式,一是符合SQL标准连接谓词表示形 式,二是T_SQL扩展使用关键字JOIN的表 示形式。
① 指定每个表中要用于连接的列。典型的 连接条件在一个表中指定外键,在另一个 表中指定与其关联的键。 ② 指定比较各列的值时要使用的逻辑运算 符,如“=、< >”等。
[^]
BDTWEEN„AND IS NULL
LIKE
IN EXISห้องสมุดไป่ตู้S
模式匹配,字符串匹配操作符
检查一个字段值是否属于一组值之中 检查某一个字段值是否有值,实际上,EXISTS是IS NULL的反义词
4.练习
列出性别为女的学生姓名、家庭住址 SELECT student_name, address FROM student_info WHERE student_sex='女'
SQL查询
函数及统计
分组排序
连接 子查询
5.6 基于多表的连接查询
在关系型数据库中,将一个查询同时 涉及两个或两个以上的表,称为连接查询。 基于多表的查询是通过所谓的连接查 询来完成的。连接是根据各个表之间的逻 辑关系从两个或多个表中查询数据,结果 通常是含有参加连接运算的两个表(或多 个表)的指定列的表。
列出1980年以后出生的学生的情况 SELECT * FROM student_info WHERE born_date >'1980-12-31'
列出所有家住“武汉市”的男学生姓名、电 话号码和家庭住址
SELECT student_name, tele_number, student_sex, address FROM student_info WHERE substring(address,1,3)='武汉市' AND student_sex='男'

《数据库系统概论》SQL语言复习题(含答案)

《数据库系统概论》SQL语言复习题(含答案)

SQL语言习题一、单项选择题1.SQL语言是的语言,易学习。

A.过程化B.非过程化C.格式化D.导航式答案:B2.SQL语言是语言。

A.层次数据库B.网络数据库C.关系数据库D.非数据库答案:C3.SQL语言具有的功能。

A.关系规范化、数据操纵、数据控制B.数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制D.数据定义、关系规范化、数据操纵答案:B4.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE和DELETE等。

其中最重要的,也是使用最频繁的语句是。

A.SELECT B.INSERT C.UPDA TE D.DELETE答案:A5.SQL语言具有两种使用方式,分别称为交互式SQL和。

A.提示式SQL B.多用户SQL C.嵌入式SQL D.解释式SQL答案:C6.SQL语言中,实现数据检索的语句是。

A.SELECT B.INSERTC.UPDATE D.DELETE答案:A7.下列SQL语句中,修改表结构的是。

A.ALTER B.CREATEC.UPDATE D.INSERT答案:A第8到第11题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下:S(S#,SN,SEX,AGE,DEPT)C(C#,CN)SC(S#,C#,GRADE)其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。

8.检索所有比“王华”年龄大的学生姓名、年龄和性别。

正确的SELECT语句是。

A.SELECT SN,AGE,SEX FROM SWHERE AGE>(SELECT AGE FROM SWHERE SN=’王华’)B.SELECT SN,AGE,SEX FROM SWHERE SN=’王华’C.SELECT SN,AGE,SEX FROM SWHERE AGE>(SELECT AGEWHERE SN=’王华’)D.SELECT SN,AGE,SEX FROM SWHERE AGE>王华.AGE答案:A9.检索选修课程“C2”的学生中成绩最高的学生的学号。

sql数据库考试题库

sql数据库考试题库

sql数据库考试题库SQL数据库考试题库一、选择题(每题2分,共20分)1. SQL代表什么?A. Structured Query LanguageB. Simple Query LanguageC. Standard Query LanguageD. None of the above2. 在SQL中,用来查询数据的关键字是:A. SELECTB. INSERTC. UPDATED. DELETE3. 下列哪个不是SQL数据类型?A. INTB. DATEC. TEXTD. IMAGE4. 以下哪个SQL语句用于删除表?A. DROP TABLEB. REMOVE TABLEC. DELETE TABLED. ERASE TABLE5. 在SQL中,用来插入数据的关键字是:A. INSERT INTOB. ADD INTOC. CREATE INTOD. PUT INTO6. 以下哪个是SQL的聚合函数?A. AVG()B. AVERAGE()C. MEAN()D. SUM()7. SQL中的主键是什么?A. 一个表中唯一的字段B. 一个表中可以有多个的字段C. 一个表中不允许重复的字段D. 一个表中可以有多个的字段,但它们必须一起是唯一的8. SQL中的外键是什么?A. 一个表中与另一个表的字段相关联的字段B. 一个表中与自身字段相关联的字段C. 一个表中不允许为空的字段D. 一个表中可以为空的字段9. 在SQL中,用来更新数据的关键字是:A. UPDATEB. MODIFYC. CHANGED. ALTER10. SQL中的事务是什么?A. 一组SQL语句,要么全部执行,要么全部不执行B. 一个单独的SQL语句C. 一个数据库D. 一个表二、填空题(每题2分,共20分)11. SQL中的________是用来定义和修改数据库结构的语言。

12. 在SQL中,使用________语句可以添加新的数据行到表中。

(完整版)SQL复习题(附部分答案)

(完整版)SQL复习题(附部分答案)

一、单选题1.根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:(___)A.只存在一对多的实体关系,以图形方式来表示。

B.以二维表格结构来保存数据,在关系表中不允许有重复行存在。

C.能体现一对多、多对多的关系,但不能体现一对一的关系。

D.关系模型数据库是数据库发展的最初阶段。

答案[B]2、在“连接”组中有两种连接认证方式,其中在(___)方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。

A、Windows身份验证B、SQL Server 身份验证C、以超级用户身份登录时D、其他方式登录时答案[B]3、关系数据库中,主键是(___),当运用Transact-SQL语句创建主键时,可以是(__)。

⑴ A、为标识表中唯一的实体 B、创建唯一的索引,允许空值C、只允许以表中第一字段建立D、允许有多个主键的⑵ A、create table table1(column1 char(13) not null primary key,column2 int not on primary key;B、alter table table1 with nocheck addconstraint [PK_table1] primary key nonclustered ( column1) on primary;C、alter table table1 column1 primary key ;答案[ A C]4、视图是一种常用的数据对象,可以简化数据库操作,当使用多个数据表来建立视图时,不允许在该语句中包括(___)等关键字。

A、ORDER BY,COMPUTEB、ORDER BY,COMPUTE,COMPUTR BYC、ORDER BY,COMPUTE BY,GROUP BYD、GROUP BY,COMPUTE BY答案[B ]5、在Transact-SQL语法中,SELECT语句的完整语法较复杂,但至少包括的部分(_1_),使用关键字(_2_)可以把重复行屏蔽,将多个查询结果返回一个结果集合的运算符是(_3__),如果在SELECT语句中使用聚合函数时,可以在后面使用(_4_)。

高频sql 50 题目 进阶版

高频sql 50 题目 进阶版

高频sql 50 题目进阶版高频SQL 50题进阶版一、聚合函数与分组1.计算每个部门的员工平均薪资。

2.计算每个部门员工的最大和最小薪资。

3.计算每个部门员工的数量。

二、子查询与联接4.找出与“张三”共事的所有同事的姓名。

5.查询出在南京的所有部门中的所有员工及其工资,并按照工资的升序排列。

6.使用JOIN语句连接两个表,获取员工的姓名和其对应的薪资。

三、窗口函数7.使用窗口函数计算每个员工的“本月薪资”和“上月薪资”。

8.计算每个员工的“季度奖金”,基于其所在部门的平均季度销售额。

9.使用窗口函数为每个员工的工资计算一个“涨幅”列,表示其工资与上一级别工资的差值。

四、索引与优化10.分析某个表的索引结构,并提出优化建议。

11.使用EXPLAIN分析某个查询的执行计划,并提出优化建议。

12.设计一个索引,优化某个查询的性能。

五、存储过程与触发器13.创建一个存储过程,实现根据部门编号查询部门员工信息的功能。

14.创建一个触发器,在员工信息更新时自动更新其所在部门的最新员工数量。

15.分析存储过程和函数的区别。

六、事务处理与并发16.描述事务的ACID属性。

17.分析一个事务中的SQL语句,确保其满足ACID属性。

18.设计一个并发控制机制,确保多个事务对同一数据的访问不会产生冲突。

七、性能调优19.分析某个查询的性能瓶颈,并提出优化建议。

20.使用EXPLAIN进行查询性能分析,提出优化策略。

21.对数据库性能进行监控和预警。

八、数据库设计22.设计一个简单的数据库结构,包含用户表、订单表和订单明细表,并指出各表之间的关系。

23.分析数据库规范化与反规范化的优缺点。

24.设计一个数据库模式,满足某公司的业务需求,并解释其设计理由。

九、数据库安全25.分析数据库的安全风险,并提出相应的防范措施。

26.设计一个用户权限管理机制,确保不同用户只能访问其权限范围内的数据。

27.描述数据库备份的重要性及常用的备份策略。

Sql操作复习

Sql操作复习

Sql操作复习1.设有关系模式:SB(SN,SNAME,CITY)其中,S表示供应商,SN为供应商代号,SNAME为供应商名字,CITY为供应商所在城市,主关键字为SN。

PB(PN,PNAME,COLOR,WEIGHT)其中P表示零件,PN为零件代号,PNAME为零件名字,COLOR为零件颜色,WEIGHT为零件重量,主关键字为PN。

JB(JN,JNAME, CITY)其中,J表示工程,JN为工程编号,JNAME为工程名字,CITY为工程所在城市,主关键字为JN。

SPJB(SN,PN,JN,QTY)其中,SPJ表示供应关系,SN是为指定工程提供零件的供应商代号,PN为所提供的零件代号,JN为工程编号,QTY表示提供的零件数量,主关键字为(SN,PN,JN),外部关键字为SN,PN,JN。

写出实现以下各题功能的SQL语句:(1).取出所有工程的全部细节;SELECT *FROM JB(2).取出所在城市为上海的所有工程的全部细节;SELECT *FROM JBWHERE CITY=“上海”(3).取出重量最轻的零件代号;SELECT PNFROM PBWHERE WEIGHT=(SELECT MIN(WEIGHT) FROM PB)(4).取出为工程J1提供零件的供应商代号;SELECT SNFROM SPJBWHERE JN=“J1”(5).取出为工程J1提供零件P1的供应商代号;SELECT SNFROM SPJB;WHERE JN=‘Jl’AND PN=‘Pl’(6).取出由供应商S1提供零件的工程名称;SELECT JB.JNAMEFROM JB,SPJBWHERE JB.JN=SPJB.JN AND SPJB.SN=‘S1’(7).取出供应商S1提供的零件的颜色;SELECT DISTINCT PB.COLORFROM PB,SPJBWHERE PB.PN=SPJB.PN AND SPJB.SN=‘S1’(8).取出为工程J1或J2提供零件的供应商代号;SELECT DISTINCT SNFROM SPJBWHERE JN=‘J1’OR JN=‘J2’(9).取出为工程J1提供红色零件的供应商代号;SELECT DISTINCT SPJB.SNFROM SPJB,PBWHERE PB.PN=SPJB.PN AND SPJB.JN=‘J1’AND PB.COLOR=‘红’(10).取出为所在城市为上海的工程提供零件的供应商代号;SELECT DISTINCT SPJB.SNFROM SPJB, JBWHERE SPJB.JN=JB.JN AND JB.CITY‘上海’(11).取出为所在城市为上海或北京的工程提供红色零件的供应商代号;SELECT SPJB.SNFROM PB,JB SPJBWHERE SPJB.PN=PB.PN AND JB.JN=SPJB.JN AND PB.COLOR=’红’AND JB.CITY=’上海’(12).取出供应商与工程所在城市相同的供应商提供的零件代号;SELECT DISTINCT SPJB.PNFROM SB,JB,SPJBWHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY=JB.CITY(13).取出上海的供应商提供给上海的任一工程的零件的代号;SELECT SPJB.PNFROM SB,JB,SPJBWHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY=’上海’(14).取出至少由一个和工程不在同一城市的供应商提供零件的工程代号;SELECT DISTINCT SPJB.JNFROM SB,JB,SPJBWHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY<>JB.CITY(15).取出上海供应商不提供任何零件的工程的代号;SELECT DISTINCT JNFROM SPJBWHERE JN NOT IN(SELECT DISTINCT SPJB.JNFROM SB,SPJBWHERE SB.SN=SPJB.SN AND SB.CITY=’上海’)(16).取出这样一些供应商代号,它们能够提供至少一种由红色零件的供应商提供的零件;SELECT DISTINCT SPJB.SNFROM PB,SPJBWHERE SPJB.PN IN(SELECT SPJB.PNFROM SPJB,SB,PBWHERE SB.SN=SPJB.SN AND PB.PN=SPJB.PN AND PB.COLOR=’红’)(17).取出由供应商S1提供零件的工程的代号;SELECT DISTINCT SPJB.JNFROM SB,PB,SPJBWHERE SB.SN=SPJB.SN AND PB.PN=SPJB.PN AND SB.SN=’S1’(18).取出所有这样的一些〈CITY,CITY〉二元组,使得第1个城市的供应商为第2个城市的工程提供零件;SELECT DISTINCT SB.CITY, JB.CITYFROM SB,JB,SPJBWHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN(19).取出所有这样的三元组〈CITY,PN CITY〉,使得第1个城市的供应商为第2个城市的工程提供指定的零件;SELECT DISTINCT SB.CITY, SPJB.PN, JB.CITYFROM SB,JB,SPJBWHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN(20).重复(19)题,但不检索两个CITY值相同的三元组。

sql复习题库

sql复习题库

s q l复习题库(总14页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--一.单选题708,下列属于数据的是()A、23是正数B、是小数C、2011D、水深5米 C709,下列属于信息的是()A、23是正数B、1985C、2011D、123 A710,数据库的英文缩写是()A、DBB、DBMSC、DBSD、BBS A711,数据库管理系统的英文缩写是()A、DBB、DBMSC、DBSD、BBS B712,数据库系统的英文缩写是()A、DBB、DBMSC、DBSD、BBS C713,人工管理阶段是数据管理技术发展的()A、第一阶段B、第二阶段C、第三阶段D、第四阶段 A714,文件系统阶段是数据管理技术发展的()A、第一阶段B、第二阶段C、第三阶段D、第四阶段 B715,数据库系统阶段是数据管理技术发展的()A、第一阶段B、第二阶段C、第三阶段D、第四阶段 C716,SQL是()数据库管理系统A、层次型B、网状型C、关系型D、数据型 C717,数据处理是指将数据转换成()的过程A、信息B、数据C、计算机D、数字 A数据的形式可以是数字、文字、图形或声音等,数据经过解释并赋予一定的意义之后,便成为信息。

718,数据库管理系统所支持的数据模型有A、数学模型B、层次模型C、物理模型D、经济模型 B719,关系模型是()系统所支持的数据模型A、数据库B、数据表C、数据库管理D、表单 C720,一个二维表操作是一种()A、层次操作B、网络操作C、投影操作D、关系操作 D721,下列系统数据库中最重要的是()A、masterB、modolC、msdbD、tempdb A722,下列属于模版数据库的是()A、masterB、modolC、msdbD、tempdb B723,下列属于代理服务数据库的是()A、masterB、modolC、msdbD、tempdb C724,下列属于临时数据库的是()A、masterB、modolC、msdbD、tempdb D725,下列属于数值型常量的是A、”123”B、’456”C、[789]D、5E-6 D726,123E-5是( )常量A、数值型B、日期型C、字符型D、逻辑型 A727,getdate()是( )类型数据A、数值型B、日期型C、字符型D、逻辑型 B728,'2008-8-8'是( )常量A、数值型B、日期型C、字符型D、逻辑型 C729,exp(0)+25表达式的运算结果是A、25B、25C、26D、27 C730,'123'+‘abc’ 表达式的运算结果是A、[123]B、‘abc’C、'123abc'D、{123abc} C731,1=2表达式的运算结果是A、FB、FalseC、tureD、.T. B732,1>2 or 2>1表达式的运算结果是A、FB、FalseC、tD、ture D733,函数ABS()的值是A、 B、 C、11 D、12 A734,函数SQRT(9)的值是A、9B、4C、3D、6 C735,函数LEN('ABC计算机')的值是A、6B、9C、8D、7 B736,函数SUBSTRING('ABC12计算机',4,2)的值是A、"C12"B、"12计"C、'12'D、"计算机" C737,函数LTRIM(' 计算机')的值是A、" 计算机"B、'计算机'C、"计算机 "D、" 计算机 " B 738,函数YEAR('2009-8-12')的值是A、2009B、2008C、8D、12 A739,函数MONTH('2009-8-12')的值是A、2009B、2008C、8D、12 C740,函数DAY('2009-8-12')的值是A、2009B、2008C、8D、12 D741,函数STR(2009)的值是A、2009B、’2009’C、”2008”D、2010 B742,函数POWER(2,10)的值是A、1000B、100C、20D、1024 D743,函数CEILING的值是A、123B、124C、100D、125 B744,函数FLOOR的值是A、123B、124C、100D、125 A745,函数PI()的值是A、2B、3C、4D、 D746,cast('123' as int)+500的值是A、123500B、623C、123D、500 B747,创建存储过程的命令是A、createB、proceC、execD、exe A748,执行存储过程的命令是A、createB、proceC、execD、exe C749,在表中创建主键约束的关键字是A、primary keyB、uniqueC、checkD、foreign key A 750,在表中创建唯一性约束的关键字是A、primary keyB、uniqueC、checkD、foreign key B751,在表中创建检查约束的关键字是A、primary keyB、uniqueC、checkD、foreign key C752,在表中创建外部键约束的关键字是A、primary keyB、uniqueC、checkD、foreign key D753,创建表的命令是A、createB、alterC、dropD、tabel A754,修改表的命令是A、createB、alterC、dropD、tabel B755,删除表的命令是A、createB、alterC、dropD、tabel C756,防止数据库中数据的丢失的方法之一是对数据库进行A、备份B、还原C、分离D、附加 A757,让数据库回到备份时状态的方法之一是对数据库进行A、备份B、还原C、分离D、附加 B758,让数据库脱离原属服务器的方法之一是对数据库进行A、备份B、还原C、分离D、附加 C759,让数据库附加到相应服务器上的方法是对数据库进行A、备份B、还原C、分离D、附加 D二.判断题760,180———是数据 Y761,180———是信息 N762,他的身高是180cm——是数据 N763,他的身高是180cm———是信息 Y764,数据库的英文缩写是DB Y Data Base765,数据库管理系统的英文缩写是DBMS Y766,数据库系统的英文缩写是DBS Y767,数据管理技术发展的第一阶段是人工管理阶段 Y768,数据管理技术发展的第二阶段是文件系统阶段 Y769,数据管理技术发展的第三阶段是数据库系统阶段 Y770,现实世界是用概念模型来对其进行描述 N771,信息世界是用概念模型来对其进行描述 Y772,实体-联系方法(Entity Relationship Approach)简称E-R方法 Y 773,E-R方法用E-R图来描述现实世界的概念模型 Y774,E-R图提供了表示实体、属性和联系的方法 Y775,数据模型表示数据与数据之间的联系方法 Y776,SQL是关系型数据库管理系统 Y777,SQL是网状型数据库管理系统 N778,一个二维表就是一个关系 Y779,网状型数据模型就是一个二维表 N780,SQL Server是一种基于客户/服务器模式的关系数据库管理系统 Y 781,SQL Server采用Transact-SQL语言在客户机和服务器之间传递信息 Y 782,企业管理器可以完成数据库管理与维护的大部分工作 Y783,查询分析器主要用于输入和执行Transact-SQL语句 Y784,服务管理器用来启动、暂停、继续和停止数据库服务器的实时服务 Y785,123E-5是数值型常量 Y786,{2009-7-26}是日期型常量 N787,{^2009-7-26}是字符型常量 N788,'98632' 是字符型常量 Y789,数值表达式的运算结果是数值型数据 Y790,字符表达式的运算结果是字符型数据 Y791,日期表达式的运算结果是日期型数据 N792,关系表达式的运算结果是关系型数据 N793,逻辑表达式的运算结果是逻辑型数据 Y794,函数rand()的数据类型是数值型的 Y795,函数exp(0)的数据类型是数值型的 Y796,函数len('ase')的数据类型是字符型的 N797,函数len('ase')的数据类型是数值型的 Y798,函数getdate()的数据类型是逻辑型的 N799,函数getdate()的数据类型是日期型的 Y800,表就是数据库,数据库中只有表 N801,字段是字符型常量 N802,数据表中每一行对应一条记录 Y803,删除一个字段就是删除对应表中的一列数据 Y804,删除一个字段就是删除对应表中的一行数据 N805,删除一个记录就是删除对应表中的一行数据 Y806,删除一个记录就是删除对应表中的一列数据 N807,执行路线是一条直线的程序结构为顺序结构 Y808,执行路线从一条分成多条的程序结构为分支结构 Y809,执行路线形成闭环的程序结构为循环结构 Y810,备份数据库的目的是防止数据库中数据的丢失 Y811,备份数据库的目的是防止硬盘损坏 N812,还原数据库的目的是让数据库回到备份时的状态 Y813,还原数据库的目的是重建数据库 N814,分离数据库的目的是让数据库脱离原属服务器 Y815,分离数据库的目的是删除数据库 N816,附加数据库的目的是让数据库附加到相应的服务器上 Y 817,附加数据库只能附加到原来的服务器上 N818,数据库的索引和书籍中的目录非常相似 Y819,为了提高数据检索的能力,在数据库中引入了索引的概念 Y三.命令填空题820,创建数据库gz命令create【 1】 database821,创建数据库gz命令【 1】database create822,打开数据库gz命令【 1】 use823,修改数据库gz命令alter【 1】 database824,修改数据库gz命令【 1】database alter825,删除数据库gz命令drop【 1】 database826,删除数据库gz命令【 1】database drop827,创建数据表cj命令 create 【 1】 table828,创建数据表cj命令【 1】table create829,增加字段:【 1】 table cj add 入学日期 datetime(8) alter830,增加字段:alter table cj 【 1】入学日期 datetime(8) add831,删除表:【 1】 table chji Drop832,删除表:Drop 【 1】 chji table833,插入记录:【 1】 into 成绩表(学号,计算机) values('1026', 75) insert834,插入记录:insert 【 1】成绩表(学号,计算机) values('1026', 75) into835,插入记录:insert into 成绩表(学号,计算机) 【 1】('1026', 75) values836,cj表中插入记录:insert into 【 1】(学号,计算机) values('1026', 75) cj837,把cj表中的内容全部插入到ch中:【 1】 ch select * from insert838,把cj表中的内容全部插入到ch中:insert 【 1】 select * from ch839,把cj表中的内容全部插入到ch中:insert ch 【 1】 * from select840,把cj表中的内容全部插入到ch中:insert ch select * 【 1】 from841,删除理学院的所有记录:【 1】 from gzqd where 单位名称=’理学院’ delete842,删除理学院的所有记录:delete 【 1】 gzqd where 单位名称=’理学院’ from843,删除理学院的所有记录:delete from gzqd 【 1】单位名称=’理学院’ where844,删除理学院的所有记录:delete from gzqd where 单位名称=’【 1】’ 理学院845,计算实发工资:【 1】 gzqd set 实发=基本工资+津贴-个人税-水电费 update846,计算实发工资:update gzqd 【 1】实发=基本工资+津贴-个人税-水电费 set847,查询gzqd表中所有记录:【 1】 * from gzqd Select848,查询gzqd表中所有记录:Select 【 1】 from gzqd *849,查询gzqd表中所有记录:Select * 【 1】 gzqd from850,查询gzqd表中所有记录:Select * from 【 1】 gzqd851,查询gzqd表中姓名和基本工资的情况:Select 姓名, 【 1】 from gzqd 基本工资852,查询gzqd表中前5条记录:Select【 1】5 * from gzqd top853,查询基本工资>1000的记录:select * from gzqd 【 1】基本工资>1000 where854,查询基本工资>1000的记录:select * from gzqd where 基本工资【 1】1000 >855,查询理学院的教授情况:select * from gzqd where 单位名称='【 1】' and 职称='教授' 理学院856,查询理学院的教授情况:select * from gzqd where 单位名称='理学院' 【 1】职称='教授' and 857,查询理学院的教授情况: select * from gzqd where 单位名称='理学院' and 职称='【 1】' 教授858,查询姓李的职工情况;select * from gzqd where 姓名【 1】 '李%' like859,查询姓李的职工情况;select * from gzqd where 姓名 like '【 1】%' 李860,查询姓李的职工情况;select * from gzqd where 姓名 like '李【 1】' %861,查询实发工资在1000-1300元之间的职工情况:select * from gzqd where 实发【 1】 and between862,查询实发工资在1000-1300元之间的职工情况:select * from gzqd where 实发 between 【 1】 and863,查询结果按实发工资降序排列: select * from gzqd order by 实发【 1】 desc864,查询结果按实发工资降序排列: select * from gzqd 【 1】 by 实发 desc order865,统计gzqd表的记录个数:Select 【 1】(*) as 记录数 from gzqd count866,求基本工资的平均值:Select 【 1】(基本工资) from gzqd avg867,求基本工资的平均值:Select avg(【 1】) from gzqd 基本工资868,求基本工资的总额:Select 【 1】(基本工资) from gzqd sum869,查询结果按单位名称分组: Select 单位名称,姓名 from gzqd 【 1】 by 单位名称,姓名 group 870,查询结果按单位名称分组: Select 单位名称,姓名 from gzqd group by 【 1】,姓名单位名称871,保存查询结果到cj:select * 【 1】 cj from cc into872,保存查询结果到cj:select * into 【 1】 from cc cj873,创建视图st:【 1】 view stasselcet * from gzqd create874,创建视图st:create 【 1】 stasselcet * from gzqd view875,创建视图st:create view st【 1】selcet * from gzqd as四.程序填空题876,在数据库xs中建立数据表cj(包括字段:学号、姓名、数学、外语、计算机)use 【1 】create 【 2】【 3】(学号 char(12) not null, 姓名 char(8), 【 4】 decimal(6,2),外语 decimal(6,2), 【5 】 decimal(6,2))xs,table,cj,数学,计算机877,两个变量值的交换declare @a int ,@b int ,@c intset @a=5set @b=9select @a as a,@b as bset @c=@【 1】set @a=@【 2】set @b=@【 3】【 4】 @a as a,@【 5】 as ba,b,c,select,b878,已知三角形的三条边为a、b、c,求其面积。

SQL 复习资料

SQL 复习资料

SQL 复习资料一、单项选择题:1. 在SQL的SELECT语句中用于建立多个表之间联系的短语是()。

A.WHERE B. JOIN C. GROUP BY D. FROM2. SQL用于显示部分查询结果的TOP短语,必须与()短语同时使用。

A. ORDER BYB. FROMC. WHERED. GROUP BY3. 使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当( )A. 使用WHERE子句B. 先使用WHERE子句,再使用HAVING子句C. 在GROUP BY 后面使用HAVING子句D. 先使用HAVING子句,再使用WHERE子句4. 查询语句中,()短语用于实现关系的投影运算。

A. WHEREB. FROMC. SELECTD. GROUP BY5. 使用SQL语句从表STUDENT中查询所有姓王的同学的信息,正确的命令是 ()A. SELECT * FROM STUDENT WHERE LEFT(姓名,2)=“王”B. SELECT * FROM STUDENT WHERE RIGHT(姓名,2)=“王”C. SELECT * FROM STUDENT WHERE TRIM(姓名,2)=“王”D. SELECT * FROM STUDENT WHERE STR(姓名,2)=“王”6. 在SQL语句中,与表达式“仓库号 NOT IN("whl","wh2")”功能相同的表达()A.仓库号="whl" AND 仓库号="wh2"B.仓库号!="whl" OR 仓库号#"wh2"C.仓库号<>"whl" OR 仓库号!="wh2"D.仓库号!="whl" AND 仓库号!="wh2"7.SQL的核心是()A. 查询B. 数据定义C. 数据操纵D. 数据控制8. 在SQL-SELECT语句中用于实现关系的选择运算的短语是()A. FORB. WHILEC. WHERED. CONDITION9. SQL语句SELECT * FROM 职工 ORDER BY 工资 DESC ,的功能是 ( )A.查询职工表中的信息B.查询职工表中工资信息C. 按照工资降序查询职工表中的信息D. 按照工资升序查询职工表中的信息10.下面描述错误的是()。

数据库sql复习题

数据库sql复习题

数据库sql复习题数据库SQL复习题1. SQL基础- 解释SQL(Structured Query Language)的含义。

- 列举SQL的基本操作,包括SELECT, INSERT, UPDATE, DELETE。

2. 数据定义语言(DDL)- 描述CREATE, ALTER, DROP语句的基本用法。

- 举例说明如何使用CREATE TABLE创建一个新表。

3. 数据操纵语言(DML)- 阐述SELECT语句的组成,包括WHERE子句,GROUP BY子句,ORDER BY子句。

- 举例说明如何使用INSERT INTO向表中添加数据。

- 描述UPDATE语句和DELETE语句的用法及其区别。

4. 数据控制语言(DCL)- 解释GRANT和REVOKE语句的作用。

5. 数据查询- 说明如何使用JOIN语句进行表的连接查询。

- 举例说明内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)和全连接(FULL JOIN)的区别。

6. 聚合函数- 列举并解释SQL中的聚合函数,如COUNT, AVG, SUM, MIN, MAX。

7. 子查询- 解释子查询的概念及其在SQL中的使用场景。

8. 事务处理- 描述事务的四个基本属性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。

- 说明如何使用BEGIN TRANSACTION, COMMIT, ROLLBACK进行事务控制。

9. 索引- 解释索引的概念及其在数据库中的作用。

- 描述创建索引(CREATE INDEX)和删除索引(DROP INDEX)的语法。

10. 视图- 说明视图的概念及其优点。

- 举例说明如何创建视图(CREATE VIEW)和使用视图查询数据。

11. 存储过程和触发器- 解释存储过程(Stored Procedures)和触发器(Triggers)的概念。

SQL复习题(附部分答案)

SQL复习题(附部分答案)

语句。
(A)保存 (B)编写 (C)解释 (D)编译
答案[ D]
29、数据管理发展的三个阶段不包括(
)。
(A)人工管理阶段 (B)文件管理阶段
(C)数据库管理阶段 (D)智能管理阶段
答案[ D]
30、SQL 语言按照用途可以分为三类,不包括下面选项中的( )。
(A)DML (B)DCL (C)DQL (D)DDL
B.UPDATE,INSERT
C、DELETE,UPDATE
D.CREATE,INSERT INTO
答案[ A]
47、创建表的命令是( )。
A、 Create database 表名
B.Create VIEW 表名
C、 Create TABLE 表名
D.Alter TABLE 表名
答案[ C]
48、在 Transact-SQL 语法中,SELECT 语句的完整语法较复杂,但至少包括的部分
答案[ D]
19、 聚合函数的返回值是( )。
A、一个标量值 B、一组值 C、表达式 D、表
答案[ A]
20、关于主键描述正确的是:(

(A)包含一列
(B)包含两列
(C)包含一列或者多列 (D)以上都不正确
答案[ ]
22、在 SELECT 语句的 WHERE 子句的条件表达式中,可以匹配 0 个到多个字符的
(C).mdf (D).idf
答案[B ]
27、表示职称为副教授同时性别为男的表达式为(
)
A.职称=‘副教授' OR 性别=‘男'
B.职称=‘副教授' AND 性别=’男'
C.BETWEEN‘副教授' AND ’男'

大学sql试题及答案

大学sql试题及答案

大学sql试题及答案一、单项选择题(每题2分,共20分)1. SQL中用于查询数据的语句是:A. SELECTB. INSERTC. UPDATED. DELETE答案:A2. 在SQL中,用于添加新记录的语句是:A. SELECTB. INSERTC. UPDATED. DELETE答案:B3. SQL中用于修改数据的语句是:A. SELECTB. INSERTC. UPDATED. DELETE答案:C4. SQL中用于删除数据的语句是:A. SELECTB. INSERTC. UPDATED. DELETE答案:D5. SQL中用于创建新表的语句是:A. CREATE TABLEB. INSERT INTOC. UPDATE TABLED. DROP TABLE答案:A6. 在SQL中,哪个关键字用于指定查询结果中列的别名?A. ASB. FROMC. WHERED. SELECT答案:A7. SQL中用于指定查询条件的关键字是:A. SELECTB. FROMC. WHERED. INTO答案:C8. SQL中用于连接两个或多个表的关键字是:A. JOINB. UNIONC. INTERSECTD. EXCEPT答案:A9. 在SQL中,用于分组数据的关键字是:A. GROUP BYB. ORDER BYC. HAVINGD. LIMIT答案:A10. SQL中用于排序查询结果的关键字是:A. GROUP BYB. ORDER BYC. HAVINGD. LIMIT答案:B二、多项选择题(每题3分,共15分)1. 在SQL中,以下哪些关键字用于数据定义语言(DDL)?A. CREATEB. INSERTC. DROPD. ALTER答案:A, C, D2. 在SQL中,以下哪些关键字用于数据操纵语言(DML)?A. SELECTB. INSERTC. UPDATED. DELETE答案:A, B, C, D3. 在SQL中,以下哪些关键字用于数据控制语言(DCL)?A. GRANTB. REVOKEC. COMMITD. ROLLBACK答案:A, B4. 在SQL中,以下哪些语句可以用于数据的聚合操作?A. COUNTB. SUMC. AVGD. MAX答案:A, B, C, D5. 在SQL中,以下哪些关键字用于查询优化?A. INDEXB. JOINC. WHERED. GROUP BY答案:A, B, C, D三、填空题(每题3分,共30分)1. SQL中的________关键字用于创建新数据库。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第五章表格的创建和管理
报纸编码表(PAPER)
(
pno char(6)not null primary key,
pna char(15)not null default'人民日报',
ppr decimal (3,2) not null check(ppr<=2)
)
顾客表(CUSTOMER)
(
cno char(4)not null primary key,
cna char(8)not null unique,
adr varchar(20)not null,
tel char(7)null
)
报纸订阅表 (CP)
(
pno char(6)not null references paper(pno),
cno char(4)not null references customer(cno),
num int not null default 5 check(num>4)
)
一.用SQL语句实现以下表结构的修改:
1在PAPER表中给“报纸名称”列添加唯一性约束。

alter table paper
add constraint Ck_paper unique(pna)
2把CUSTOMER 表中的“顾客地址”列删除掉,再添加一列“所在
单位(com)”,数据类型是字符型。

alter table customer
drop column adr
alter table customer
add com char(17)null
3把CUSTOMER表中“顾客姓名”的唯一性索引删除。

alter table customer
drop constraint UQ__customer__07020F21
--用户名唯一索引为UQ__customer__07020F21
4如果创建CP表时,没有创建主键,那么添加主键,主键自己判定。

alter table cp
add constraint PK_CP primary key(num)
5把CUSTOMER表中的“顾客电话”改为整型。

alter table customer
alter column tel int not null
二、用SQL语句实现以下表内容的修改
1在paper表中加入两行数据分别为“001,光明日报,0.5”,“002,人民日报,0.5”。

insert into paper values(001,'光明日报',0.5)
insert into paper values(002,'人民日报',0.5)
2在customer表中加入一行数据,但只给前三列赋值为“0001,周力,郑州市农业路”。

insert into customer values('0001','周力','郑州市农业路')
insert into customer values('0001','周力','郑州市农业路')
insert into customer values('0001','周力','郑州市农业路')
3将paper表中报纸编号为“002”的单价改为0.6 。

4在paper表中删掉报纸名称为“光明日报”的记录。

5删掉customer表中所有数据。

相关文档
最新文档