资源描述
第 1 页 共 16 页数据库原理及应用模拟试卷答案1.填空题(每格 1 分,总分 20 分)(1)数据库的保护功能主要包括确保数据的安全性、_、_、_四方面的内容。数据的完整性 并发控制 数据库恢复(2)事务的性质:原子性、_、_、持久性。一致性 隔离性(3)在 SQL 中,CREATE VIEW 语句用于建立视图,如果要求今后对视图用 UPDATE 语句更新数据时必须满足于查询中的表达式,则应当在 CREATE VIEW 语句中使用_短语。WITH CHECK OPTION(4)视图是一个虚表,它是从_中导出的表,在数据库中只存放视图的_,不存放视图的_。基本表或视图 定义 数据(5)数据库设计应包括两方面的内容:一是_特性的设计,二是_特性的设计。结构结构 行为行为(6)关系数据操作语言(DML)的特点是:操作对象与结果均为关系、操作的非过程性强、语言一体化、并且是建立在数学理论基础之上。DML 包括数据查询和_两种数据操作语句。数据更新数据更新(7)使用游标的步骤为:定义游标、打开游标、_取出记录_、关闭游标(释放游标)。(8)信息的三种世界是指_、_和数据世界,其中数据世界又称为计算机世界。信息的现实世界信息的现实世界 信息世界信息世界(9)从关系规范化理论的角度讲,一个只满足 1NF 的关系可能存在的四方面问题是:数据冗余度大、_异常、_异常和_异常。插入插入 修改修改 删除删除(10)在 SQL 中,通配符%表示_,下划线_表示_。任何长度的字符串任何长度的字符串 一个任意字符一个任意字符2.单选题(每题 2 分,总分 20 分)(1)以下_B_采用了自底向上的设计分析方法A)需求分析 B)概念结构设计 C)逻辑结构设计 D)物理结构设计(2)在视图上不能完成的操作是(D D)。A、在视图上定义新的视图 B、查询操作第 2 页 共 16 页C、更新数据 D、在视图上定义新的基本表(3)下列功能不属于 SQL 的功能(D D )A.数据定义功能(DDL)B.数据操作功能(DML)C.数据控制功能(DCL)D.数据嵌入功能(DEL)(4)在 SQL 中,视图的删除可以用_D_。A)DELETE TABLE 命令 B)DROP TABLE 命令C)DELETE VIEW 命令 D)DROP VIEW 命令(5)设一关系模式为:运货(顾客姓名,顾客地址,商品名,供应商姓名,供应商地址),则该关系模式的候选码是(B B )。A、顾客姓名,供应商姓名 B、顾客姓名,供应商姓名,商品名C、顾客姓名,商品名 D、顾客地址,供应商姓名,商品名(6)有两个实体集,它们之间存在着一个 M:N 联系,则这个 ER 结构转换成关系的个数为(C C )。A、1 B、2 C、3 D、4(7)日志文件用于记录(D D )。A、程序运行过程 B、数据操作 C、程序运行结果 D、对数据的更新操作(8)设关系 R 与关系 S 具有相同的目上,且相对应的属性的值取自同一个域,则 R-(R-S)等于(B B )。A、RS B、RS C、RS D、R-S(9)在_B_时需要解决属性冲突、命名冲突、结构冲突A、设计局部 E-R 图 B、合并局部 E-R 图 C、分析用户需求 D、关系模型的规范化(10)数据安全性主要指(A)A、数据的正确性、有效性、相容性B、用户数据与程序的独立性C、保护数据以防止不法的使用D、防止并发程序之间的干扰3.判断题(每题 1 分,总分 10 分)(1)UPDATE 语句可以修改表的结构和表中的数据。.()错(2)关系中元组有先后顺序,属性没有先后顺序。.()错(3)数据的完整性是指保护数据以防止不合法的使用。()错(4)一个用户可以使用多个外模式。.()对(5)数据库系统中数据的一致性是指数据类型一致。.()错(6)两个关系的连接是两个关系的广义笛卡儿积中的一部分记录。()对第 3 页 共 16 页(7)一个存储文件可以存放一个或多个基本表.。.()对(8)一个关系模式属于 BCNF,则在函数依赖范畴已实现了彻底地分解。.()对(9)只有主码才能唯一标识一行。.()错(10)一个表可以建立多个索引.。.()对4.简答题:(每题 5 分,总分 10 分)(1)简述数据库概念设计的主要步骤。答:答:1)进行数据抽象;)进行数据抽象;2)设计局部概念模式;)设计局部概念模式;3)将局部概念模式综合成全局概念模式;)将局部概念模式综合成全局概念模式;4)对全局结构进行评审。(2)什么是数据库系统?一个数据库系统应包括哪些?答:数据库系统是指带有数据库并利用数据库技术进行数据管理的计算机系统。一个数据库系统应包括计算机硬件、数据库、数据库管理系统、应用程序系统及数据库管理员等。5.综合题(总分 40 分)现有如下关系模式:R(A,B,C,D,E,F)其中:(A,B)为码 并且存在函数依赖:BC DE DF.该关系模式满足 2NF 吗?为什么?(3 分)不满足 2NF,因为 C 部分依赖于码.如果将关系模式 R 分解为:R1(A,B,D,F)R2(B,C,E)则关系模式 R2 的码是什么?(2 分)(B,E).将关系模式 R 分解到 3NF。并说明理由(5 分)R1(A,B,D)R2(B,C)R3(D,E,F)(1)现有关系数据库如下:学生(学号,姓名,性别,专业、奖学金)课程(课程号,课程名,学分)选课(学号,课程号,分数)用关系代数表达式实现下列用关系代数表达式实现下列小题:小题:.检索“计算机”专业的学生学号、姓名(2 分)学号,姓名(专业=“计算机”(学生))第 4 页 共 16 页.检索既选修了软件工程又选修了管理信息系统课程的学生学号(2 分)学号(课程名=软件工程(选课课程)学号(课程名=管理信息系统(选课课程).没有选修课程号为”数据库”的学生姓名(2 分)姓名(学生)姓名(课程号”数据库”(学生选课))用用 SQL 语言实现下列语言实现下列 410 小题:小题:.列出学号为“98001”的已有成绩的各门课名称与成绩(2 分)SELECT 课程名,成绩 FROM 课程,选课 WHERE 课程.课程号选课.课程号 AND 学号“98001”AND 成绩 IS NOT NULL删除姓名为“陈红”的所有选课记录(2 分)DELETE FROM 选课 WHERE 学号 IN (SELECT 学号 FROM 学生 WHERE 姓名=陈红)检索获得奖学金、并且至少有一门课程成绩在 90 分以上的学生信息,包括学号、姓名和专业;(2 分)SELECT 学号,姓名,专业 FROM 学生 WHERE 奖学金0 AND EXISTS (SELECT*FROM 选课 WHERE 学生.学号=选课.学号 AND 成绩95)将对选课表的全部权限授予用户王平,并且王平可以授权给其它用户;(2 分)GRANT ALL PRIVILEGES ON 选课 TO 王平 WITH GRANT OPTION.求学号为“785222”的学生所选课程的总学分(2 分)SELECT SUM(学分)FROM 学生,选课,课程 WHERE 学生.学号选课.学号 AND 选课.课程号课程.课程号 AND 学号“785222”.将课程名为“数据库”的成绩置为 0;(2 分)UPDATE 选课 SET 成绩0 WHERE 课程号(SELECT 课程号 FROM 课程WHERE 课程名“数据库”在选课情况表中插入各门课的选课信息;(2 分)INSERT INTO 选课情况 SELECT 课程号,课程名,COUNT(*)FROM 选课 GROUP BY 课程号(3)学校中有若干系,每个系有若干个班级和教研室,每个教研室有若干个教员,其中有的教授和副教授每人各带若干个研究生,每个班有若干学生,每个学生选修若干课程,每门课程可以有若干学生选修。根据学校的情况,用 E-R 图画出概念模型,并注联系类型。(5 分)答:第 5 页 共 16 页将 E-R 图转换成关系模型,并注明主码和外码。(5 分)答:系(系代号,系名称,系电话,系主任)PK=系代号教研室(教研室编号,教研室名称,教研室电话,教研室地址,系代号)PK=教研室编号FK=系代号,参照表是系班级(班级编号,班级人数,系代号)PK=班级编号FK=系代号,参照表是系教员(教员编号,姓名,参加工作时间,职称,教研室编号)PK=教员编号FK=教研室编号,参照表是教研室学生(学号,姓名,班级编号)PK=学号FK=班级编号,参照表是班级课程(课程号,课程名称,课程学分)PK=课程号选课(学号,课程号,成绩)PK=学号,课程号FK=学号,参照表是学生FK=课程号,参照表是课程指导(教员编号,学号)PK=教员编号,学号FK=教员编号,参照表是教员FK=学号,参照表是学生一、单选题1DB、DBS、DBMS 三者之间的关系是_。()A.DB 包括 DBS 和 DBMSB.DBS 包括 DB 和 DBMSC.DBMS 包括 DBS 和 DBD.DBS 与 DB 和 DBMS 无关2在数据库中,区分不同实体的依据是_。()A.名称 B.属性C.对象 D.概念3.下列关于数据库数据模型的说法中,_是不正确的。()A.任何一张二维表都表示一个关系B.层次模型的数据结构是有向树结构C.在网状模型中,一个子结点可以有多个父结点第 6 页 共 16 页D.在面向对象模型中每一个对象都有一个惟一的标识4.关系数据模型是目前最重要的一种数据模型,它的三个要素分别是_。A.实体完整性、参照完整性、用户自定义完整性B.数据结构、关系操作、完整性约束C.数据增加、数据修改、数据查询D.外模式、模式、内模式5顾客可到多个商场购物,商场有很多顾客购物,商场与顾客之间的联系方式_。A.1:1B.1:nC.m:n D.m:16.从 E-R 图导出关系模型时,如果实体间的联系是 1:N 的,下列说法中不正确的是_。A.将 N 方码和联系的属性纳入 1 方的属性中B.将 1 方码和联系的属性纳入 N 方的属性中 C.增加一个关系表示联系,其中纳入 1 方和 N 方的码D.在 1 方属性和 N 方属性中均增加一个表示级别的属性7.描述数据库全体数据的全局逻辑结构和特性的是_。A.模式 B.内模式 C.外模式 D.子模式8.在关系数据库中,若数据库的存储结构改变了,而用户的应用程序可以不变,这是_。A.数据的物理独立性B.数据的逻辑独立性C.数据的位置独立性D.数据的语义独立性9.关系代数运算是以 为基础的运算。A.关系运算 B.谓词演算 C.集合运算 D.代数运算10按指定条件从一个关系中挑选出指定的属性组成一个新关系的运算是_。A.选择B.投影 C.连接D.自然连接11一个关系中,能唯一标识元组的属性集称为关系的_。A.唯一键 B.主键 C.从键 D.参数12下列选项中,不正确的是_。A.R=(R-S)(RS)B.R-S=R-(RS)C.RS=S-(R-S)D.RS=S-(S-R)13一般情况下,当对关系 R 和 S 进行自然连接时,要求 R 和 S 含有一个或者多个共有的_。()A.记录 B.行 C.属性 D.元组14设有关系 R(A,B,C)和 S(C,D),与 SQL 语句 select A,B,D from R,S where R.C=S.C 等价的关系代数表达式是_。()A.R.C=S.CR.C=S.C(A,B,D(RS)B.A,B,D(R,C=S.CR,C=S.C(RS)C.R.C=S.CR.C=S.C(A,B R)(DS)D.R,C=S.C(R,C=S.C(D(A,BR)S)15SQL Server 中,下面关于数据库文件叙述错误的是_。()A可添加辅助数据文件和事务日志文件B可删除主数据文件和事务日志文件C可修改数据文件和事务日志文件大小D一个数据库至少有一个事务日志文件16.下列关于查询分析器的使用错误的是_。()A.可以直接打开数据表为其添加、修改或删除记录B.可以通过执行 INSERT 语句添加记录C.可以通过执行 UPDATE 语句修改记录第 7 页 共 16 页D.可以通过执行 DELETE 语句删除记录17在数据库标准语言 SQL 中,关于 NULL 值叙述正确选项是_。()A.NULL 表示空格B.NULL 表示 0C.NULL 既可以表示 0,也可以表示是空格D.NULL 表示空值18.在 SQL Server 的系统表 Sysobjects 中,默认值的对象类型为_。()A.U B.D C.V D.P19.在关系数据库系统中,为了简化用户的查询操作,而又不增加数据的存储空间,常用的方法是创建_。()A.另一个表(table)B.游标(cursor)C.视图(view)D.索引(index)20表的 CHECK 约束是_的有效性检验规则。()A.实体完整性 B.参照完整性 C.用户自定义完整性 D.唯一完整性21.下面关于数据库文件叙述错误的是_。()A.可添加辅助数据文件和事务日志文件 B.可删除主数据文件和事务日志文件C可修改数据文件和事务日志文件大小 D数据文件和事务日志文件默认允许自动增加大小22下列关于 ALTER TABLE 语句叙述错误的是_。()A.可以添加字段 B.可以删除字段 C.可以修改字段名称 D.可以修改字段数据类型23.SQL Server 中,对用户授予数据库操作的语句关键字为_。()A.REVOKE B.CREATE C.SET D.GRANT24关于冗余数据的叙述中,不正确的是_。()A.冗余的存在容易破坏数据库的完整性 B.冗余的存在给数据库的维护增加困难C.不应该在数据库中存储任何冗余数据 D.冗余数据是指可由基本数据导出的数据25.已知关系模式 R(A,B,C,D,E)及其上的函数依赖集合 FAD,BC,EA,该关系模式的候选码是_。()A.AB B.BE C.CD D.DE 26假如采用关系数据库系统来实现应用,在数据库设计的 阶段,需要将 E-R模型转换为关系数据模型。()A.概念设计 B.物理设计 C.逻辑设计 D.运行阶段27事务的原子性是指_。()A.事务中包括的所有操作要么都做,要么都不做 B.事务一旦提交,对数据库的改变是永久的 C.一个事务内部的操作对并发的其他事务是隔离的 D.事务必须使数据库从一个一致性状态变到另一个一致性状态 28如果事务 T 获得了数据项 Q 上的排他锁,则 T 对 Q_。()A.只能读不能写 B.只能写不能读 C.既可读又可写D.不能读也不能写 29如果有两个事务,同时对数据库中同一数据进行操作,不会引起冲突的操作是_。A.一个是 DELETE,一个是 SELECTB.一个是 SELECT,一个是 DELETE C.两个都是 UPDATED.两个都是 SELECT30下列不属于并发操作引起的问题是_。()A.丢失修改 B.不可重复读 C.活锁或死锁 D.读脏数据二、多选题31下面列出的条目中,哪些是数据库系统的组成部分?()第 8 页 共 16 页A应用系统B数据库C数据库管理系统D系统分析员E.数据库管理员32关系数据库基本特征的是_。()A.不同的列应有不同的数据类型 B.不同的列应有不同的列名C.与行的次序无关 D.与列的次序无关 E.都正确33假设学生关系 S(S,SNAME,SEX),课程关系 C(C,CNAME),学生选课关系 SC(S,C,GRADE)。要查询选修“Computer”课的男生姓名,将涉及到关系_。A.S B.SC C.CD.不确定 E.都没有34下列关于关系数据库视图的说法中,_是正确的?()A.视图是关系数据库三级模式中的内模式B.视图能够对机密数据库提供一定的安全保护C.视图对重构数据库提供了一定程度的逻辑独立性D.对视图的一切操作最终都要转换为对基本表的操作E.所有的视图都是可以更新的35若用如下的 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.(201006,101,NULL,NULL)C.(NULL,103,80,选修)D.(201132,NULL,86,)E.(201132,111,86,)三、填空题36数据库管理技术的发展是与计算机技术及其应用的发展联系在一起的,它经历了三个阶段:人工管理阶段、_阶段和数据库系统阶段。37在关系模型中,若属性 A 是关系 R 的主码,则在 R 的任何元组中,属性 A 的取值都不允许为空,这种约束称为_规则。38.SQL 的中文全称是_。39.SQL 语言是一个综合性的功能强大的语言,除了具有数据查询和数据操纵功能之外,还具有数据定义和_的功能。40.已知学生关系(学号,姓名,年龄,班级),要检索班级为空值的学生姓名,其 SQL 语句中 WHERE 子句的条件表达式是_。41.数据库的安全性是指保护数据库以防止不合法的使用所造成的_、更改或破坏。42.关系模型的参照完整性在定义表中用_短语定义哪些列为外码列,用REFERENCES 短语指明这些外码参照哪些表的主码。43若关系为 1NF,且它的每一非主属性都_候选码,则该关系为 2NF。44.在数据库设计中,_阶段确定数据库存储结构,即确定关系、索引、聚簇、日志、备份等数据的存储安排和存储结构。45.数据库管理系统是位于用户和_之间的一个数据管理软件。四、简答题(请按照题目要求按步骤在空白处写出正确答案)47设数据库中有三个关系 S(S#,SNAME,AGE,SEX)、C(C#,CNAME,TEACHER)、SC(S#,C#,GRADE),请用代数表达式表示下列查询:1)检索选修课程名为 Maths 的学生的学号与姓名第 9 页 共 16 页2)检索所有选修 C2 课学生的姓名与年龄;48设数据库中有三个关系 S(S#,SNAME,AGE,SEX)、C(C#,CNAME,TEACHER)、SC(S#,C#,GRADE),请用 SQL 语言表示下列要求:1)按照“学号、姓名、年龄、性别”的顺序列出学生信息,其中性别按以下规定显示:性别为男显示为男 生,性别为女显示为女 生,其他显示为“条件不明”;2)将选修课程号为“1”的同学成绩加 5 分;3)查询学号最后一位为 1 或者 2 或者 3 的学生的学号、姓名、年龄及性别;4)查询所选课程的平均成绩大于张力的平均成绩的所有学生的学号、姓名及平均成绩;5)创建视图 stu_info,包含所有学生的学号、姓名、性别、年龄、选修课程号、课程名、考试成绩及任课教师;49设有关系模式 R(A,B,C,D),F 是 R 上成立的 FD 集。F=ABC,C D,D A。试计算出关系模式 R 的所有候选键,并说明理由。五、程序设计题50要求在本地磁盘 D 创建学生数据库 stu,数据文件和日志文件名称分别为stu_data 和 stu_log,初始大小都为 3MB,增长方式分别为 10%和 1MB,数据文件最大为 500MB,日志文件大小不受限制;并定义数据表 Student,包含的字段有学号、姓名、性别、年龄及院系,其中学号为主键,要求学号必须由 9 个数字字符组成,并且不等于 0000000000;男生的年龄在 1525 岁之间,女生的年龄在 1425 岁之间。六、综合题51设有系、教师、学生、课程等实体,其中每一个系包括系名、系址、系主任姓名、办公电话等属性,教师实体包括工作证号码、教师名、出生日期、党派等属性。学生实体包括学号、姓名、出生日期、性别等属性。课程实体包括课程号、课程名、预修课号等属性。设一个系可以有多名学生和教师,学生和教师只能属于一个系,每个教师教多门课程,一门课程由一个教师教。其中有的教师指导多个学生。每一个学生可选多门课程,每门课程只有一个预修课程,每一个学生选修一门课程有一个成绩,试根据以上语义完成下述要求。1)根据上述规则设计 E-R 模型;2)将 E-R 模型转换成关系数据模型,并指出关系的主键和外键;3)写出各关系模式中的最小函数依赖集;所有的关系模式的规范化级别都达到 3NF 了吗?若没有达到请将其分解以达到 3NF。一、填空题(每空 1 分,共 15 分)1.数据管理技术经历了 人工管理 、文件系统 和 数据库系统 三个阶段。2.数据库管理系统的主要功能有 数据定义功能 、数据操纵功能 、数据库的运行管理和数据库的建立以及维护等 4 个方面。3.关系代数运算中,基本的运算是 并、差、笛卡尔积、投影 和 选择 。4数据库的完整性是指数据的 实体完整性 .参照完整性_和 用户定义完整性。5.对于非规范化的模式,将 1NF 经过 消除非主属性对关键字的部分依赖 转变为2NF,将 2NF 经过 消除非主属性对关键字的部分依赖 转变为 3NF。二、选择题(每题 2 分,共 30 分)1.是存储在计算机内有结构的数据的集合。A数据库系统 B数据库 C数据库管理系统 D数据结第 10 页 共 16 页构 2数据库中存储的是 。A数据 B数据模型 C数据以及数据之间的联系 D信息 3自然连接是构成新关系的有效方法。一般情况下,当对关系 R 和 S 使用自然连接时,要求 R 和 S 含有一个或多个共有的 。A元组 B行 C记录 D属性 4.设有关系 R,按条件 f 对关系 R 进行选择,正确的是 。ARR BR R C f(R)Df(R)F 5.如图所示,两个关系 R1 和 R2,它们进行 运算后得到 R3。R2 R1ABCACD121XYyR3ABCDEACC112XYyMMNIIJ A交 B并 C笛卡尔积 D连接 6.SQL 语言具有 的功能。A关系规范化、数据操纵、数据控制 B数据定义、数据操纵、数据控制 C数据定义、关系规范化、数据控制 D数据定义、关系规范化、数据操纵 7.SQL 语言具有两种使用方式,分别称为交互式 SQL 和 。A提示式 SQL B多用户 SQL C嵌入式 SQL D解释式 SQL 8.假定学生关系是 S(S#,SNAME,SEX,AGE),课程关系是 C(C#,CNAME,TEACHER),学生选课关系是 SC(S#,C#,GRADE)。要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系 。AS BSC,C CS,SC DS,C,SC 9下面哪个不是数据库系统必须提供的数据控制功能 。A安全性B可移植性C完整性D并发控制 DEM125MNMIJK第 11 页 共 16 页10.在数据系统中,对存取权限的定义称为 。A命令 B授权 C定义 D审计 11.关于主键约束以下说法错误的是()A.一个表中只能设置一个主键约束 B.允许空值的字段上不能定义主键约束C.允许空值的字段上可以定义主键约束 D.、可以将包含多个字段的字段组合设置为主键 12.当关系模式 R(A,B)已属于 3NF,下列说法中 是正确的。A它一定消除了插入和删除异常 B仍存在一定的插入和删除异常 C一定属于 BCNF DA 和 C 都是 13.关系模型中的关系模式至少是 。A1NF B2NF C3NF DBCNF 14.在关系数据库设计中,设计关系模式是 的任务。A需求分析阶段B概念设计阶段C逻辑设计阶段D物理设计阶段 15.用于数据库恢复的重要文件是 。A数据库文件B索引文件C日志文件D备注文件 三、查询设计题(每小题 4 分,共计 40 分)1.设学生-课程数据库中包括三个表:学生表:Student(Sno,Sname,Sex,Sage,Sdept)课程表:Course(Cno,Cname,Ccredit)学生选课表:SC(Sno,Cno,Grade)其中 Sno、Sname、Sex、Sage、Sdept、Cno、Cname、Ccredit、Grade 分别表示学号、姓名、性别、年龄、所在系名、课程号、课程名、学分和成绩。试用 SQL 语言完成下列项操作:(1)查询选修课程包括“1042”号学生所学的课程的学生学号 SELECT DISTINCT SNO FROM SC SCX WHERE NOT EXISTS(SELECT*FROM SC SCY WHERE SCY.SNO=1042 AND NOT EXISTS(SELECT*FROM SC SCZ WHERE SCZ.SNO=SCX.SNO AND SCZ.CNO=SCY.CNO );(2)创建一个计科系学生信息视图 S_CS_VIEW,包括 Sno 学号、Sname 姓名、Sex性别;CREATE VIEW S_CS_VIEW AS第 12 页 共 16 页 SELECT SNO,SNAME,SEX FROM STUDENT WHERE Sdept=CS(3)通过上面第 2 题创建的视图修改数据,把王平的名字改为王慧平 UPDATE S_CS_VIEW SET SNAME=王慧平 WHERE SNAME=王平(4)创建一选修数据库课程信息的视图,视图名称为 datascore_view,包含学号、姓名、成绩。CREATE VIEW datascore_view AS SELECT SNO 学号、SNAME 姓名、GRADE 成绩 FROM STUDENT,SC,COURSE WHERE STUDENT.SNO=SC.SNO AND COURSE.CNO=SC.CNO AND CNAME=数据库2.设有如下所示的关系 S(S#,SNAME,AGE,SEX)、C(C#,CNAME,TEACHER)和 SC(S#,C#,GRADE),试用关系代数表达式表示下列查询语句:(1)检索“程军”老师所授课程的课程号(C#)和课程名(CNAME)。C#,CNAME(TEACHER=程军(C)(2)检索年龄大于 21 的男学生学号(S#)和姓名(SNAME)。S#,SNAME(AGE21 SEX=”男”(C)(3)检索至少选修“程军”老师所授全部课程的学生姓名(SNAME)。SNAMEswv S#,C#(sc)C#(TEACHER=程军(C)(4)检索”李强”同学不学课程的课程号(C#)。C#(C)-C#(SNAME=李强(S)wv SC)(5)检索至少选修两门课程的学生学号(S#)。S#(1=425(SC SC)(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。C#,CNAME(Cwv (S#,C#(sc)S#(S)四、综合题(每小题 5 分,共计 15 分)设有如下关系 R(1)它为第几范式?为什么?第 13 页 共 16 页它是 2NF。因为 R 的候选关键字为“课程名”。依赖关系:课程名教师名,教师名 课程名,教师名教师地址,所以 课程名教师地址。即存在非主属性“教师地址”对候选关键字课程名的传递函数,因此 R 不是 3NF。但:因为不存在非主属性对候选关键字的部分函数依赖,所以 R 是 2NF。(2)是否存在删除操作异常?若存在,则说明是在什么情况下发生的?存在。当删除某门课程时会删除不该删除的教师的有关信息。(3)将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题?分解后,若删除课程数据时,仅对关系 R1 操作,教师地址信息在关系 R2 中仍然保留,不会丢失教师方面的信息。分解为高一级范式如图所示。第 14 页 共 16 页14答案一、单项选择题1.B2.B3.A4.B5.C6.A7.A8.A9.C10.B11.B12.C13.C14.B 15.B16.A17.D 18.B 19.C20.C21.B 22.C23.D 24.C25.B26.C27.A28.C29.D30.C二、多选题31.ABCDE32.BCD33.ABC34.BCD35.ACD三、填空题36.文件系统37.实体完整性38.结构化查询语言39.数据控制40.班级 is null41.数据泄露42.foreign key43.完全函数依赖于44.物理设计 45.操作系统四、简答题47.1)S#,SNAME(CNAME=Maths(S SC C))也可写为:S#,SNAME(S SC(CNAME=Maths(C)2)SNAME,AGE(C#=C2(S S C))48.1)select s#学号,sname 姓名,age 年龄,性别=(case when sex=男 then 男 生 when sex=女 then 女 生 else 条件不明 end)from s 2)update scSet grade=grade+5Where c#=13)select s#,sname,age,sex from swhere s#like%1-3from s,sc where s.s#=sc.s#group by s.s#,snamehaving avg(grade)(select avg(grade)from s,sc where s.s#=sc.s#and sname=张力)5)CREATE PROCEDURE stu_info AS SELECT s.s#,sname,sex,age,c.c#,cname,teacher,gradeFrom s,sc,cwhere s.s#=sc.s#and c.c#=sc.c#and c.c#=1 49.步骤 1:求关系 R 的所有单属性的闭包;AF+=A,B F+=B,C F+=ACD,D F+=AD第 15 页 共 16 页15步骤 2:求关系 R 的所有双属性的闭包;(AB)F+=ABCD,(AC)F+=ACD,(AD)F+=AD,(,(BC)F+=ABCD,(BD)F+=ABCD,(,(CD)F+=ACD步骤 3:求关系 R 的所有三属性的闭包;(ABC)F+=ABCD,(ABD)F+=ABCD(ACD)F+=ACD,(,(BCD)F+=ABCD步骤 4:求关系 R 的所有四属性的闭包;(ABCD)F+=ABCD结论:候选码为 AB,BC,BD五、程序设计50.CREATE DATABASE stu ON primary (NAME=stu,FILENAME=D:stu.mdf,SIZE=3MB,MAXSIZE=500MB,FILEGROWTH=10%)LOG ON (NAME=stu_log,FILENAME=D:stu_log.ldf,SIZE=3MB,MAXSIZE=unlimited,FILEGROWTH=1MB)CREATE TABLE student(学号 char(9)PRIMARY KEY Check(学号 like 0-90-90-90-90-90-90-90-90-9 and 学号000000000),姓名 char(8),性别 char(2),年龄 int ,院系 char(20),CHECK(年龄=15)OR(性别=女 AND 年龄=14)六、综合题522)将 E-R 模型转换成关系数据模型,并指出每个关系的主键;系(系名,系址,系主任姓名,办公电话)教师(工作证号码,教师名,出生日期,党派,系名)外键:系名学生(学号,姓名,出生日期,性别,系名)外键:系名课程(课程号,课程名,预修课号,工作证号码)外键:工作证号码成绩(学号,课程号,成绩)3)写出各关系模式中的函数依赖集;系函数依赖集为 F1=系名系址,系名系址,系名系主任姓名,系名办公电话教师函数依赖集为 F2=工作证号码教师名,工作证号码出生日期,工作证号码党派,工作证第 16 页 共 16 页16号码系名学生函数依赖集为 F3=学号姓名,学号出生日期,学号性别,学号系名课程函数依赖集为 F4=课程号课程名,课程号预修课号,课程号工作证号码成绩函数依赖集为 F5=(学号,课程号)成绩4)若没有达到请将其分解以达到 3NF。判断 F1,主属性为系名,不存在部分依赖和传递依赖,属于 3NF;判断 F2,主属性为工作证号码,不存在部分依赖和传递依赖,属于 3NF;判断 F3,主属性为学号,不存在部分依赖和传递依赖,属于 3NF;判断 F4,主属性为课程号,不存在部分依赖和传递依赖,属于 3NF;判断 F5,主属性为学号和课程号,不存在部分依赖和传递依赖,属于 3NF;
展开阅读全文