收藏 分享(赏)

关系数据库标准语言SQL习题及解答.doc

上传人:dreamzhangning 文档编号:2688990 上传时间:2018-09-25 格式:DOC 页数:12 大小:275KB
下载 相关 举报
关系数据库标准语言SQL习题及解答.doc_第1页
第1页 / 共12页
关系数据库标准语言SQL习题及解答.doc_第2页
第2页 / 共12页
关系数据库标准语言SQL习题及解答.doc_第3页
第3页 / 共12页
关系数据库标准语言SQL习题及解答.doc_第4页
第4页 / 共12页
关系数据库标准语言SQL习题及解答.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

1、1关系数据库标准语言 SQL 习题及解答一、填空题1SQL 语言支持数据库的外模式、模式和内模式结构。外模式对应于视图和部分基本表,模式对应于(全体基本表或基本表) ,内模式对应于存储文件。2SQL 语言支持数据库三级模式结构。在 SQL 中,外模式对应于视图和部分基本表,模式对应于基本表全体,内模式对应于(存储文件或数据文件) 。3在 SQL 语言中,若要删除一个表,应使用的语句是(DROP)TABLE。4在 SQL 语言中,如果要为一个基本表增加列和完整性约束条件,应该使用 SQL 语句(ALTER TABLE) 。5在 SQL 中,建立唯一索引要用到保留字(UNIQUE) 。6设有关系

