ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:25KB ,
资源ID:10717631      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10717631.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(SQL语言综合课堂练习和习题.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

SQL语言综合课堂练习和习题.docx

1、SQL语言综合课堂练习和习题SQL语言 课堂练习和习题一、选择题 1. SQL语言是( )的语言,容易学习 . A.过程化 B. 非过程化 C.格式化 D. 导航式 2. SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE,DELETE等.其中最重要的,也是使用最频繁的语句是( ) . A. SELECT B. INSERT C. UPDATE D. DELETE 3. 在视图上不能完成的操作是( ) . A. 更新视图 B. 查询 C. 在视图上定义新的表 D. 在视图上定义新的视图 4. SQL语言集数据查询,数据操纵,数据定义和数据控制功能于一体,其中,CREATE,D

2、ROP,ALTER语句是实现哪种功能( ). A. 数据查询 B. 数据操纵 C. 数据定义 D. 数据控制 5. SQL语言中,删除一个视图的命令是( ). A.DELETE B.DROP C.CLEAR D.REMOVE 6. 在SQL语言中的视图VIEW是数据库的( ) . A. 外模式 B. 模式 C. 模式 D. 存储模式 7. 下列的SQL语句中,( )不是数据定义语句. A. CREATE TABLE B. DROP VIEW C. CREATE VIEW D. GRANT 8. 若要撤销数据库中已经存在的表S,可用( ). A. DELETE TABLE S B. DELETE

3、 S C. DROP TABLE S D. DROP S 9. 若要在基本表S中增加一列CN(课程名),可用( ). A.ADD TABLE S(CN CHAR(8) B.ADD TABLE S ALTER(CN CHAR(8) C.ALTER TABLE S ADD(CN CHAR(8) D.ALTER TABLE S (ADD CN CHAR(8) 10. 学生关系模式 S( S#,Sname,Sex,Age),S的属性分别表示学生的学号,性别,年龄.要在表S中删除一个属性年龄,可选用的SQL语句是( ). A. DELETE Age from S B. ALTER TABLE S DRO

4、P Age C. UPDATE S Age D. ALTER TABLE S Age 11. 有关系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE).其中S#是学生号,SNAME是学生,SAGE是学生年龄, C#是课程号,CNAME是课程名称.要查询选修ACCESS课的年龄不小于20的全体学生的SQL语句是SELECT SNAME FROM S,C,SC WHERE子句.这里的WHERE子句的容是( ). A. S.S# = SC.S# and C.C# = SC.C# and SAGE=20 and CNAME=ACCESS B. S.S# = SC.

5、S# and C.C# = SC.C# and SAGE in=20 and CNAME in ACCESS C. SAGE in=20 and CNAME in ACCESS D. SAGE=20 and CNAME= ACCESS 12. 设关系数据库中一个表S的结构为S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值围0-100.若要把二的化学成绩80分插入S中,则可用( ). A. ADD INTO S VALUES(二,化学,80) B. INSERT NTO S VALUES(二,化学,80) C. ADD INTO S V

6、ALUES(二,化学,80) D. INSERT INTO S VALUES(二,化学,80) 13. 设关系数据库中一个表S的结构为:S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值围0-100.若要更正王二的化学成绩为85分,则可用( ) . A. UPDATE S SET grade=85 WHERE SN=王二 AND CN=化学 B. UPDATE S SET grade=85 WHERE SN=王二 AND CN=化学 C. UPDATE grade=85 WHERE SN=王二 AND CN=化学 D. UPDATE g

7、rade=85 WHERE SN=王二 AND CN=化学 14. 在SQL语言中,子查询是( ) . A. 返回单表中数据子集的查询语言 B. 选取多表中字段子集的查询语句 C. 选取单表中字段子集的查询语句 D. 嵌入到另一个查询语句之中的查询语句 15. SQL是一种( )语言. A. 高级算法 B. 人工智能 C. 关系数据库 D. 函数型 16. 有关系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#,GRADE).其中S#是学生号,SNAME是学生,SEX是性别, C#是课程号,CNAME是课程名称.要查询选修数据库课的全体男生的SQL语句是SELECT S

8、NAME FROM S,C,SC WHERE子句.这里的WHERE子句的容是( ). A.S.S# = SC.S# and C.C# = SC.C# and SEX=男 and CNAME=数据库 B.S.S# = SC.S# and C.C# = SC.C# and SEX in男and CNAME in数据库 C.SEX 男 and CNAME 数据库 D.S.SEX=男 and CNAME= 数据库 17. 若用如下的SQL语句创建了一个表SC: CREATE TABLE SC (S# CHAR(6) NOT NULL,C# CHAR(3) NOT NULL,SCORE INTEGER,

9、NOTE CHAR(20);向SC表插入如下行时,( )行可以被插入 . A.(201009,111,60,必修) B.(200823,101,NULL,NULL) C.(NULL,103,80,选修) D.(201132,NULL,86, ) 18. 假设学生关系S(S#,SNAME,SEX),课程关系C(C#,CNAME),学生选课关系SC(S#,C#,GRADE).要查询选修Computer课的男生,将涉及到关系( ). A. S B. S,SC C. C,SC D. S,C,SC 19.SQL Server2000的字符型系统数据类型主要包括( )。 A. int、money、char

10、 B. char、varchar、text C. datetime、binary、int D. char、varchar、int 20. 如果要在SQL Server2000中存储图形图像、Word文档文件,不可采用的数据类型是( )。 A. binary B. varbinary C. image D. text 21. 不属于SQL Server2000系统全局变量的是( )。 A. Error B. Connections C. Fetch_Status D. Records22.SQL Server2000提供的单行注释语句是使用( )开始的一行容。 A. “/*” B. “-” C.

11、 “” D. “/” 23. 下列标识符可以作为局部变量使用( )。 A. Myvar B. My var C. Myvar D. My var24在SQL Server 中,WAITFOR 语句中的DELAY参数是指()。A. 要等待的时间 B. 指示SQL Server 一直等到指定的时间过去C. 用于指示时间 D. 以上都不是25.下面( )组命令,将变量count值赋值为1。ADECLARE countSELECT count=1BDIM count=1 CDECLARE countSELECT count=1DDIM countSELECT count=126下列( )赋值语句是错误

12、的。ASELECTC=1 B. SET C=1 CSELECT DJ=单价FROM bookORDER BY 单价DESCDSET DJ=单价FROM bookORDER BY 单价DESC27在SQL Server 编程中,可使用()将多个语句捆绑。A B. BEGIN-END C( ) D. 28在SQL Server 2000中,下列变量名正确的是( )。Asum Bj Csum D4kk选择题答案: (1) B (2) A (3) C (4) C (5) B (6) A (7) D (8) C (9) C (10) B (11) A (12) D (13) A (14) D (15)

13、C (16) A (17) B (18) D (19)B(20)D(21)D(22)B(23)C(24)A(25)A(26)D(27)B(28)A二、填空题1在T-SQL编程语句中,WHILE结构可以根据条件多次重复执行一条语句或一个语句块,还可以使用 () 和 CONTINUE 关键字在循环部控制 WHILE 循环中语句的执行。2在T-SQL编程语句中,()用于使语句在某一时刻或在一段时间间隔后继续执行。1.break 2.waitfor三、简答题1. 试述SQL语言的特点. 答: (1)综合统一. SQL语言集数据定义语言DDL,数据操纵语言DML,数据控制语言DCL的功能于一体. (2)

14、高度非过程化.用SQL语言进行数据操作,只要提出做什么,而无须指明怎么做,因此无需了解存取路径,存取路径的选择以及SQL语句的操作过程由系统自动完成. (3)面向集合的操作方式.SQL语言采用集合操作方式,不仅操作对象,查找结果可以是元组的集合,而且一次插入,删除,更新操作的对象也可以是元组的集合. (4)以同一种语法结构提供两种使用方式.SQL语言既是自含式语言,又是嵌入式语言.作为自含式语言,它能够独立地用于联机交互的使用方式,也能够嵌入到高级语言程序中,供程序员设计程序时使用. (5)语言简捷,易学易用. 2. 试述SQL的定义功能. 答: SQL的数据定义功能包括定义表,定义视图和定义

15、索引. SQL语言使用CREATE TABLE语句定义建立基本表,;ALTER TABLE语句修改基本表定义,DROP TABLE语句删除基本表;建立索引使用CREATE INDEX语句建立索引, DROP INDEX语句删除索引表;SQL语言使用CREATE VIEW命令建立视图,DROP VIEW语句删除视图. 3. 用SQL语句建立“关系数据库和关系代数 课堂练习和习题”中的四个表. 答: 对于S表:S( SNO,SNAME,STATUS,CITY); 建S表 :CREATE TABLE S (SNO CHAR(3), SNAME CHAR(10), STATUS CHAR(2), CI

16、TY CHAR(10); P(PNO,PNAME,COLOR,WEIGHT); 建P表 :CREATE TABLE P (PNO CHAR(3), PNAME CHAR(10), COLOR CHAR(4), WEIGHT INT); J(JNO,JNAME,CITY); 建J表 :CREATE TABLE J (JNO CHAR(3), JNAME CHAR(10), CITY CHAR(10); SPJ(SNO,PNO,JNO,QTY); 建SPJ表 :CREATE TABLE SPJ (SNO CHAR(3), PNO CHAR(3), JNO CHAR(3), QTY INT); 4.

17、 针对上题中建立的四个表试用SQL语言完成“关系数据库和关系代数 课堂练习和习题”的查询. 答: (1) 求供应工程J1零件的供应商SNO; SELECT SNO FROM SPJ WHERE JNO=J1; (2) 求供应工程J1零件P1的供应商SNO; SELECT SNO FROM SPJ WHERE JNO=J1 AND PNO=P1; (3) 求供应工程J1零件为红色的供应商SNO; SELECT SNO FROM SPJ WHERE JNO=J1 AND PNO IN (SELECT PNO FROM P WHERE COLOR=红); 或 SELECT SNO FROM SPJ,

18、P WHERE JNO=J1 AND SPJ.PNO=P.PNO AND COLOR=红; *(4) 求没有使用供应商生产的红色零件的工程号JNO; 解析: 用SQL语言表示如下: SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN (SELECT SNO FROM S WHERE CITY=) AND PNO IN (SELECT PNO FROM P WHERE COLOR=红); 或 SELECT JNO FROM J WHERE NOT EXISTS (SELECT *

19、 FROM SPJ, S, P WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND SPJ.PNO=P.PNO AND S.CITY= AND P. COLOR=红); 注意:从 J 表入手,以包含那些尚未使用任何零件的工程号. *(5) 求至少用了供应商S1所供应的全部零件的工程号JNO . 解析: 用SQL语言表示如下: SELECT DISTINCT JNO FROM SPJ SPJZ WHERE NOT EXISTS (SELECT * FROM SPJ SPJX WHERE SNO=S1 AND NOT EXISTS (SELECT * FROM SP

20、J SPJY WHERE SPJY.PNO=SPJX.PNO AND SPJY.JNO=SPJZ.JNO AND SPJY.SNO=S1) 5. 针对习题3中的四个表试用SQL语言完成以下各项操作: (1)找出所有供应商的和所在城市. (2)找出所有零件的名称,颜色,重量. (3)找出使用供应商S1所供应零件的工程. (4)找出工程项目J2使用的各种零件的名称及其数量. (5)找出厂商供应的所有零件. (6)找出使用产的零件的工程名称. (7)找出没有使用产的零件的工程. (8)把全部红色零件的颜色改成蓝色. (9)由S5供给J4的零件P6改为由S3供应,请作必要的修改. (10)从供应商关系

21、中删除S2的记录,并从供应情况关系中删除相应的记录. (11)请将 (S2,J6,P4,200) 插入供应情况关系. 答: (1) 找出所有供应商的和所在城市. SELECT SNAME, CITY FROM S; (2) 找出所有零件的名称,颜色,重量. SELECT PNAME, COLOR, WEIGHT FROM P; (3) 找出使用供应商S1所供应零件的工程. SELECT JNO FROM SPJ WHERE SNO=S1; (4) 找出工程项目J2使用的各种零件的名称及其数量. SELECT P.PNAME, SPJ.QTY FROM P, SPJ WHERE P.PNO=SP

22、J.PNO AND SPJ.JNO=J2; (5) 找出厂商供应的所有零件. SELECT DISTINCT PNO FROM SPJ WHERE SNO IN (SELECT SNO FROM S WHERE CITY=); (6) 找出使用产的零件的工程名称. SELECT JNAME FROM J, SPJ, S WHERE J. JNO=SPJ. JNO AND SPJ. SNO=S.SNO AND S.CITY=; 或 SELECT JNAME FROM J WHERE JNO IN (SELECT JNO FROM SPJ, S WHERE SPJ. SNO=S.SNO AND S

23、.CITY=); (7) 找出没有使用产的零件的工程. SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN (SELECT SNO FROM S WHERE CITY=); 或 SELECT JNO FROM J WHERE NOT EXISTS (SELECT *1 FROM SPJ, S WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND S.CITY=); (8) 把全部红色零件的颜色改成蓝色. UPDATE P SET COLOR=蓝 W

24、HERE COLOR=红 ; (9) 由S5供给J4的零件P6改为由S3供应,请作必要的修改. UPDATE SPJ SET SNO=S3 WHERE SNO=S5 AND JNO=J4 AND PNO=P6; (10) 从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录. DELETE FROM SPJ WHERE SNO=S2; 或 DELETE FROM S WHERE SNO=S2; 解析:注意删除顺序,应该先从SPJ表中删除供应商S2所供应零件的记录,然后从从S表中删除S2. (11) 请将 (S2,J6,P4,200) 插入供应情况关系. INSERT INTO SPJ

25、(SNO, JNO, PNO, QTY) VALUES (S2,J6,P4,200); 或 INSERT INTO SPJ VALUES (S2,P4,J6,200); 6针对系统示例数据库中的相应表,写出满足要求的SQL语句。(1)查询pubs数据库的authors表中的作者的姓(au_lname)、名(au_fname)和(phone)。(2)使用TOP关键字,从Northwind数据库的customers表中搜索返回前20%的数据。(3)查询Northwind数据库的Orders表中的数据,并将其中的货物重量feight增加50%。(4)使用WHERE 子句从Northwind 数据库的

26、Products表中检索出所有单位价格(UnitPrice)超过50美元的货物名称(Product Name )、货物代号(ProductID)以及每单位重量(QuantityPerUnit)。(5)在Northwind 数据库的Employees表中搜索出职务(Title)为销售代表(Sales Representative),称呼(TitleOfCourtesy)为小姐(MS)的所有职员的名(FirstName)、姓(LastName)和生日(BirhthDate)。(6)查询在Northwind数据库的Employees表中以字母A作Firstname第一个字母的雇员的Firstname

27、和Lastname。(7)查询Northwind数据库Employees表中所有雇员的Firstname和Lastname,并按生日BirthDate从小到大进行排列。(8)在Northwind数据库的Products表中查询出每个供应商(Suppliers)所提供的每一种平均价格(Unitprice)超过15美元的产品,并按供应商的ID分类。四、写出下列每条语句或程序段的功能 假设存在名为AAA的数据库,包括Students(学号 char(8), varchar(8),年龄 int,专业 varchar(20),入学日期 DateTime)和Score(学号 char(8),课程名 var

28、char(10),成绩 numeric(5,2))两表。 1. SELECT * FROM Students WHERE DATEPART(year,入学日期) =DATEPART(year,GETDATE() 2. DECLARE MyNO CHAR(8) SET MyNO=20030001 IF (SELECT 专业 FROM Students WHERE 学号=MyNO)=计算机软件 BEGIN SELECT AVG(成绩) AS 平均成绩 FROM Score WHERE 学号=MyNO END ELSE PRINT 学号为 +MyNO+的学生不存在或不属于软件专业 GO 3. dec

29、lare a numeric(5,2) set a=(select avg(成绩) from score) select * from score where 成绩=a 4. declare a numeric(5,2),b numeric(5,2) set a=(select max(成绩) from score) set b=(select min(成绩) from score) print a-b 5. declare a char(6) set a=亮 if(exists(select * from students where =a) print 为+a+的同学存在! else print 为+a+的同学不存在! 6. declare a char(8) set a=计算机 select 计算机专业人数=count(*) from students where left(专业,3)=a 7. select year(入学日期) as 入学年份,count(*) as 人数 from students group by year(入学日期) 8. select month(入学日期) as 入学月份,count(*) as 人数 from students group by month(入学日期)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1