关系数据库与SQL语言练习
数据库原理 第三章关系数据库标准语言——SQL期末习题与答案

1、数据库的事务日志文件()。
A.只能有一个B.可以有多个C.可以没有D.以上都不对正确答案:B2、CREATE命令属于()语句。
A.数据查询B.数据操纵C.数据定义D.数据控制正确答案:C3、使用ALTER命令修改数据时,以下说法错误的是()。
A.可以增加主要数据文件B.可以删除次要数据文件C.可以修改文件的增容方式D.可以增加事务日志文件正确答案:A4、使用存储存储过程Sp_helpfile可以()。
A.查看数据库的结构B.查看数据库的文件信息C.查看数据库的文件组信息D.以上都可以5、在DBMS中分离数据库之后,()。
A.数据库文件将会从磁盘上删除B.数据库文件将会脱离DBMSC.事务日志文件将会从磁盘上删除D.以上都不对正确答案:B6、假设学号字段“SNo”的数据类型为nvarchar(6),当“SNo”的值为“S001”时,“SNo”在内存中占()字节。
A.4B.6C.8D.12正确答案:C7、创建数据表时,如果给某个字段定义PRIMARY KEY约束时,该字段的数据()。
A.不允许有空值B.允许有多个空值C.允许有一个空值D.以上都不对正确答案:A8、为数据表增加新的字段时,()。
A.可以为新字段设置NOT NULL约束B.不能为新字段设置NOT NULL约束C.不能为新字段设置约束D.以上都不对9、在SQL的SELECT语句中,能实现选取操作的是()。
A.SELECTB.FROMC.WHERED.GROUP BY正确答案:C10、假定学生关系是S(SNo,SName,Sex,Age),课程关系是C(CNo,CName,Teacher),学生选课关系是SC(SNo,CNo,Grade)。
要查找选修“数据库”课程的“男”学生姓名,将涉及的关系是()。
A.SB.SC,CC.S,SCD.S,C,SC正确答案:D11、下列SQL语句中,()不是数据操纵语句。
A.INSERTB.CREATEC.DELETED.UPDATE正确答案:B12、SQL中,下列涉及空值的操作,不正确的是()。
关系数据库标准语言SQL习题

第三章关系数据库标准语言SQL一、单项选择题1.SQL语言是。
A.过程化语言B.宿主语言C.汇编语言D.非过程化语言2.在视图上不能完成的操作是。
A.更新视图B.查询C.在视图上定义基本表D.在视图上定义新的视图3.SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中CREATE、DROP、ALTER语句实现功能。
A.数据查询B.数据操纵C.数据定义D.数据控制4.在SQL语言中,删除一个视图的命令是。
A.DELETE B.DROP C.CLEAR D.REMOVE5.在SQL语言中,视图对应于数据库的______。
A.外模式B.模式C.内模式D.存储模式6.在下列SQL语句中,______不是数据定义语句。
A.CREATE TABLE B.DROP VIEWC.CREATE VIEW D.GRANT7.若要除去数据库中已经存在的表S,可用。
A.DELETE TABLE S B.DELETE SC.DROP TABLE S D.DROP S8.若要在基本表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))9.若要删除关系模式S(Sno, Sname, Ssex, Sage)的Sage属性,可用。
A.DELETE Sage FROM S B.ALTER TABLE S DROP SageC.UPDATE S Sage D.ALTER TABLE S ‘Sage’10.设有学生关系S(Sno, Sname, Sage),课程关系C(Cno, Cname),选修关系SC(Sno, Cno, Grade),其中Sno是学号,Sname是学生姓名,Sage是学生年龄,Cno是课程号,Cname是课程名,Grade是成绩。
关系数据库语言SQL习题与答案