2、R=(A,B,C)和 S(A ,D ,E,F) ,有 R.A=S.A。若将关系代数表达式:RFSDBAR(.,.,S)用 SQL 语言的查询语句表示,则为:SELECT R.A,R.B,S.D,S.F FORM R,S WHERE(R.A=S.A) 。7 “学生课程选课”数据库中的如下三个关系:学生基本信息:S(S#,SNAME,SEX,AGE)选课信息:SC(S#,C#,GRADE)课程信息:C(C#,CNAME,TEACHER)查找选修“数据库技术”这门课程的学生名和成绩。若使用连接查询的 SQL 语句是:SELECT SNAME,GRADE FROM S, SC, C WHERE CNA

3、ME=数据库技术 AND (S.S#=SC.S# AND SC.C#=C.C# )。8假设一连锁书店的数据库中有三个表:连锁分店信息表 STORES(STOR_ID,STOR_ NAME) ,书籍销售信息表 SALES(STOR_ID ,TITLE_ID,QTY )和书籍信息表TITLES(TITLE_ID,TITLE) 。要查询各分店销售某书的数量,相应的 SQL 语句应该是:SELECT STOR_NAME,QTY,TITLEFORM TITLES,STORES,SALESWHERE TITLES.TITLE_ID=SALES.TITLE_ID AND(STORES.STOR_ID=SAL

4、ES.STOR_ID)9设 R 和 S 是两个关系,与关系代数表达式 等价的 SQL 语句是(SELECT*FROM SR2R,S)10要将创建数据库的电话号码表有一个姓名的“王芳”的记录,要把王芳的电话号码改为26752306 ,相应的 SQL 语句应该是:UPDATE PHONE_BOOKSET PHONE_CODE=(26752306)WHERE(NAME=王芳) ;11当对视图进行 UPDATE、INSERT 和 DELETE 操作时,为了保证被操作的行满足视图定义中子查询语句的谓词条件,应在视图定义语句中使用可选择项(WITH CHECK OPTION) 。12视图是一个虚表,它是从

5、(一个或几个基本表)导出的表,只存放视图的(定义) ,不存放视图的(视图对应的数据) 。13在数据库管理系统中,数据操纵语句可以嵌入到某一高级语言中,该语言称为(宿主或主)语言。二、选择题1SQL 语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句CREATE、DROP 、ALTER 实现哪类功能(C) 。A数据查询 B数据操纵 C数据定义 D数据控制2在 SQL 语言中,一个基本表的定义一旦被删除,则与基本表相关的下列内容中哪些也自动被删除(A) 。在此表中的数据 在此表上建立的索引 在此表上建立的视图A和 B和 C和 D全部3SQL 语言集数据查询、数据操纵、数据定义和数据控制功

6、能于一体,语句INSERT、DELETE、UPDATE 实现哪类功能(B) 。A数据查询 B数据操纵 C数据定义 D数据控制4下列 SQL 语句中,修改表结构的是(A) 。AALTER BCREATE CINSERT DUPDATE5在 SQL 中,基本表的撤消(从数据库中删除表)可以用(B) 。ADROP SCHEMA 命令 BDROP TABLE 命令CDROP VIEW 命令 DDROP INDEX 命令36下列关于 SQL 语言中的索引(Index)的叙述中,哪一条是不正确的(A) 。A索引是外模式B一个基本表上可以创建多个索引C索引可以加快查询的执行速度D系统在存取数据时会自动选择合

7、适的索引作为存取路径7基于“学生选课课程”数据库中的三个关系是:S(S#,SNAME,SEX ,AGE) ,SC (S# ,C# ,GRADE) ,C(C#,CNAME,TEACHER)为了提高查询学生成绩的查询速度,对关系 SC 创建唯一索引,应该创建在哪一个(组)属性上(D) 。AS# BC# CGRADE D (S#,C#)8如果对关系 emp(eno,ename,salary)成功执行下面的 SQL 语句:CREATE CLUSTER INDEX name_index ON emp (salary)对此结果的正确描述是(A) 。A在 emp 表上按 salary 升序创建了一个聚簇索引

8、B在 emp 表上按 salary 降序创建了一个聚簇索引C在 emp 表上按 salary 升序创建了一个唯一索引D在 emp 表上按 salary 降序创建了一个唯一索引9在 SQL 中,建立索引用(D) 。ACREATE SCHEMA 命令 BCREATE TABLE 命令CCREATE VIEW 命令 D CREATE INDEX 命令第 1011 题基于学生-课程数据库中的三个基本表:学生信息表:S(sno,sname,sex,age,dept)主码为 sno课程信息表:C(cno,cname,teacher )主码为 cno学生选课信息表:SC(sno,cno,grade)主码为(

9、sno,cno)10 “从学生选课信息表中找出无成绩的元组”的 SQL 语句是(C) 。ASELECT*FROM SC WHERE GRADE=NULLBSELECT*FROM SC WHERE GRADE IS CSELECT*FROM SC WHERE GRADE IS NULLDSELECT*FROM SC WHERE GRADE=411在“查询选修课程号为 4,且成绩在 80 分以上的所有学生的学号和姓名”的 SQL 语句中,将使用的表是(D) 。A学生信息表 S B学生信息表 S 和课程信息表 CC学生信息表 S、课程信息表 C 和学生选课信息表 SCD学生信息表 S 和学生选课信息

10、表 SC12设有关系 R(A,B,C )和 S(C ,D) ,与关系代数表达式)(.,S等价的 SQL 语句是(B) 。A SELECT * FROM R,S WHERE R.C=S.CB SELECT A,B, DFROM R,S WHERE R.C=S.CC SELECT A,B, DFROM R,S WHERE R=SD SELECT A,B FROM R WHERE(SELECT D FROM S WHERE R.C=S.C)第 1314 基于如下描述:设有一个数据库,包括 S、J、P 、SJP 四个关系模式如下:供应商关系模式 S(SNO ,SNAME,CITY)零件关系模式 P(P

11、NO ,PNAME,COLOR,WEIGHT)工程项目关系模式 J(JNO,JNAME,CITY )供应情况关系模式 SJP(SNO,PNO ,JNO,QTY )假设它们都已经有若干数据。13 “找出使用供应商名为红星的供应商所供应的零件的工程名”的 SELECT 语句中将使用的关系有(A) 。AS、J 和 SJP BS 、P、SJPCP 、J 和 SJP DS 、J、P 和 SJP14 “找出北京供应商的所有信息”的 SELECT 语句是(A) 。ASELECT * FORM S WHERE CITY=北京BSELECT SNO,SNAME FROM S WHERE CITY=北京CSELE

12、CT * FORM S WHERE CITY=北京DSELECT SNO,SNAME FORM S WHERE CITY=北京5第 1518 题基于“学生-选课 -课程”数据库中的如下三个关系:学生基本信息:S(S#,SNAME,SEX,AGE)选课信息:SC(S#,C#,GRADE)课程信息:C(C#,CNAME,TEACHER)15.若要查找“由张劲老师执教的数据库课程的平均成绩、最高成绩和最低成绩” ,将使用关系(B) 。AS 和 SC BSC 和 C CS 和 C DS、SC 和 C16若要求查找李姓学生的学生号和姓名,正确的 SQL 语句是(B) 。ASELECT S# ,SNAME

13、 FROM S WHERE SNAME=李%BSELECT S#,SNAME FROM S WHERE SNAME LIKE 李%CSELECT S#,SNAME FROM S WHERE SNAME=%李%DSELECT S# ,SNAME FROM S WHERE SNAME LIKE%李%17若要求“查询某个学生的基本信息及其选课的平均成绩” ,将使用关系(A) 。AS 和 SC BSC 和 C CS 和 C DS、SC 和 C18若要求“查询选修了 3 门以上课程的学生的学生号” ,正确的 SQL 语句是(B) 。ASELECT S# FORM SC GROUP BY S# WHERE

14、 COUNT(*)3BSELECT S# FORM SC GROUP BY S# HAVING COUNT(*)3CSELECT S# FORM SC ORDER BY S# WHERE COUNT(*)3DSELECT S# FORM SC ORDER BY S# HAVING COUNT(*)319在 SQL 语句的 SELECT 语句中,用于对结果元组进行排序的是哪一个子句( C) 。AGROUP BY BHAVINGCORDER BY DWHERE20设有关系 R=(A,B,C) 。与 SQL 语句SELECT DISTINCT A FROM R WHERE B=17 等价的关系表达式

15、是(C) 。A B)(R)(17C D17BA21在 SQL 语言的 SELECT 语句中,实现投影操作的是哪个子句( A) 。ASELECT BFROM CWHERE DGROUP BY22SQL 语言的数据操纵语句包括 SELECT,INSERT, UPDATE,DELETE 等,其中最重6要的,也是使用最频繁的语句是(A ) 。ASELECT BINSERT CUPDATE DDELETE23SQL 语句中,实现数据检索的语句是(A) 。ASELECT BINSERT CUPDATE DDELETE24SQL 查询语言的一种典型形式是:SELECT X1,X 2,X NFROM A1,A

16、 2,A MWHERE F;其中 XI(I=1,N)、A J(J=1, ,M) 、F 分别是(C ) 。A基本表名、目标列名、逻辑表达式B基本表名、目标列名、数值表达式C目标列名、基本表名、逻辑表达式D目标列名、基本表名、数值表达式25设有关系 R(A,B,C )和 S(C ,D) 。与 SQL 语句SELECT A,B,D FROM R,S WHERE R.C=S.C等价的关系代数表达式是(B) 。A )(,.BACSR )(., SRCDBAC D,. SD,.BASCR26用 GROUP BY 语句对数据分组时,在分组中用来进行条件选择的语句是(C) 。ASELECT BWHERE CH

17、AVING DORDER BY第 2730 题基于这样的三个表即学生表 S、课程表 C 和学生选课表 SC,它们的结构如下:S(S#,SN, SEX,AGE ,DEPT) C(C# ,CN) SC(S#,C# ,GRADE)其中 S#为学号,SN 为姓名,SEX 为性别;AGE 为年龄,DEPT 为系别,C#为课程号,CN 为课程名,GRADE 为成绩。27检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的 SELECT 语句是(A) 。ASELECT SN,AGE,SEX FROM SWHERE AGE(SELECT AGE FROM SWHERE SN=王华); BSELECT SN,

18、AGE,SEX 7FROM SWHERE SN=王华; CSELECT SN,AGE,SEX FROM SWHERE AGE(SELECT AGE WHERE SN=王华);DSELECT SN,AGE,SEX FROM SWHERE AGE王华 AGE;28检索选修课程“C2”的学生中成绩最高的学生的学号。正确的 SELECT 语句是(D) 。ASELECT S# FROM SCWHERE C#=”C2” AND GRADE=(SELECT GRADE FROM SC)WHERE C#=”C2”);BSELECT S# FROM SCWHERE C#=”C2” AND GRADE IN(SE

19、LECT GRADE FROM SC)WHERE C#=”C2”;CSELECT S# FROM SCWHERE C#=”C2” AND GRADE NOT IN(SELECT GRADE FROM SC)WHERE C#=”C2”;DSELECT S# FROM SCWHERE C#=”C2” AND GRADE=ALL(SELECT GRADE FROM SCWHERE C#=”C2”);29检索学生姓名及其所选修课程的课程号和成绩。正确的 SELECT 语句是(C ) 。ASELECT S.SN,SC.C#, SC.GRADEFROM SWHERE S.S#=SC.S#BSELECT S

20、.SN,SC.C#,SC.GRADE8FROM SCWHERE S.S#=SC.GRADECSELECT S.SN,SC.C#,SC.GRADEFROM S,SCWHERE S.S#=SC.S#DSELECT S.SN,SC.C#,SC.GRADEFROM S,SC30检索选修四门以上课程的学生总成绩(不统计不及格的课程) ,并要求按总成绩的降序排列出来。正确的 SELECT 语句是(B) 。ASELECT S# ,SUM(GRADE ) FROM SCWHERE GRADE=60GROUP BY S#ORDER BY 2 DESCHAVING COUNT(*)=4BSELECT S#,SUM

21、 (GRADE ) FROM SCWHERE GRADE=60GROUP BY S#HAVING COUNT(*)=4ORDER BY 2 DESCCSELECT S#,SUM (GRADE ) FROM SCWHERE GRADE=60HAVING COUNT(*)=4GROUP BY S#ORDER BY 2 DESCDSELECT S# ,SUM(GRADE ) FROM SCWHERE GRADE=60ORDER BY 2 DESCGROUP BY S#HAVING COUNT(*)=4931设有关系 和关系代数表达式:),(CBAR 5,BCA)(,5RCAB )(5,RBCA上述关

22、系代数表达式中,与 SQL 语句 SELETE A,C FORM WHERE B=5 等价的是(D ) 。A都等价 B C D32若用如下的 SQL 语句创建了一个表 S:CREATE TABLE S(S# CHAR(6) NOT NULL,SNAME CHAR(8) NOT NULL,SEX CHAR(2) ,AGE INTEGER)今向 S 表插入如下行时,哪一行可以被插入(B) 。A (991001 , 李明芳 ,女, 23)B (990746 , 张为 , NULL,NULL)C (NULL, 陈道一 , 男 ,32)D (992345 ,NULL , 女 ,25)33若用下面的 SQ

23、L 语句创建一个电话号码表 PHONE_BOOK(序号 NO,姓名 NAME,区号 AREA_CODE,电话号码 PHONE_CODE):CREATE TABLE PHONE_BOOK NO CHAR(4) NOT NULL,NAME CHAR(8) NOT NULL,AREA_CODE CHAR(5)PHONE_CODE CHAR(8)可以插入到 PHONE_BOOK 表中的数据是( B) 。A (01 , 李明 ,010 , 83323663)B (02 , 张检 , 021,NULL)C (NULL, 陈方布 , 022, 23093223)D (04 ,NULL , 031,25353

24、212)34若用如下的 SQL 语句创建表 S:CREATE TABLE S(S# CHAR(6) PRIMARY KEY,SNAME CHAR(8) NOT NULL,SEX CHAR( 2) ,AGE INTEGER)并且 S 表中已经有两行:(022345 , 李明方 , 女 ,23)和(021876 , 张为 , 男 ,32)10今欲向表中插入新元组:(022345 , 彭明民 , 男 ,25)(020746 , 杨云 ,NULL,NULL)(020721 , 张为 , 女 ,21)哪一个(些)元组可以被插入(D) 。A全部 B和 C和 D和35若用如下的 SQL 语句创建一个 STU

25、DENT 表:CREATE TABLE STUDENT NO CHAR(4) NOT NULL,NAME CHAR(8) NOT NULL,SEX CHAR(2) ,AGE INTEGER) ;可以插入到 STUDENT 表中的是( B) 。A (1031 , 曾华 ,男, 23) B (1031 , 曾华 ,NULL,NULL )C (NULL, 曾华 , 男 ,23) D (1031 ,NULL,男,23)36SQL 语言中的“视图(VIEW ) ”对应于数据库三级模式结构的(A) 。A外模式 B模式 C内模式 D概念模式37视图机制具有很多优点,下面的(C)不是它的优点。A视图对数据库的

26、重构造提供了一定程度的逻辑独立性B简化了用户观点C方便了不同的用户以同样的方式看待同一数据D对机密数据提供了自动安全防护功能38在 SQL 中,建立视图用(C) 。ACREATE SCHEMA 命令 BCREATE TABLE 命令CCREATE VEIW 命令 D CREATE INDEX 命令39基于“学生-选课-课程”数据库中的三个关系是:S(S#,SNAME,SEX ,AGE ) ,SC (S# ,C# ,GRADE) ,C(C#,CNAME,TEACHER)设 S_AVG(SNO,AVG_GRADE)是一个基于关系 SC 定义的学生号和他的平均成绩的视图。下面对该视图的操作语句中,哪

27、一个(些)是不能正确执行的(A) 。 UPDATE S_AVG SET AVG_GRADE=90 WHERE SNO=2004010601;11 SELECT SNO,AVG_GRADE FROM S_AVG WHERE SNO=2004010601;A. B. C.都能 D.都不能40基于“学生-选课-课程”数据库中的三个关系是:S(S#,SNAME,SEX ,AGE ) ,SC (S# ,C# ,GRADE) ,C(C#,CNAME,TEACHER)设 S_AVG(SNO,SNEME,AVG_GRADE)是一个基于关系 SC 定义的学生号和他的平均成绩的视图。将以下对视图进行修改的 SQL

28、 语句转换为对基本表操作的 SQL 语句:UPDATE S_AVG SET SNAME=李三 WHERE SNO=2005011001(UPDATE S SET SNAME=李三 WHERE S#=200501100141下列关于关系数据库视图的说法中,哪些是正确的(B) 。 视图是关系数据库三级模式中的内模式 视图能够对机密数据提供一定的安全保护 视图对重构数据库提供了一定程度的逻辑独立性 对视图的一切操作最终都要转换为对基本表的操作 所有的视图都是可以更新的A、和 B 、和 C、和 D.都正确42视图的作用和优点主要表现在哪几个方面(A ) 。视图能够简化用户的操作视图能够对机密数据提供一

29、定的安全保护视图对重构数据库提供了一定程度的逻辑独立性对视图的一切操作最终都要转换为对基本表的操作A、和 B 、和 C、和 D.全部43SQL 语言的 REVOKE 语句实现下列哪一种数据控制功能(C) 。A可靠性控制 B.并发性控制 C.安全性控制 D.完整性控制44SQL 语言的 GRANT 和 REVOKE 语句主要用来维护数据库的(A) 。A安全性 B.完整性 C.可靠性 D.一致性45SQL 语言集数据定义功能、数据操纵功能和数据控制功能于一体。如下列语句中,哪一个是属于数据控制功能的(A) 。AGRANT B.CREATE C.INSERT D.SELECT1246在数据库应用中,一般一个 SQL 语句可产生或处理一组记录,而数据库主语言语句一般一次只能处理一个记录,其协调可通过使用下列(B)技术实现。A指针 B游标 C数组 D栈

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报