数据库技术及应用II复习题参考答案(线上)
数据库技术及应用II复习题(线上)(2017-04-20)一、单选题(每小题2分 )1.网状数据库中记录与记录之间的联系是通过 A.指针 B.索引 C.公共属性 D.数据项2.在数据库的三级模式结构中,模式有 A.0个 B.1个 C.2个 D.任意多个3.关系数据库中,实现主码标识元组的作用是通过A.实体完整性规则 B.参照完整性规则C.用户自定义的完整性 D.属性的值域4.设计ER图,属于数据库设计中的A.需求分析 B.逻辑设计C.概念设计 D.物理设计 ·5. 为了使索引键的值在基本表中唯一,在建立索引的语句中应使用保留字 A. UNIQUE B. COUNT C. DISTINCT D. UNION参考答案:1.A 2.B 3.A4.C5.D二、填空题(每小题1分 )1.数据模型通常由数据结构、数据操作和( )三部分组成。2.数据操作描述了系统的( ) 特性。3.对数据库的操作主要有数据检索和( )两大类。4.将关系模式R分解为3NF,一定可以满足既具有无损连接性,又保持( )。5.行列子集视图是指,从单个( )导出,只是去掉了其中的某些行和某些列。6.嵌入式SQL引入了( )机制,用来协调两种不同的处理方式. 7.系统函数为三类:标量函数、聚合函数和( )函数。8.在SQL Server的建立索引的原则之一,在经常( )的字段上最好建立索引。9.一级封锁协议是指任一事务在修改某数据之前,必须先对其加上( )锁,直至事务结束才能释放之。10.触发器能够对数据库中的相关表实现( )更改。参考答案:1.完整性约束2.动态3.更新4.函数依赖性5.基本表6.游标 7.行集8.查询9.排它10.级联三、简答题(每小题5分 )1.数据库的三级模式描述。2.数据模型及其要素的描述。3.如何使用对集合操作排序的ORDER BY子句。 4.SQL Server中压缩数据库的方法描述。 参考答案:1.模式:数据库中全体数据的逻辑结构和特征的描述。 外模式:数据库用户使用的局部数据的逻辑结构和特征的描述。 内模式:数据物理结构和存储方式的描述。2.数据模型通常由数据结构、数据操作和完整性约束三部分组成。 数据结构描述了系统的静态特性,这是数据模型最本质的内容。 数据操作描述了系统的动态特性。对数据库的操作主要有数据检索和更新两大类,这是任何数据模型都必须规定的操作。 数据模型还必须提供定义完整性约束条件的手段,并在操作中自动检查。3.(1)ORDERBY子句只能用于对最终查询结果排序,不能对中间结果排序; (2)任何情况下,ORDER BY子句只能出现在最后; (3)对集合操作结果排序时,ORDER BY子句中用数字指定排序属性。4.对数据库可以进行自动压缩,也可以进行人工压缩。 (1)自动压缩数据库 在企业管理器左侧窗口中,右健单击某个数据库名称,在出现的快捷菜单中,单击“属性”菜单项,出现“数据库属性”对话框,单击对话框中的“选项”选项卡,在本页中选择“自动收缩”选项,让系统自动压缩数据库。 (2)人工压缩数据库 在企业管理器中,对所要压缩的数据库上单击右键,从快捷菜单中的“所有任务”中选择“收缩数据库”选项,并进行相应的配置。 可以使用DBCC SHRINKDATABASE 和DBCC SHRINKFILE 命令来压缩数据库。 四、设计题(每小题5分 )已知学生-课程数据库的三个关系模式: 学生表:Student(Sno,Sname,Ssex,Sage,Sdept) 课程表:Course(Cno,Cname,Cpno,Ccredit) 学生选课表:SC(Sno,Cno,Grade) 1. 查询每一门课的间接先修课。2. 查询选修2号课程且成绩在90分以上的所有学生的学号及姓名。3. 用嵌套连接查询与“刘晨”所在系的同学。 参考答案:1. 查询每一门课的间接先修课。 SELECTFIRST.Cno,SECOND.Cpno FROM CourseFIRST,CourseSECOND WHERE FIRST.Cpno = SECOND.Cno; 2.查询选修2号课程且成绩在90分以上的所有学生的学号及姓名。 SELECT Student.Sno, student.Sname FROM Student, SC WHERE Student.Sno = SC.Sno AND SC.Cno= ‘ 2 ’ AND SC.Grade > 90; 3. 用嵌套连接查询与“刘晨”所在系的同学。 SELECT Sno,Sname,Sdept FROMStudent WHERE Sdept IN (SELECT Sdept FROM Student WHERE Sname=‘ 刘晨 ’);五、应用题(本题10分 )现已设计好了一个客户表,该客户的样本数据如表所示。表名称:客户客户姓名客户地址客户电话业务员业务员地址业务员电话
王一林北京丰台理店4568791418李森林北京西甘家口43号68217113
叶海明杭州新堂三星路89号6955435郭珊珊北京东城花市大街7号63451148
田立云天津黄河路11号5998138李森林北京西城甘家口43号68217113
冯占祥青岛登州路56号4788963郭珊珊北京东城花市大街7号63451148
周玉山北京海淀花园路33号62563345李森林北京西城甘家口43号68217113
回答下列问题:(1)该表是否存在数据冗余?若存在由此而产生的后果。(2)假设把表分解成两个新表,一个是客户,另一个是业务员,写出每个表的结构,并且说明主码和外码。参考答案(1)存在数据冗余,如业务员地址、业务员电话。由此而产生的后果是插入异常,删除异常,修改复杂。 (2)把表分解成两个新表,一个是客户,另一个是业务员。 客户(客户姓名,客户地址,客户电话,业务员姓名) 业务员(业务员姓名,业务员地址,业务员电话)六、应用题(本题10分 )根据下面这个职工表,使用SQL命令完成。 职工表 职工表的结构
职工号姓名性别参加工作年限职务级别
1287李明玉男09/29/835
1853王自立男03/20/882
2778田立彬男07/Ol/874
2855王一伟男12/12/852
3750白美玉女11/09/893
职工号CHAR(4)主码
姓名CHAR(8)NOT NULL
性别CHAR(2)NOT NULL
参加工作时间DATE
职务级别CHAR(1)
职工1表
职工号姓名 性别工作年限级别基本工资/元工程代号
1287李明玉男 09/29/83 5450.00 17
1853王自立男 03/20/88 2560.00 15
2778田立彬男 07/Ol/87 4480.00 25
2855王一伟男 12/12/85 2560.00 18
3750白美玉女 11/09/89 3515.00 16
(1)按基本工资的升序列出职工1表的数据。(2) 使所有职务级别是”3”或高于“3”的职工所对应的工程代号=25,并显示下表的数据内容。
职工号 工程代号
1281 25
1853 18
2778 25
2855 18
3750 25
参考答案(1)SELECT* FROM职工 ORDER BY 基本工资; (2)(略)
页:
[1]