关系数据库语言SQL习题与答案一,选择题1,下面关于SQL语言的叙述中,哪一条是错误的( ).A.SQL既可作为联机交互环境中的查询语言又可嵌入到主语言中B.SQL没有数据控制功能C.使用SQL用户只能定义索引而不能引用索引D.使用SQL用户可以定义和检索视图2,SQL语言是( )A.高级语言B.编程语言C.结构化查询语言D.宿主语言3,在学生数据库中,用SQL语句列出的所有女生的姓名,应该对学生关系进行( )操作.A.选择B.连接C.投影D.选择和投影4,NULL是指( )A.0B.空格C.无任何值D.空字符串5,下列哪条语句不属于SQL数据操纵功能范围( )A.SELECTB. CREAT TABLEC.DELETED.INSERT6,用( )命令可建立唯一索引A.CREATE TABLEB.CREATE CLUSTERC.CREATE INDEXD.CREATE UNIQUE INDEX二,填空题1,SQL语言的使用方式有两种,一种是 ,另一种是2,在SQL查询中,WHERE子句的功能是 .3,视图是一个虚表,它是从的表.4,SQL语言的数据操纵功能包括 , , ,和 ,5,在SQL支持的关系数据库三级模式结构中,外模式对应于 ,模式对应于 ,内模式对应于 .6,在SELECT语句中,HAVING子句必须跟在子句后面.三,问题及操作题1,名词解释SQL模式 SQL数据库基本表视图相关子查询联接查询嵌入式SQL 游标2,对于教学数据库的三个基本表学生 S(S#,SNAME,AGE,SEX)学习 SC(S#,C#,GRADE)课程 C(C#,CNAME,TEACHER)试用SQL的查询语句表达下列查询:(1)检索LIU老师所授课程的课程号和课程名.(2)检索年龄大于23岁的男学生的学号和姓名.(3)检索至少选修LIU老师所授课程中一门课程的女学生姓名.( 4) 检索WANG同学不学的课程的课程号.(5)检索至少选修两门课程的学生学号.(6)检索全部学生都选修的课程的课程号与课程名.(7)检索选修课程包含LIU老师所授课的学生学号.3, 设有两个基本表R(A,B,C)和S(A,B,C)试用SQL查询语句表达下列关系代数表达式:(1)R∪S (2)R∩S (3)R-S (4)πA,B(R)πB,C(S)4, 试用SQL查询语句表达下列对教学数据库中三个基本表S,SC,C的查询:(1)统计有学生选修的课程门数.(2)求选修C4课程的学生的平均年龄.(3)求LIU老师所授课程的每门课程的学生平均成绩.(4)统计每门课程的学生选修人数(超过10人的课程才统计).要求输出课程号和选修人数, 查询结果按人数降序排列,若人数相同,按课程号升序排列.(5)检索学号比WANG同学大,而年龄比他小的学生姓名.(6)检索姓名以WANG打头的所有学生的姓名和年龄.(7)在SC中检索成绩为空值的学生学号和课程号.(8)求年龄大于女同学平均年龄的男学生姓名和年龄.5, 试用SQL更新语句表达对教学数据库中三个基本表S,SC,C的各个更新操作:(1)往基本表S中插入一个学生元组('S9','WU',18).(2)在基本表S中检索每一门课程成绩都大于等于80分的学生学号,姓名和性别, 并把检索到的值送往另一个已存在的基本表STUDENT(S#,SANME,SEX).(3)在基本表SC中删除尚无成绩的选课元组.(4)把WANG同学的学习选课和成绩全部删去(5)把选修MATHS课不及格的成绩全改为空值.(6)把低于总平均成绩的女同学成绩提高5%.(7)在基本表SC中修改C4课程的成绩,若成绩小于等于75分时提高5%, 若成绩大于75分时提高4%(用两个UPDATE语句实现).6, 在宿主语言的程序中使用SQL语句有哪些规定7,嵌入式SQL语句何时不必涉及到游标何时必须涉及到游标答案:一,1,B 2,C 3,D 4,C 5,B 6,D二,1,嵌入式交互式 2,选择3,基本表导出的表 4,数据查询数据更新数据插入数据删除5,视图或部分基本表基本表存储文件6,GROUP BY三,1,名词解释SQL模式:SQL模式是表和授权的静态定义.一个SQL模式定义为基本表的集合. 一个由模式名和模式拥有者的用户名或账号来确定,并包含模式中每一个元素(基本表,视图,索引等)的定义.SQL数据库:SQL(Structured Query Language),即'结构式查询语言',采用英语单词表示和结构式的语法规则. 一个SQL数据库是表的汇集,它用一个或多个SQL模式定义.基本表:在SQL中,把传统的关系模型中的关系模式称为基本表(Base Table). 基本表是实际存储在数据库中的表,对应一个关系.视图:在SQL中,把传统的关系模型中的子模式称为视图(View),视图是从若干基本表和(或)其他视图构造出来的表.相关子查询:在嵌套查询中出现的符合以下特征的子查询:子查询中查询条件依赖于外层查询中的某个值, 所以子查询的处理不只一次,要反复求值,以供外层查询使用.联接查询:查询时先对表进行笛卡尔积操作,然后再做等值联接,选择,投影等操作. 联接查询的效率比嵌套查询低.嵌入式SQL:嵌入在高级语言的程序中使用的SQL语言称为嵌入式SQL.游标:游标是与某一查询结果相联系的符号名,用于把集合操作转换成单记录处理方式.2,(1)检索LIU老师所授课程的课程号和课程名.SELECT C#,CNAMEFROM CWHERE TEACHER='LIU'(2)检索年龄大于23岁的男学生的学号和姓名.SELECT S#,SNAMEFROM SWHERE (AGE>23) AND (SEX='M')(3)检索至少选修LIU老师所授课程中一门课程的女学生姓名. SELECT SNAMEFROM SWHERE SEX='F' AND S# IN(SELECT S#FROM SCWHERE C# IN(SELECT C#FROM CWHERE TEACHER='LIU')NOTICE:有多种写法,比如联接查询写法:SELECT SNAMEFROM S,SC,CWHERE SEX='F' AND SC.S#=S.S#AND SC.C#=C.C#AND TEACHER='LIU'但上一种写法更好一些.(4)检索WANG同学不学的课程的课程号.SELECT C#FROM CWHERE C# NOT INFROM SCWHERE S# IN(SELECT S#FROM SWHERE SNAME='WANG'))(5)检索至少选修两门课程的学生学号.SELECT DISTINCT X.SNOFROM SC X,SC YWHERE X.SNO=Y.SNO AND ONotice:对表SC进行自连接,X,Y是SC的两个别名.(6)检索全部学生都选修的课程的课程号与课程名.SELECT C#,CNAMEFROM CWHERE NOT EXISTS(SELECT *FROM SWHERE S# NOT IN(SELECT *FROM SCWHERE SC.C#=C.C#))要从语义上分解:(1)选择课程的课程号与课程名,不存在不选这门课的同学.其中,"不选这门课的同学"可以表示为:FROM SWHERE S# NOT IN(SELECT *FROM SCWHERE SC.C#=C.C#)或者SELECT *FROM SWHERE NOT EXISTS(SELECT *FROM SCWHERE S.S#=C.S# ANDSC.C#=C.C# )(7)检索选修课程包含LIU老师所授课的学生学号. SELECT DISTINCT S#FROM SCWHERE C# IN(SELECT C#FROM CWHERE TEACHER='LIU'))3,(1)SELECT A,B,CFROM RUNIONSELECT A,B,CFROM S(2)SELECT A,B,CFROM RINTERSECTSELECT A,B,CFROM S(3)SELECT A,B,CFROM RWHERE NOT EXISTS(SELECT A,B,CFROM SWHERE R.A=S.A AND R.B=S.B AND R.C=S.C) (4)SELECT R.A,R.B,S.CFROM R,SWHERE R.B=S.B4, (1)统计有学生选修的课程门数. SELECT COUNT(DISTINCT C#) FROM SC (2)求选修C4课程的学生的平均年龄. SELECT AVG(AGE)FROM SWHERE S# IN(SELECT S#FROM SCWHERE C#='C4')或者,SELECT AVG(AGE)FROM S,SCWHERE S.S#=SC.S# AND C#='004'(3)求LIU老师所授课程的每门课程的学生平均成绩.SELECT CNAME,AVG(GRADE)FROM SC ,CWHERE SC.C#=C.C# AND TEACHER='LIU'GROUP BY C#(4)统计每门课程的学生选修人数(超过10人的课程才统计).要求输出课程号和选修人数, 查询结果按人数降序排列,若人数相同,按课程号升序排列.SELECT DISTINCT C#,COUNT(S#)FROM SCGROUP BY C#HAVING COUNT(S#)>10ORDER BY 2 DESC, C# ASC(5)检索学号比WANG同学大,而年龄比他小的学生姓名.SELECT X.SNAMEFROM S AS X, S AS YWHERE Y.SNAME='WANG' AND X.S#>Y.S# AND X.AGE(SELECT AVG(AGE) FROM S AS Y WHERE Y.SEX='女')5, (1)往基本表S中插入一个学生元组('S9','WU',18).INSERT INTO S(S#,SNAME,AGE) VALUES('59','WU',18)(2)在基本表S中检索每一门课程成绩都大于等于80分的学生学号,姓名和性别, 并把检索到的值送往另一个已存在的基本表STUDENT(S#,SANME,SEX).INSERT INTO STUDENT(S#,SNAME,SEX)SELECT S#,SNAME,SEXFROM S WHERE NOT EXISTS(SELECT * FROM SC WHEREGRADE<80 AND S.S#=SC.S#)(3)在基本表SC中删除尚无成绩的选课元组.DELETE FROM SCWHERE GRADE IS NULL(4)把WANG同学的学习选课和成绩全部删去.DELETE FROM SCWHERE S# IN(SELECT S#FROM SWHERE SNAME='WANG')(5)把选修MATHS课不及格的成绩全改为空值.UPDATE SCSET GRADE=NULLWHERE GRADE<60 AND C# IN(SELECT C#FROM CWHERE CNAME='MATHS')6)把低于总平均成绩的女同学成绩提高5%.UPDATE SCSET GRADE=GRADE*1.05WHERE GRADE<(SELECT AVG(GRADE) FROM SC) AND S# IN (SELECT S# FROM S WHERE SEX='F')(7)在基本表SC中修改C4课程的成绩,若成绩小于等于75分时提高5%, 若成绩大于75分时提高4%(用两个UPDATE语句实现).UPDATE SCSET GRADE=GRADE*1.05WHERE C#='C4' AND GRADE756, 在宿主语言的程序中使用SLQ语句有以下规定:(1)在程序中要区分SQL语句与宿主语言语句(2)允许嵌入的SQL语句引用宿主语言的程序变量(称为共享变量),但有两条规定:1)引用时,这些变量前必须加":"作为前缀标识,以示与数据库中变量有区别.2)这些变量由宿主语言的程序定义,并用SQL的DECLARE语句说明.(3)SQL的集合处理方式与宿主语言单记录处理方式之间要协调. 需要采用游标机制,把集合操作转换成单记录处理方式.7, (1)INSERT,DELETE,UPDATE语句,查询结果肯定是单元组时的SELECT语句, 都可直接嵌入在主程序中使用,不必涉及到游标.(2)当SELECT语句查询结果是多个元组时,此时宿主语言程序无法使用, 一定要用游标机制把多个元组一次一个地传送给宿主语言处理.。
关系数据库标准语言SQL

关系数据库标准语言SQL(总分:120.00,做题时间:90分钟)一、{{B}}选择题{{/B}}(总题数:30,分数:60.00)1.在SELECT-SQL语句中,可以删除表的是 ______ 。
(分数:2.00)A.DELETEB.DROP √C.ALTERD.DISTINCT解析:2.用SQL语句建立表时将属性定义为主关键字,应使用短语 ______。
(分数:2.00)A.FREEB.PRIMARY KEY √C.CHECKD.UNIQUE解析:3.在第27题表中,将“工资”字段定义有效性检查及错误信息的是 ______。
(分数:2.00)A.ALTER TABLE职工ALTER工资; CHECK工资>0 ERROR“工资应为正数”B.ALTER TABLE职工ALTER工资; SET CHECK工资>0 ERROR工资应为正数C.ALTER TABLE职工ALTER工资; SET CHECK工资>0ERROR“工资应为正数”√D.ALTER TABLE职工ALTER工资; CHECK工资>0 ERROR“工资应为正数”解析:4.SQL的SELETE语句中,限定分组条件的短语是 ______。
(分数:2.00)A.ORDER BYB.WHEREC.GROUP BYD.HAVING √解析:5.SQL语句中的SELECT命令建立表之间联系的短语为 ______ 。
(分数:2.00)A.UNIOEB.GROUP BYC.JOIN √D.FROM解析:6.SQL语言是 ______ 的语言,易学习。
(分数:2.00)A.过程化B.非过程化√C.格式化D.导航式解析:7.在SELECT-SQL语句中,测试列值是否为空值的运算符是 ______。
(分数:2.00)A.IS NULL √B.EXISTSC.NOTD.NOT IN解析:8.在SQL的计算查询中,用于统计的函数是 ______ 。
(分数:2.00)A.AVG()B.SUM()C.COUNT() √D.COUNT解析:9.SQL命令中建立表的命令是 ______ 。
第3章关系数据库标准语言SQL(习题集)

第3章关系数据库标准语言SQL(习题集)第三章习题集二、选择题1、SQL语言是(B )的语言,容易学习。
A.过程化B.非过程化C.格式化D.导航式2、在视图上不能完成的操作是(C )。
A.更新视图B.查询C.在视图上定义新的表D.在视图上定义新的视图3、SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,CREATE、DROP、ALTER语句是实现哪种功能(C )。
A.数据查询B.数据操纵C.数据定义D.数据控制4、SQL语言中,删除一个表的命令是(B)。
A.DELETE B.DROP C.CLEAR D.REMOVE5、SQL语言中的视图VIEW是数据库的(A )A.外模式B.模式C.内模式D.存储模式6、若要在基本表S中增加一列CN(课程名),可用(C )。
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))7、SQL查询语言的一种典型是:select x1,x2,﹒﹒﹒,x nfrom A1,A2,﹒﹒﹒,A mwhere F其中x i (i=1,2,﹒﹒﹒,n)、A j(j=1,2,﹒﹒﹒,m)、F分别是(A )。
A、字段名、目标表名、逻辑表达式B、字段名、目标表名,数值表达式C、目标表名、字段名、逻辑表达式D、目标表名、字段名、数值表达式8、下面列出的关于“视图”的选项中,不正确的是( C )。
A、视图是外模式B、视图是虚表C、使用视图可以加快查询语句的执行速度D、使用视图可以简化查询语句的编写9、SQL是一种结构化查询语言,集( C )功能于一体。
A、数据定义、数据操作、数据安全B、数据完整性、数据安全、数据并发控制C、数据定义、数据操作、数据控制D、数据查询、数据更新、数据输入输出10 在SQL语言中,子查询是( D )。
第 3 章 关系数据库标准语言 SQL(练习)

