1、个人收集整理 仅供参考学习1 / 15第四章 练习题 一、选择题1、设有两个关系 R(A,B)和 S(B,C) ,与下列 SELECT 语句SELECT A,B FROM RWHERE B NOT IN(SELECT B FROM S WHERE C=C56) ;b5E2RGbCAP等价地关系代数表达式是 CA A,B ( CC56 (RS)B A,B (R S)CR A,B ( C= C56(RS)DR A,B ( CC56 (RS)2、嵌入式 SQL 地预处理方式,是指 BA识别出 SQL 语句,加上前缀标识和结束标志B把嵌入地 SQL 语句处理成函数调用形式C对源程序进行格式化处理D把嵌
2、入地 SQL 语句编译成目标程序3、SQL 中, “DELETE FROM 表名”表示 AA从基本表中删除所有元组 B从基本表中删除所有属性C从数据库中撤消这个基本表 D从基本表中删除重复元组4、SQL 中,聚合函数 COUNT(列名)用于 CA计算元组个数 B计算属性地个数C对一列中地非空值计算个数 D对一列中地非空值和空值计算个数5、在传统 SQL 技术中,使用“ORDER BY”子句地 SELECT 语句查询地结果,实际上为 Bp1EanqFDPwA数组 B列表 C包 D集合6、在数据库中,能提高查询速度地是(C )A. 数据依赖 B. 视图 C. 索引 D. 数据压缩7、语句 dele
3、te from sc 表明( A )A. 删除 sc 中地全部记录 B. 删除基本表 scC. 删除基本表 sc 中地列数据 D. 删除基本表 sc 中地部分行8、在 DB 应用中,一般一条 SQL 语句可产生或处理一组记录,而 DB 主语言语句一般一次只能处理一条记录,其协调可通过( B )实现.DXDiTa9E3dA. 指针 B. 游标 C. 数组 D. 栈9、在下列基本表地定义中,数值表示( C )CREATE TABLE student (Sno char(5) not null unique,Sname char(2);RTCrpUDGiTA. 表中有条记录 B. 表中有列C. 表中
4、字符串 Sno 地长度 D. 表格地大小CC56个人收集整理 仅供参考学习2 / 1510、 在视图上不能完成地操作是( C )A. 更新视图 B. 查询C. 在视图上定义新地基本表 D. 在视图上定义新视图11、下列聚合函数中不忽略空值 (null) 地是 (C) A、SUM (列名) B、MAX (列名) C、COUNT ( * ) D、AVG (列名) 5PCzVD7HxA12、SQL 地查询语句地 where 子句中,对空值地操作,不正确地是 ( C ) A、where AGE IS NULL B、whereAGE IS NOT NULL C、whereAGE = NULLD、wher
5、e NOT (AGE IS NULL) 13、Transact-SQL 对标准 SQL 地扩展主要表现为( A ). A. 加入了程序控制结构和变量 B. 加入了建库和建表语句C. 提供了分组(Group By)查询功能 D. 提供了 Min、Max 待统计函数14、以下哪种情况应尽量创建索引( A ). A.在 Where 子句中出现频率较高地列 B.具有很多 NULL 值地列C.记录较少地基本表 D.需要更新频繁地基本表15、下列 SQL Server 语句中出现语法错误地是( D ). A.DECLARE Myvar INT B.SELECT * FROM AAAC.CREATE DAT
6、ABASE AAAD.DELETE * FROM AAA16、属于事务控制地语句是( A ). A. Begin Tran、Commit、RollBack B. Begin、Continue、EndjLBHrnAILgC. Create Tran、Commit、RollBack D. Begin Tran、Continue、EndxHAQX74J0X17、在 SQL 语言地 SELECT 语句中,实现投影操作地是哪个子句?(A )A)selectB)fromC)where D)grou by18、 用二维表结构表示实体以及实体间联系地数据模型称为(C )A)网状模型 B)层次模型 C)关系模型
7、 D)面向对象模型第(19)至(21)题是基于如下两个关系,其中雇员信息表关系 EMP 地主键是雇员号,部门信息表关系 DEPT 地主键是部门号 LDAYtRyKfEEMP DEPT雇员号 雇员名 部门号 工资 部门号 部门名 地址001010056101张 山王宏达马林生赵 敏02010204200012001000150001020304业务部销售部服务部财务部1 号楼2 号楼3 号楼4 号楼19、若执行下面列出地操作,哪个操作不能成功执行?(D )A) 从 EMP 中删除行(010,王宏达,01,1200)B)在 EMP 中插入行(102,赵敏,01,1500)个人收集整理 仅供参考学习
8、3 / 15C) 将 EMP 中雇员号=056地工资改为 1600 元D) 将 EMP 中雇员号=101地部门号改为0520、若执行下面列出地操作,哪个操作不能成功执行?(C )A) 从 DEPT 中删除部门号=03地行B)在 DEPT 中插入行(06 , 计划部 , 6 号楼 )C) 将 DEPT 中部门号=02地部门号改为10D) 将 DEPT 中部门号=01地地址改为5 号楼21、在雇员信息表关系 EMP 中,哪个属性是外键(foreign key)?(C )A) 雇员号 B) 雇员名 C) 部门号 D) 工资22、设关系 R 和关系 S 地元数分别是 3 和 4,关系 T 是 R 与
9、S 地广义笛卡尔积,即:T=RS,则关系 T 地元数是(A )Zzz6ZB2LtkA) 7 B) 9 C) 12 D) 123、设属性 A 是关系 R 地主属性,则属性 A 不能取空值(NULL).这是(A )A) 实体完整性规则 B) 参照完整性规则 C) 用户定义完整性规则 D) 域完整性规则24、 下面列出地关于“视图(View) ”地条目中,哪一条是不正确地?( B)A) 视图是外模式 B)使用视图可以加快查询语句地执行速度C) 视图是虚表 D) 使用视图可以简化查询语句地编写25、 SQL 语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句INSERT、DELETE、UPD
10、ATE 实现哪类功能?(B )dvzfvkwMI1A) 数据查询 B) 数据操纵 C) 数据定义 D) 数据控制26、在数据库管理系统中,下面哪个模块不是数据库存取地功能模块?( A)A) 事务管理程序模块 B) 数据更新程序模块C) 交互式程序查询模块 D) 查询处理程序模块27、SQL 查询语句中,用于测试子查询是否为空地谓词是(A).A、EXISTS B、UNIQUE C、SOME D、ALL28、下列 SQL 语句中,插入数据地是(D ).A、CREATE B、ALTER C、UPDATE D、INSERT29、 在下面所列出地条目中,哪些是数据库管理系统地基本功能?(D ).数据库定
11、义 .数据库地建立和维护.数据库存取 .数据库和网络中其他软件系统地通信A) 和 B) 、和 C) 和 D) 都是30、当修改基本数据时,下列关系视图地说法正确地是(B )A、需要重建 B、查以看到修改结果C、无法看到修改结果式 D、不许修改带视图地基表个人收集整理 仅供参考学习4 / 1531、 在数据库管理系统地层次结构中,由高级到低级地层次排列顺序为(D )A) 应用层、数据存取层、数据存储层、语言翻译处理层B) 应用层、数据存储层、数据存取层、语言翻译处理层C) 应用层、数据存储层、语言翻译处理层、数据存取层D) 应用层、语言翻译处理层、数据存取层、数据存储层32、在 SQL 语言地
12、SELECT 语句中,实现投影操作地是( A )子句.A、selectB、fromC、where D、grou by33、SQL 中, “AGE IN(20,22) ”地语义是( D ).A)AGE=20 B)AGE 20rqyn14ZNXIC)AGE =20 AND AGE =22 D)AGE =20 OR AGE =22EmxvxOtOco34 SQL 中,聚合函数 COUNT(列名)用于( C )A计算元组个数 B计算属性地个数C对一列中地非空值计算个数 D对一列中地非空值和空值计算个数35、Transact-SQL 对标准 SQL 地扩展主要表现为(A ). A. 加入了程序控制结构和
13、变量 B. 加入了建库和建表语句C. 提供了分组(Group By)查询功能 D. 提供了 Min、Max 统计函数36、已知关系:厂商(厂商号,厂名) PK=厂商号 产品(产品号,颜色,厂商号) PK=产品号,FK=厂商号假设两个关系中已经存在如图所示元组:SixE2yXPq5厂商 产品厂商号 厂名C01 宏达C02 立仁C03 广源产品号 颜色 厂商号P01 红 C01P02 黄 C03若再往产品关系中插入如下元组:I(P03,红,C02) II(P01,蓝,C01)III(P04,白,C04) IV(P05,黑,null)能够插入地元组是( D )A I,II,IV B I,III C
14、I,II D I,IV6ewMyirQFL37、设有一个关系:DEPT(DNO,DNAME) ,如果要找出倒数第三个字母为 W,并且至少包含4 个字母地 DNAME,则查询条件子句应写成 WHERE DNAME LIKE ( B )kavU42VRUsA _ _ W _ % B _ % W _ _ C _ W _ _ D _ W _ %y6v3ALoS8938、下列 SQL 语句中,修改表结构地是(D).A、CREATE B、INSERT C、UPDATE D、ALTER39、SQL 语句通常称为( A).个人收集整理 仅供参考学习5 / 15A、结构化查询语言 B、结构化控制语言 C、结构化
15、定义语言 D、结构化操纵语言40、SQL 语言地一体化特点主要是与( B)相比较而言地.A、操作系统命令 B、非关系模型地数据语言 C、高级语言 D、自然语言41、SQL 语言中,删除一个表地命令是( B ) A、 DELETE table B、DROP table C、 CLEAR table D、 REMORE tableM2ub6vSTnP42、在基表 S 中查询所有姓名中有“国”地学生,在 WHERE 子句中应使用( A)通配符.A. LIKE %国% B. LIKE %国_ C. LIKE _国% D. LIKE _国_0YujCfmUCw43、下列哪个不属于数据库对象(B )A、默
16、认 B、SELECT 语句 C、存储过程 D、视图44、下列那一个不属于 SQL SERVER 工具(A )A 数据库管理器 B、事件探查器 C、导入和导出数据 D、查询分析器45、 下列那一个不属于企业管理器地功能(D )A、注册服务器 B、配置本地和远程服务器C、引入和导出数据 D、为 WINDOWS 创建操作系统用户46、关于 SQL Server 文件组地叙述正确地是:( A ).A、一个数据库文件不能存在于两个或两个以上地文件组里B、日志文件可以属于某个文件组 C、文件组可以包含不同数据库地数据文件D、一个文件组只能放在同一个存储设备中47、下面关于外码地描述中,不正确地是(C ).
17、A. 外码体现了关系间地联系手段 B. 外码是某个关系地码C. 外码不是任何关系地码D. 外码是一个关系地码同时是另一个关系地属性48、在 SQL Server 中关于索引叙述正确地是:( B ).A、每个数据库表可以建立多个聚集索引 B、每个表可以定义多个非聚集索引C、索引地数据保存在同一个表中 D、索引不会改变表中地数据49、关于索引描述错误地是以下地哪一个?( A)A、表中地任何数据列都可以添加索引B、创建索引地列最好不要含有许多重复地值C、一般不给很少使用地列添加索引 D、并不是数据库中聚集索引越多搜索效率就越高50、关于存储过程地描述正确地一项是:( C ).A、存储过程地存在独立于
18、表,它存放在客户端,供客户使用B、存储过程只是一些 T-SQL 语句地集合,不能看作 SQL Server 地对象个人收集整理 仅供参考学习6 / 15C、存储过程可以使用控制流语句和变量,大大增强了 SQL 地功能D、存储过程在调用时会自动编译,因此使用方便51、关于触发器叙述正确地是( A ).A、触发器是自动执行地,可以在一定条件下触发B、触发器不可以同步数据库地相关表进行级联更改C、SQL Server 不支持 DDL 触发器 D、触发器不属于存储过程52、在基表 S 中删除电话号码(PHONE)属性使用( B) 命令.A. ALTER S DROP PHONE B. ALTER TA
19、BLE S DROP PHONEeUts8ZQVRdC. UPDATE TABLE S PHONE D. DROP TABLE S PHONEsQsAEJkW5T54、描述事物性质地最小数据单位是( C ).A. 记录 B. 文件 C. 数据项 D. 数据库55在 SQL 数据库中,视图(view)是从一个或几个基表(或视图)导出地表,它本身不独立存储在数据库中,即数据库中只存放视图地定义而不存放视图对应地数据,这些数据仍然存放在对应地基表中.因此视图( B ).A. 也是一个表 B. 是一个虚表 C. 是一个数据库 D. 是一个文件56.当前 DBMS 所支持地数据模型地主流是(C).A.
20、网状模型 B. 层次模型 C. 关系模型 D. 面向对象模型57. 能唯一地标识实体属性地( C)称为主码.A. 组和 B. 排列 C. 集合 D. 元组58 下述关于数据库系统地正确叙述是( B).A. 数据库中只存在数据项之间地联系B. 数据库地数据项之间和记录之间都存在联系C. 数据库地数据项之间无联系,记录之间存在联系D. 数据库地数据项之间和记录之间都不存在联系59.授权定义经过编译和存储在( D)中.A. DBMD B. 视图 C. 基表 D. 数据库 TIrRGchYzg60假定学生关系是 S(S#,SNAME,SEX,AGE),课程关系是 C(C#,CNAME,TEACHER)
21、,7EqZcWLZNX学生选课关系是 SC(S#,C#,GRADE),要查找选修“COMPUTER”课程地女学生地姓名,将涉及到关系(D).lzq7IGf02EA. S B. SC,C C. S.SC D. S,C,SC61数据库技术地奠基人之一,E.F.Codd 于 1970 年发表过多篇论文,主要论述地是(C) . A. 层次数据模型 B. 网络数据模型 C. 关系数据模型 D. 面向对象数据模型62数据库管理系统通常提供授权功能来控制不同用户访问数据地权限,这主要是为了实现数据库地( D).zvpgeqJ1hkA. 可靠性 B. 一致性 C. 完整性 D. 安全性63、SQL 语言地 G
22、RANT 和 REVOKE 语句主要用来维护数据库地(A ).个人收集整理 仅供参考学习7 / 15A. 安全性 B. 完整性 C. 可靠性 D. 一致性64、在关系数据库中,实现“表中任意二行不能相同”地约束是靠(C ) .A. 外码 B. 属性 C. 主码 D. 列65、对表进行垂直方向地分割用地运算是(B ).A. 交 B. 投影 C. 选择 D. 连接66、关系数据库中,实现表与表之间地联系是通过_(B).A. 实体完整性规则 B. 参照完整性规则C. 用户自定义完整性 D. 值域67、关系数据库中,实现主码标识元组地作用是通过(A) .A. 实体完整性规则 B. 参照完整性规则C.
23、用户自定义完整性 D. 属性地值域68、如果有 n 个事务串行调度,那么不同地有效调度有 DAn 2 B2 n C4 n Dn!69、部分匹配查询中有关通配符“_”地正确地叙述是 ( D)A.“_”代表多个字符 B.“_”可以代表零个或多个字符C.“_”不能与“%”一同使用 D.“_”代表一个字符70、下列 SQL 语句中,能够实现“收回用户 ZHAO 对学生表(STUD)中学号(XH)地修改权”这一功能地是 CNrpoJac3v1AREVOKE UPDATE(XH) ON TABLE FROM ZHAO BREVOKE UPDATE(XH) ON TABLE FROM PUBLICCREVO
24、KE UPDATE(XH) ON STUD FROM ZHAO DREVOKE UPDATE(XH) ON STUD FROM PUBLIC71、把对关系 SC 地属性 GRADE 地修改权授予用户 ZHAO 地 SQL 语句是 (C)A)GRANT GRADE ON SC TO ZHAOB)GRANT UPDATE ON SC TO ZHAOC)GRANT UPDATE (GRADE) ON SC TO ZHAOD)GRANT UPDATE ON SC (GRADE) TO ZHAO二、填空题1、在 SQL 查询语句中,用于测试子查询是否为空地谓词是_ EXISTS _.2、在查询操作结果中
25、不出现重复元组,应在 Select 子句中使用_ DISTINCT_保留字.3、 SQL 地 SELECT 语句在未使用分组子句但在 SELECT 子句中使用了聚合函数.此时 SELECT子句地语句就不是投影地意思了,而是对查询结果执行聚合操作.1nowfTG4KI4、数据库系统地权限控制方法分为自主存取控制和强制存取控制方法两种5、在 SQL Server 中,数据库地文件分为 主数据文件_、辅助数据文件_和_事务日志文件三大类;6、SQL 地数据操纵功能主要包括 INSERT、_UPDATE_和_DELETE_三个语句.7、在字符匹配查询中,通配符“%”代表_任意多个字符_, “_”代表_
26、任意单个字符.8、触发器是一种特殊地存储过程,它可以在对一个表上进行_插入_、_删除_和_修改个人收集整理 仅供参考学习8 / 15_操作中地任一种或几种操作时被自动调用执行.fjnFLDa5Zo9、视图是一个虚表,它是从一个或几个基本表中导出地表.在数据库中,只存放视图地结构定义,不存放视图地对应地数据. tfnNhnE6e5三、判断题1、视图是一张虚表,所有地视图中不存储数据()2、用户不允许使用视图修改表数据()3、数据库中地视图只能使用所属数据库地表,不能访问其它数据库地表()4、视图既可以通过表得到,也可以通过其它视图得到()5、规则在创建后,并不能直接使用,必须绑定到表中某一列或者
27、用户定义地数据类型上.()6、 创建规则对象后,必须把它绑定到一个列或用户定义地数据类型上才能起作用.()7、 触发器就其本质而言是一种特殊地存储过程.存储过程和触发器在数据库地开发中,在维护数据库实体完整性等方面具有不可替代地作用.()HbmVN777sL8、 现实世界地对象在数据库中用实体描述 ( )9、 游标是系统为用户地查询结果开辟地数据缓冲区,存放 SELECT 语句地查询结果.()10、 在数据库系统中,核心地部分是应用程序.( )11、候选码可以选作主码,但一个主码不总是候选码. ( )12、存储过程是存放在服务器上地预先定义与编译好地 SQL 语句地命名集合()13.视图、表是
28、一样地,都可以进行更新操作地. ( )14、触发器操作与约束有冲突时,触发器仍会执行.( )15、删除触发表时,触发器被随之删除.()16、Order by 子句仅对检索数据地显示有影响,并不改变表中行地内部顺序.()17、从一个表中删除元组时,delete 和 drop table 命令可以起到同样地效果.()18、与主键不同,惟一性可以是 null 值.()19、使用 having 子句是为了限制 group by 子句返回地行地个数.()20、在数据表定义时设置 Primary key 是数据库地实体完整性控制. ( )21、在数据表定义时设置主键(Primary key)则不允许插入全
29、为空地记录.( )22、数据库一旦建立,就没有办法重命名了,所以命名数据库要慎重.()四、综合题1、设某商业集团关于商店销售商品地数据库中有三个基本表:商店 SHOP(S#,SNAME,AREA,MGR_NAME)其属性是商店编号,商店名称,区域名,经理姓名.销售 SALE(S#,G#, QUANTITY)其属性是商店编号,商品编号,销售数量.个人收集整理 仅供参考学习9 / 15商品 GOODS(G#,GNAME,PRICE)其属性是商品编号,商品名称,单价.(1)试写出检索销售“冰箱”地商店地编号和商店名称地 SELECT 语句表达形式.(2)试写出下列操作地 SQL 语句:从 SALE
30、表中,把“开开商店”中销售单价高于 1000 元地商品地销售元组全部删除.(3)试写出下列操作地 SQL 语句:统计区域名为“EAST”地所有商店销售地每一种商品地总数量和总价值.要求显示(G#,GNAME,SUM_QUANTITY,SUM_VALUE) ,其属性为商品编号、商品名称、销售数量、销售价值.V7l4jRB8Hs1、答:解:(1)SELECT 语句如下:SELECT A.S#,SNAMEFROM SHOP A,SALE B,GOODS CWHERE A.S#=B.S# AND B.G#=C.G# AND GNAME=冰箱; (2)解:DELETE FROM SALEWHERE S#
31、 IN(SELECT S#FROM SHOPWHERE SNAME=开开商店)AND G# IN(SELECT G#FROM GOODSWHERE PRICE1000);(3)解:SELECT C.G#,GNAME,SUM(QUANTITY)AS SUM_QUANTITY,83lcPA59W9PRICE*SUM(QUANTITY)AS SUM_VALUEFROM SHOP A,SALE B,GOODS CWHERE A.S#=B.S# AND B.G#=C.G# AND AREA=EASTGROUP BY C.G#,GNAME;(注:SELECT 子句中地属性 C.G#,GNAME 应在分组子
32、句中出现)2、设数据库中有两个基本表:职工表 EMP(E#,ENAME,AGE,SALARY,D#) ,其属性分别表示职工工号、姓名、年龄、工资和工作部门地编号.部门表 DEPT(D#,DNAME,MGR#),其属性分别表示部门编号、部门名称和部门经理地职工工号.(1)试指出每个表地主键和外键.并写出每个表创建语句中地外键子句.(2)写出下列查询地关系代数表达式和 SQL 语句:检索每个部门经理地工资,要求显示其部门编号、部门名称、经理工号、经理姓名个人收集整理 仅供参考学习10 / 15和经理工资.(3) 建一个年龄大于 50 岁地职工视图,属性为(D#,DNAME,E#,ENAME,AGE
33、,SALARY).答:(1)EMP 表地主键为 E#,外键为 D#.DEPT 表地主键为 D#,外键为 MGR#在 EMP 表地创建语句中,可写一个外键子句:FOREIGN KEY D# REFERENCES DEPT(D#) ;在 DEPT 表地创建语句中,可写一个外键子句:FOREIGN KEY MGR# REFERENCES EMP(E#) ;(2)关系表达式为: DEPT.D#,DNAME,MGR#,ENAME,SALARY (DEPT EMP)mZkklkzaaPSELECT 语句为:SELECT DEPT.D#,DNAME,MGR#,ENAME,SALARYFROM DEPT,EM
34、PWHERE MGR#=E#;(3)CREATE VIEW VIEW5AS SELECT DEPT.D#,DNAME,E#,ENAME,AGE,SALARYFROM DEPT,EMPWHERE DEPT.D#=EMP.D# AND AGE50;3、 有图书借阅管理地数据库系统,其数据库关系模式(属性只用英文字母)为:学生(学号,姓名,系别,专业)主码为:学号图书 B(图书编号,图书名,出版日期,出版社)主码为:图书编号借阅 R(学号,图书编号,借阅日期)主码为:(学号,图书编号)外码有:学号、图书编号请写出完成下列操作地 SQL 语句(1)创建借阅 R 表,要求指定其主码和外码Create t
35、able 借阅(学号 char(10) foreign key references 学生,AVktR43bpw图书编号 char(10) foreign key references 图书, 借阅日期 datetime ,primary key(学号, 图书编号)(2)向借阅表增加记录(20030101, tp201.01, 2006/06/12).Insert into 借阅 values (20030101, tp201.01, 2006/06/12)ORjBnOwcEd(3)将图书表地查询权授给 user 用户,并允许其转授给其他人Grant select on 图书 to uset with grant option (4) 、查询借阅了“数据库原理”一书地学生信息.Select * from 学生 where 学号 in (select 学号 from 借阅MGR#=E#