1、课程名称: 数据库技术 1东 北 大 学 继 续 教 育 学 院数据库技术 试 卷(作业考核 线上) B 卷学习中心: 院校学号: 姓名 (共 7 页) 总分 题号 一 二 三 四 五 六得分一、单选题(每小题2分,共10小题,20分 ) A 1网状数据库中记录与记录之间的联系是通过A指针 B索引C公共属性 D数据项 B 2在数据库的三级模式结构中,模式有A0 个 B1 个C2 个 D任意多个 A 3关系数据库中,实现主码标识元组的作用是通过A实体完整性规则 B参照完整性规则C用户自定义的完整性 D属性的值域 C 4设计 ER 图,属于数据库设计中的A需求分析 B逻辑设计C概念设计 D物理设计
2、 D 5. 为了使索引键的值在基本表中唯一,在建立索引的语句中应使用保留字A. UNIQUE B. COUNT C. DISTINCT D. UNION D 6在数据库的三级模式结构中,外模式可能有课程名称: 数据库技术 2A1 个 B2 个C0 个 D任意多个 A 7. 在某个数据库中建立了表 person(no,name,sex,birthday),其中 No 为表的主码,表中已有的记录如下图所示:No Nane Sex birthday1 张丽丽 女 1967/05/074 李方 女 1970/04/146 王安 男 1982/10/27以下四个语句中能够正确执行的插入操作是A. INS
3、ERT INTO person VALUES(6,王中,男,1964/03/08)B. INSERT INTO person (name,sex) VALUES(王中,男)C. INSERT INTO person VALUES(2,男,王中,1964/03/08)D. INSERT INTO person(no,sex) VALUES(2,男) D 8下面的说法不确切的是 A. 索引用来加速数据的访问速度和保证表的实体完整性的。B. 索引有聚簇和非聚簇索引两种。C. 聚簇索引使表的物理顺序与索引顺序一致,一个表只能有一个群聚索引。D. 非聚簇索引与表的物理顺序无关,一个表应该建立多个非聚簇索
4、引。 B 9. 在并发操作中,加锁不能解决的问题是A. 数据更新丢失 B. 事务故障 C. 读未提交数据 D. 不一致性检索 C 10. 用来记录对数据库中数据进行的每一次更新操作的是A. 数据字典 B. 后援副本 C. 日志文件 D. 数据库二、填空题(每小题1分,共10小题,10分 )11数据模型通常由数据结构、数据操作和( 完整性约束 )三部分组成。12数据操作描述了系统的( 动态 ) 特性。13. 对数据库的操作主要有数据检索和( 更新 )两大类。14将关系模式 R 分解为 3NF,一定可以满足既具有无损连接性,又保持( 函数依赖性 ) 。15行列子集视图是指,从单个( 基本表 )导出
5、,只是去掉了其中的某些行和某些列。16嵌入式 SQL 引入了( 游标 )机制,用来协调两种不同的处理方式. 17系统函数为三类:标量函数、聚合函数和( 行集 )函数。课程名称: 数据库技术 318在 SQL Server 的建立索引的原则之一,在经常( 查询 )的字段上最好建立索引。19一级封锁协议是指任一事务在修改某数据之前,必须先对其加上( 排它 )锁,直至事务结束才能释放之。20触发器能够对数据库中的相关表实现( 级联 )更改。三、简答题(每小题5分,共6小题,30分 )21数据库的三级模式描述。解答:模式:数据库中全体数据的逻辑结构和特征的描述。 外模式:数据库用户使用的局部数据的逻辑
6、结构和特征的描述。 内模式:数据物理结构和存储方式的描述。22数据模型及其要素的描述。解答:数据模型通常由数据结构、数据操作和完整性约束三部分组成。数据结构描述了系统的静态特性,这是数据模型最本质的内容。数据操作描述了系统的动态特性。对数据库的操作主要有数据检索和更新两大类,这是任何数据模型都必须规定的操作。 数据模型还必须提供定义完整性约束条件的手段,并在操作中自动检查。23如何使用对集合操作排序的 ORDER BY 子句。 解答:(1)ORDER BY 子句只能用于对最终查询结果排序,不能对中间结果排序;(2)任何情况下,ORDER BY 子句只能出现在最后;(3)对集合操作结果排序时,O
7、RDER BY 子句中用数字指定排序属性。24SQL Server 中压缩数据库的方法描述。解答:对数据库可以进行自动压缩,也可以进 行人工压缩。 (1)自动压缩数据库在企业管理器左侧窗口中,右健单击某个数据库名称,在出现的快捷菜单中,单击“属性”菜单项,出现“数据库属性”对话框,单击对话框中的“选项”选项卡,在本页中选择“自动收缩”选项,让系统自动压缩数据库。 (2)人工压缩数据库在企业管理器中,对所要压缩的数据库上单击右键,从快捷菜单中的“所有任务”中选择“收缩数据库”选项,并进行相应的配置。 课程名称: 数据库技术 4可以使用 DBCC SHRINKDATABASE 和 DBCC SHR
8、INKFILE 命令来压缩数据库。25举例说明属性间的依赖关系解答:属性间的联系可以人为三类:一对一、一对多和多对多关系例如学生表中的主码学号,与学生表中的姓名、性别是一对一关系;学生表中的主码学号与选课中的学号(主属性,外码) ,是一对多的关系;选课表中的学号和课程号则是多对多的关系。26解决嵌入式 SQL 与主语言工作单元之间通信方式的三个关键要素描述。解答:1、 SQL通信区:向主语言传递SQL语句的执行状态信息,主语言能够据此控制程序流程。2、 主变量:主语言向SQL语句提供参数,将SQL语句查询数据库的结果交给主语言进一步处理。3、 游标:解决集合性操作语言与过程性操作语言的不匹配。
9、四、设计题(每小题5分,共4小题,20分 )已知学生-课程数据库的三个关系模式:学生表:Student(Sno,Sname,Ssex,Sage,Sdept)课程表:Course(Cno,Cname,Cpno,Ccredit)学生选课表:SC(Sno,Cno,Grade) 27 查询每一门课的间接先修课。解答:SELECT FIRST.Cno,SECOND.Cpno FROM Course FIRST,Course SECOND WHERE FIRST.Cpno = SECOND.Cno;28 查询选修 2 号课程且成绩在 90 分以上的所有学生的学号及姓名。解答:SELECT Student.
10、Sno, student.Sname FROM Student, SCWHERE Student.Sno = SC.Sno AND SC.Cno= 2 AND SC.Grade 90;29 用嵌套连接查询与“刘晨”所在系的同学。解答:SELECT Sno,Sname,Sdept FROM StudentWHERE Sdept IN(SELECT Sdept FROM Student课程名称: 数据库技术 5WHERE Sname= 刘晨 );30设有如下三个关系模式:图书(书号,书名,类别,出版社,作者,定价)读者(编号,姓名,性别,单位)借阅(书号,读者编号,借阅日期)根据要求,使用 Tra
11、nsact-SQL 语句,以书号升序列出计算机类图书的书号,名称及定价。解答:SELECT 书号,书名,定价FROM 图书WHERE 类别=计算机ORDER BY 书号 ASC五、应用题(本题10分 )31现已设计好了一个客户表,该客户的样本数据如表所示。表名称:客户客户姓名 客户地址 客户电话 业务员 业务员地址 业务员电话王一林 北京丰台理店45 68791418 李森林 北京西甘家口43号 68217113叶海明 杭州新堂三星路89号 6955435 郭珊珊 北京东城花市大街7号 63451148田立云 天津黄河路11号 5998138 李森林 北京西城甘家口43号 68217113冯占
12、祥 青岛登州路56号 4788963 郭珊珊 北京东城花市大街7号 63451148周玉山 北京海淀花园路33号 62563345 李森林 北京西城甘家口43号 68217113回答下列问题:(1)该表是否存在数据冗余?若存在由此而产生的后果。(2)假设把表分解成两个新表,一个是客户,另一个是业务员,写出每个表的结构,并且说明主码和外码。解答:(1)存在数据冗余,如业务员地址、业务员电话。由此而产生的后果是插入异常,删除异常,修改复杂。(2)把表分解成两个新表,一个是客户,另一个是业务员。客户(客户姓名,客户地址,客户电话,业务员姓名)业务员(业务员姓名,业务员地址,业务员电话)六、应用题(本题10分 )课程名称: 数据库技术 632假设有一个表,包括的属性有:发票号码、购物日期、商品编号、品名、数量、厂商编号、厂商名称。回答下列问题:(1) 主码是什么?外码是什么?解答:主码:发票号码,商品编号外码:商品编号(2)表结构存在问题,应该如何分解这个表。分析分解前后的关系范式。解答:存货表(商品编号,品名,单价,库存量,最大库存量,厂商编号)厂商表(厂商编号,厂商名称,地址,邮编电话)订购表(发票号码,商品编号,订货日期,数量)分解前的关系范式:1NF(存在部分依赖)分解后的关系范式:BCNF