一、选择题1、SQL语言是()语言。
A)层次数据库B)网络数据库C)关系数据库D)非数据库2、SQL语言具有两种使用方式,分别称为交互式SQL和()。
A)提示式SQL B)多用户SQL C)嵌入式SQL D)解释式SQL3-4-5()包括数据库模式定义和数据库存储结构与存取方法定义。
()实现对DB的操作,包括查询、插入、删除、修改数据库中的数据。
()用于数据保护,包括数据的安全性,完整性,并发控制和恢复等。
A)数据控制子语言B)数据定义子语言C)数据操纵子语言D)数据库语言6-7-8-9-10、下列SQL语句中,实现数据检索的语句是(),修改表结构的是(),修改属性值的是(),删除表结构的是(),删除表记录的是()。
A)SELECT B)DROP C)UPDATE D)ALTER E)DELETE二、用关系代数表达式及SQL语句描述关系查询1、设有如下关系表R、S和T:R(BH, XM, XB, DWH)S(DWH, DWM)T(BH, XM, XB, DWH)写出实现下列关系代数的SQL语句:2、设有如下三个关系:A(A#,ANAME,WQTY,CITY) :A#:商店代号;ANAME:商店名;WQTY:店员人数B(B#,BNAME,PRICE) :B#:商品号;BNAME:商品名称;AB(A#,B#,QTY) :QTY:商品数量试用关系代数和SQL语言写出下列查询。
1)找出店员人数不超过100人或者在长沙市的所有商店的代号和商店名;2)找出供应书包的商店名;3. 设有如下关系模式:student(NO, NAME , SEX ,BIRTHDAY, CLASS)teacher(NO,NAME,SEX,BIRTHDAY,PROF,DEPART) PROF为职称,DEPART为系别course(CNO, CNAME, TNO)score(NO, CNO, DEGREE) DEGREE 为成绩写出实现以下各题功能的SQL语句:(1)查询至少有2名男生的班号;(2)查询不姓“王”的同学记录;(3)查询每个学生的姓名和年龄;(4)查询学生中最大和最小的birthday日期值;(5)查询学生表的全部记录并按班号和年龄从大到小的顺序;(6)查询男教师及其所上的课程;(7)查询最高分同学的学号,课程号和成绩;(8)查询和“李军”同性别并同班的所有同学的姓名;(9)查询选修“数据库系统概论”课程的男同学的成绩表;(10)查询所有未讲课的教师的姓名和所在系别;(11)查询“计算机系”教师所教课程的成绩表;(12)查询选修“3-105”课程的成绩高于“109”号同学成绩的所有同学的记录;(13)查询最低分大于70,最高分小于90的学生的学号;(14)查询成绩在60到80之间的所有记录;(15)查询成绩比该课程平均成绩低的同学的成绩表;(16)查询所有女教师和女同学的姓名、性别和生日;(17)查询“计算机系”和“无线电系”不同职称的教师的姓名和职称;4、设有图书登记表TS,具有属性:BNO(图书编号),BC(图书类别),BNA(书名),AU(著者),PUB(出版社)。
关系数据库标准语言SQL例题

关系数据库标准语言SQL一、选择题1.若用如下的SQL语句创建了一个表SC:CREATE TABLE SC(S# CHAR(6)NOT NULL,C# CHAR(3)NOT NULL,SCORE INTEGER,NOTE CHAR(20))今向SC表插入如下行时,()行可以被插入。
A.(‘201009’,‘111’,60,必修)B.(‘200823’,‘101’,NULL,NULL)C.(NULL,‘103’,80,‘选修’)D.(‘201132’,NULL,86,‘’)2.在数据库的如下两个表中,若学生成绩表的主键是学生号和课程名,学生表的主键是学生号。
在下列所给的操作中,()操作不能执行。
A.从学生成绩表中删除行(‘001’,‘001’,60)B.将行(‘0102’,‘002’,80)插入到学生成绩表中C.将学生成绩表中学生号=‘0101’的成绩改为60D.将学生成绩表中学生号=‘0103’的学号改为‘0104’3.有关系S(S#,SNAME,SEX),SC(S#,C#,GRADE),C(C#,CNAME)。
其中S#为学生号,SNAME为学生姓名,SEX为性别,C#为课程号,CNAME为课程名。
要查询选修“数据库”课的全体男学生姓名的SQL语句是SELECT SNAME 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=‘数据库’4.有如下关系:课程表C,主键为C_ID(CHAR(4))。
若用如下语句建立成绩表SC:CREATE TABLE SC(S_ID CHAR(6) NOT NULL, C_ID CHAR(4) NOT NULL,SCORE INTEGER),其中S_ID为主键,C_ID为外键(是C表的主键)。
习题4 关系数据库标准语言SQL

习题4 关系数据库标准语言SQL 一、选择题11. SQL是哪几个英文单词的缩写__________。
16.在V isual FoxPro中,使用SQL命令将学生STUDENT中的学生年龄AGE字段的值增加1,应该使用的命令是__________。
A. REPLACE AGE WITH AGE+1B. UPDA TE STUDENT AGE WITH AGE+1C. UPDA TE SET AGE WITH AGE+1D. UPDA TE STUDENT SET AGE=AGE+117.如果学生表STUDENT是使用下面的SQL语句创建的:CREA TE TABLE STUDENT(SNO C(4)PRIMARY KEY NOTNULL);SN C(8);SEX C(2);AGE N(2) CHECK(AGE>15 AND AGE<30)下面的SQL语句中可以正确执行的是________。
A. INSERT INTO STUDENT(SNO,SEX ,AGE)values("S9","男",17)B. INSERT INTO STUDENT(SNO,SEX, AGE)values("李安琦","男",20)C. INSERT INTO STUDENT(SNO,AGE)values("男",20)D. INSERT INTO STUDENT(SNO,SN)values("S9","安琦",16)18.使用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)= "王"习题4 关系数据库标准语言SQL- 119 -26.下面有关交叉表查询的说法中,正确的是_________。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章一、选择题在下列各题A),B),C),D)四个选项中选择一个正确的。
1,数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)之间的关系是( C )。
A)DB包含DBS和DBMS B)DBMS包含DB和DBSC)DBS包含DB和DBMS D)没有任何关系2.数据库系统的核心是( B )。
A)数据模型 B)数据库管理系统C)数据库 D)数据库管理员3.数据独立性是数据库技术的重要特点之一。
所谓数据独立性是指( D )。
A)数据与程序独立存放B)不同的数据被存放在不同的文件中C)不同的数据只能被对应的应用程序所使用D)以上三种说法都不对4.用树形结构表示实体之间联系的模型是( C )。
A)关系模型 B)网状模型 C)层次模型 D)以上三个都是5.“商品”与“顾客”两个实体集之间联系一般是( D )。
A)一对一 B)一对多 C)多对一 D)多对多6.在E-R图中,.用来表示实体的图形是( A )。
A)矩形 B)椭圆形 C)菱形 D)三角形7.在数据库管理系统提供的数据语言中,负责数据的模式定义与数据的物理存取构建的是( A )。
A)数据定义语言 B)数据转换语言c)数据操纵语言 D)数据控制语言8.数据库系统的三级模式结构中,下列不属于三级模式的是( B )。
.A)内模式 B)抽象模式 c)外模式 D)概念模式9.在数据库管理系统提供的语言中,负责数据的完整性、安全性的定义与检查以及并发控制、故障恢复等功能的是( D )。
A)数据定义语言 B)数据转换语言c)数据操纵语言 D)数据控制语言10.下面关于数据系统叙述正确的是( B )。
A)数据库系统避免了一切冗余、’B)数据库系统减少了数据冗余c)数据库系统比文件能管理更多的数据D)、数据库系统中数据的一致性是指数据类型的一致11.下列叙述中,错误的是( C )。
A)数据库技术的根本目标是要解决数据共享的问题B)数据库设计是指设计一个能满足用户要求,性能良好的数据库c)数据库系统中,数据的物理结构必须与逻辑结构一致D)数据库系统是一个独立的系统,但是需要操作系统的支持12.在数据库管理系统提供的数据语言中,负责数据的查询及增、删、改等操作的是( D )。
A)数据定义语言 B)数据转换语言 c)数据控制语言 D)数据操纵语言13.下列有关数据库的描述,正确的是( A )。
A)数据库是一个结构化的数据集合 B)数塌库是一个关系C)数据库是一个DBF文件 D)数据库是一组文件14.在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是( D )。
A)外模式 B)内模式 C)存储模式 D)模式15.( B )是存储在计算机内有结构的数据的集合。
、A)数据库系统 B)数据库C)数据库管理系统 D)数据结构二、填空题1.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是数据库系统阶段。
2.在关系数据库中,把数据表示成二维表,每一个二维表称为关系。
3.在数据库理论中,数据物理结构的改变,如存储设备的更换、物理存储的更换、存取方式等都不影响数据库的逻辑结构,从而不引起应用程序的变化,称为物理独立性。
4.数据库管理系统是位于用户与操作系统之间的软件系统。
5.数据库系统中,实现数据管理功能的核心软件称为数据库管理系统。
6.一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体“项目主管”与实体“项目”间的关系属于1对多的关系。
7.数据库三级模式体系结构的划分,有利于保持数据的独立性8.数据库保护分为:安全性控制、完整性控制、并发性控制和数据恢复。
·9.在数据库理论中,数据库总体逻辑结构的改变,如修改数据模式、增加新的数据类型、改变数据间联系等,不需要修改相应的应用程序,称为逻辑独立性。
10.数据库管理系统常见的数据模型有层次模型、网状模型和关系模型三种。
11.对现实世界进行第一层抽象的模型,称为概念模型;对现实世界进行第二层抽象的模型,称为逻辑模型。
12.层次模型的数据结构是树结构;网状模型的数据结构是有向图结构;关系模型的数据结构是二维表结构。
13.在数据库技术中,编写应用程序的语言一般是C,Basic等高级语言,这些语言被称为主语言。
14.数据库系统中,用于存放;级结构定义的数据库称为数据字典15.从最终用户来看,数据库系统的外部体系结构可分为集中式结构、分布式结构、客户/服务器结构三种类型。
(新书分为五种类型)第二章一、选择题在下列各题A),B),C),D)中选择正确的选项。
1.设有如下关系表:R S则下列操作中正确的是( A )。
A)T=R US B)T=R∩S C)T=R×S D)T=R/S2.关系代数运算是以( C )为基础的运算。
A)关系运算 B)谓词运算 C)集合运算 D)代数运算3.按条件f对关系R进行选取,其关系代数表达式为( C )。
A)R∞R B)R∞R C)σf(R) D) Πf(R)4.关系数据库的数据模型是( B )。
A)关系模型的集合 B)关系模式的集合C)关系子模式的集合 D)存储模式的集合5.关系数据库管理系统能实现的专门关系运算包括( B )。
A)排序、索引、统计 B)选取、投影、连接C)关联、更新、排序D)显示、打印、制表6:设有如下关系表:R则下列操作中正确的是( C )。
A)W=R∩S B)W=R US C)W=R-S D)W=RxSt7.设有一个学生档案的关系数据库,关系模式是:S(SNo,SN,Sex,Age),其中Sno,SN,Sex,Age分别表示学生的学号、姓名、性别、年龄。
则“从学生档案数据库中检索学生年龄大于20岁的学生的姓名”的关系代数式是( B )。
A)σSN(Πage>20(S)) B) ΠSN(σAge>20(S))8.一个关系只有一个(D )。
A)超码 B)外码 C)候选码 D)主码9.在关系模型中,以下有关关系键的描述正确的是( C )。
A)可以由任意多个属性组成B)至多由一个属性组成C)由一个或多个属性组成,其值能唯一标识关系中的一个元组D)以上都不对10.同一个关系模型的任两个元组值( A )。
A)不能完全相同 B)可以完全相同C)必须完全相同 D)以上都不对11.一个关系数据库文件中的各条记录( B )。
A)前后顺序不能任意颠倒,一定要按照输入的顺序排列B)前后顺序可以任意颠倒,不影响库中的数据关系C)前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果就可能不同D)前后顺序不能任意颠倒,一定要按照关键字段值的顺序排列、12.关系模式的任何属性( A )。
、A)不可再分 B)可再分C)命名在关系模式中可以不唯一 D)以上都不对13.设有关系R和S,关系代数表达式R-(R-S)表示的是( A )。
A)R∩S B)R US C)R-S D)R×S14.关系运算中花费时间可能最长的是( D )。
A)选取 B)投影 C)除 D)笛卡尔积15.设有关系模式R和S,下列各关系代数表达式不正确的是( D )。
A)R-S=R-(R∩S) B)R=(R-S)∪(R∩S)C) R∩S =S-(S-R) D) R∩S =S-(R-S) ‘二、填空题1.在关系运算中,查找满足一定条件的元组的运算称之为选择。
2.在关系代数中,从两个关系中找出相同元组的运算称为交运算。
3.传统的集合“并、差、交”运算施加于两个关系时,这两个关系必须相容。
4.在关系代数运算中,基本的运算是并、差、笛卡儿积、选择、投影。
5.在关系代数运算中,传统的集合运算有并、交、差、笛卡儿积。
6.关系代数运算中,专门的关系运算有选择、投影、连接。
7.设有关系R,从关系R中选择符合符件f的元组,则关系代数表达式应是σf(R) 。
8.关系运算分为关系代数和关系演算。
j9.当对两个关系R和S进行自然连接运算时,要求R和S含有一个或多个共有的属性。
10.在一个关系中,列必须是同质的,即每一列中的分量是同类型的数据,来自同一域。
11.如果关系R2的外部关系键X与关系Rl的主关系键相符,则外部关系键x的每个值必须在关系R1中主关系键的值中找到,或者为空,这是关系的参照完整性规则。
12.设有关系模式为:系(系编号,系名称,电话,办公地点),则该关系模型的主关系键是系编号,主属性是系编号,非主属性是:系名称、电话、办公地点。
13.关系演算分为元组关系演算和域关系演算。
14.实体完整性规则是对主键的约束,参照完整性规则是对外部键的约束。
15.等式R∞S=R×S成立的条件是R和S没有公共的属性。
三、计算题1.已知关系R,S,T如下图所示,求下列关系代数的运算结果:R2.以第1章的图1.22所示的教学管理数据库为例,用关系代数表达式表示以下各种查询要求。
(1)查询Tl老师所授课程的课程号和课程名。
(2)查询年龄大于18岁的男同学的学号、姓名、系别。
(3)查询“李力”老师所讲授课程的课程号、课程名、课时。
(4)查询学号为S1的同学所选修课的课程号、课程名和成绩。
(5)查询“钱尔”同学所选修课程的课程号、课程名和成绩。
(6)查询至少选修“刘伟”老师所授全部课程的学生姓名。
(7)查询“李思”同学未选修的课程号和课程名。
(8)查询全部学生都选修了的课程的课程号、课程名。
(9)查询选修了课程号为C1和C2的学生的学号和姓名。
(10)查询选修了全部课程的学生的学号和姓名。
第三章一、选择题在下列各题A),B),C),D)四个选项中选择一个正确的。
1.以下关于视图的描述中,不正确的是( )。
A)视图是外模式 B)使用视图可以加快查询语句的执行速度C)视图是虚表 D)使用视图可以加快查询语句的编写2.在SQL的SELECT语句中,能实现投影操作的是( )。
A)SELECT B)FROM C)WHERE D)GROUP BY3.SQL集数据查询、数据操纵、数据定义和数据控制功能于一体,语句ALTER TABLE 实现下列哪类功能( )。
A)数据查询 B)数据操纵 C)数据定义 D)数据控制4.下列SQL语句中, ( )不是数据操纵语句。
A)INSERT B)CREATE C)DELETE D)UPDATE5.SQL使用( )语句为用户授予系统权限或对象权限。
A)SELECT B)CREATE C)GRANT D)REVOKE6.SQL中,下列涉及空值的操作,不正确的是( )。
A)AGE IS NULL B)AGE IS NOT NULLC)AGE NULL D)NOT(AGE IS NULL)7.若用如下的SQL语句创建了一个表S:CREATE TABLE S(SNo CHAR(6) NOT NULL,SName CHAR(8)NOT NULL,SEX CHAR(2),AGE INTEGER)现向S表插入如下行时,哪一行可以被插入( )? 。