数据库系统包括题目和答案_第1页
数据库系统包括题目和答案_第2页
数据库系统包括题目和答案_第3页
数据库系统包括题目和答案_第4页
数据库系统包括题目和答案_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.数据库系统原理复习题第章一、选择题1. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(A )。 A. DBS包括DB和DBMS B. DBMS包括DB和DBSC. DB包括DBS和DBMS D. DBS就是DB,也就是DBMS2. 概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是(D )。A. 层次模型 B. 关系模型 C. 网状模型 D. 实体-联系模型3. 目前,数据库管理系统最常用的逻辑数据模型是( C)。A网状模型 B层次模型C关系模型 D面向对象模型 4. 下列四项中,不属于数据库系统特点的是( C)。A. 数据共享 B. 数据完整性 C.

2、 数据冗余度高 D. 数据独立性高5. 数据模型的三个要素分别是(B )。A. 实体完整性、参照完整性、用户自定义完整性B. 数据结构、数据操作、数据完整性约束条件 C. 插入数据、修改数据、删除数据 D. 外模式、模式、内模式 6. 数据库三级结构从内到外的3个层次依次为(B)。A. 外模式、模式、内模式 B. 内模式、模式、外模式C. 模式、外模式、内模式 D. 内模式、外模式、模式7. 下列关于数据库系统的正确叙述是(A):A. 数据库系统减少了数据冗余B. 数据库系统避免了一切冗余C. 数据库系统中数据的一致性是指数据类型的一致D. 数据库系统比文件系统能管理更多的数据8. 数据的逻辑

3、独立性是指(B)。A外模式改变时保持应用程序不变B模式改变时保持外模式不变C内模式改变时保持模式不变D数据改变时保持应用程序不变9. 数据的物理独立性是指(C)。A外模式改变时保持应用程序不变B模式改变时保持外模式不变C内模式改变时保持模式不变D数据改变时保持应用程序不变10. 公司有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到职员的联系类型是(D)。A. 多对多 B. 一对一 C. 多对一 D. 一对多11. 储蓄所有多个储户,储户在多个储蓄所之间存款,储户与储蓄所之间是(C)。A. 一对一联系 B. 一对多联系 C. 多对多联系 D. 不确定联系12. 描

4、述数据库全体数据的全局逻辑结构和特性的是( A)。 A. 模式 B. 内模式 C. 外模式 D. 以上三级模式 二、填空1. 数据库系统一般由(数据库)、(数据库管理系统)、(应用程序)和(数据库管理员)组成。2. 数据库是长期存储在计算机中、有(组织)的、可(共享)的数据集合。3. DBMS表示(DataBase Management System),它是位于(用户)和(操作系统)之间的一层数据管理软件。4. 实体之间的联系可抽象为三类,它们是(一对一)、(一对多)和(多对多)。5. 数据模型的三要素包括(数据结构)、(数据操作)和(数据完整性约束条件)三部分。6. 根据数据模型的应用目的不

5、同,数据模型分为(概念模型)、(逻辑模型)和(物理模型)等。7. 按照数据结构的类型命名,逻辑模型分为(关系模型)、(层次模型)和(网状模型)等。8. E-R图中,(矩形)表示实体,(椭圆)表示属性,(菱形)表示实体之间的联系。三、简述题1. 数据库是长期存贮在计算机内的、有组织的、可共享的大量数据的集合。2. 数据库管理系统的主要功能包括: (1)数据定义功能, (2)数据的组织、存储和管理, (3)数据操纵功能, (4)数据库事务的管理与运行管理, (5)数据的建立与维护, (6)其它功能。3. 数据结构、数据操作和数据完整性约束条件构成数据模型的三要素。4. 数据库中数据操作包括插入、修

6、改、删除和查询。6. 实体型之间的联系包括一对一联系、一对多联系和多对多联系三种类型。8. 数据库领域中常用的逻辑数据模型有层次模型、网状模型、关系模型、面向对象模型等。9. 数据库系统由数据库、数据库管理系统、应用系统和数据库管理员等组成。10. 数据库系统三级模式结构是指模式、内模式和外模式。三、简述题1 数据库的定义是什么?2 数据库管理系统的主要功能有哪些?3 数据模型的三要素是什么?4 数据库中数据操作包括哪些?5 实体型之间的联系包括哪三种?6 数据库领域中常用的逻辑数据模型有哪些?7 数据库系统由哪几部分组成?8 数据库系统三级模式结构?答案:1. 数据库是长期存贮在计算机内的、

7、有组织的、可共享的大量数据的集合。2. 数据库管理系统的主要功能包括: (1)数据定义功能, (2)数据的组织、存储和管理, (3)数据操纵功能, (4)数据库事务的管理与运行管理, (5)数据的建立与维护, (6)其它功能。3. 数据结构、数据操作和数据完整性约束条件构成数据模型的三要素。4. 数据库中数据操作包括插入、修改、删除和查询。6. 实体型之间的联系包括一对一联系、一对多联系和多对多联系三种类型。8. 数据库领域中常用的逻辑数据模型有层次模型、网状模型、关系模型、面向对象模型等。9. 数据库系统由数据库、数据库管理系统、应用系统和数据库管理员等组成。10. 数据库系统三级模式结构是

8、指模式、内模式和外模式。四、应用题1. 设有商品和顾客两个实体,商品实体包括商品编号、名称、单价等属性,顾客实体包括顾客编号、姓名、联系电话等属性,两个实体存在如下的关系:l 一个顾客可购买多种任意商品l 每次可购买一定数量的商品(一天只限一次购物)绘出E-R图,并标明属性和联系的类型2. 为某百货公司设计一个E-R模型:百货公司管辖若干个连锁商店,每家商店经营若干商品,每家商店有若干职工,但每个职工只能服务于一家商店。实体类型“商店”的属性有:商店编号、商店名称、地址、联系电话。实体类型“商品”的属性有:商品编号、商品名称、单价、产地。实体类型“职工”的属性有:职工编号、职工姓名、性别、工资

9、。在联系中应反映出职工参加某商店工作的工作时间,商店推销产品的销售量。3. 试为一网上书店建立概念模型。第2章1、 选择题1.关于关系模型,下列说法中不正确的是( D)。B. 关系模型是建立在集合代数的基础上的 C. 数据的逻辑结构是一个二维表 D. 关系操作是面向集合的操作方式 E. 关系中的数据可以是任意的2关于关系,下列说法中不正确的是(D )。B. 关系中每个属性值都是不可分解的 B. 关系中不允许出现相同的元组 C. 关系中不考虑元组间的顺序 D. 元组中的属性是有序的 3关系代数中,选择运算的运算符号是(C)A× B C D4关系查询时取出关系的某些列,并取消重复元组的关

10、系运算为(B)。B. 选择运算 B. 投影运算 C. 连接运算 D.笛卡儿积5根据关系模式的实体完整性规则,一个关系的主码属性(C)。A不能有两个 B不能成为另一个关系的外码C不允许为空 D可以取任意值6在关系模式R(R#,RN,S#)和S(S#,SN,SD)中,R的主键是R#,S的主键是S#,则S#在R中称为( B)。 C. 主码 B. 外码 C. 候选码 D. 全码 7“成绩在0-100之间”这种约束属于哪种完整性约束(C )。 D. 主键约束 B. 外键约束 C. 用户定义的完整性约束 D. 全不是 8关系R如下图所示,a1的象集是( B)。 ABCa1b1c1a1b2c3a2b1c2E

11、. b1,b2 B. (b1,c1),(b2,c3)C. c1,c3 D. (b1,c1),(b2,c3), (b1,c2)二、简述题9 关系模型的三个组成部分是什么?10 关系模型的完整性约束分为哪三类?11 关系代数中提供了哪些关系的查询运算? 答案1. 关系模型由关系数据结构、关系操作和关系的完整性约束条件三部分组成。2. 关系的完整性约束包括主键约束、外键约束和用户定义的完整性约束三种。 3.关系代数中的查询包括关系的并、交、差、笛卡儿积、选择、投影、连接和除法等三、用关系代数表示查询12设有选课关系数据库模式如下:Student(Sno,Sname,Sage,Ssex)Course(

12、Cno,Cname)SC(Sno,Cno,Grade)请用关系代数表达式表示下列查询:(1) 查询选修了2号课程的学生的学号(2) 查询学号为“03”的学生的学号和姓名(3) 查询年龄大于20岁的男同学的学号和姓名(4) 查询选修了课程的学生的学号和姓名(5) 查询有选修学生的课程号和课程名(6) 查询选修了5号课程的学生的姓名和成绩(7) 查询选修了“数据库原理”课程的学生的学号和姓名 答案:(1) Sno (Cno=2(SC) select sno from sc where cno=2(2) Sno,Sname (Sno=03(Student) Select sno,sname from

13、 student where sno=03(3) Sno,Sname (Sage 20 Ssex=男(Student)Select sno,sname from student where sage>20 and ssex=男(4) Sno,Sname (Student SC )Select sc.sno,sanme from sc,student where student.sno=sc.sno(5) Cno,Cname (Course SC)Select o,cname from course,sc where o=o(6) Sname,Grade (Student (Cno=5 (

14、SC ) )Select sname,grade from student,sc where student.sno=sc.sno and cno=5(7) Sno,Sname (Cname=数据库原理(Student SC Course)或Sno,Sname (Student Sno ( SC Cname=数据库原理(Course) )Select sno,sname from student,sc,course where sc.sno=student.sno and o=o and cname=数据库原理13现有图书借阅关系数据库模式如下:图书(图书号,书名,作者,单价,库存量)读者(读

15、者号,姓名,工作单位,地址)借阅(图书号,读者号,借期,还期,备注)其中,还期为NULL表示该书未还。用关系代数表示如下查询:(1) 查询读者号为“R016”的读者姓名、工作单位(2) 查询图书号为“B5”的读者姓名(3) 查询读者“李林”所借阅图书的书名(4) 查询读者“李林”所借阅图书中未还的书名答案(1) 姓名,工作单位(读者号=R016(读者))(2) 姓名(图书号 =B5(读者 借阅))(3) 书名(姓名 =李林(读者 借阅 图书))(4) 姓名(姓名 =李林 还期 = NULL(读者 借阅 图书)或 姓名(姓名=李林(读者) (还期 = NULL(借阅) 图书)2、Sname,Gr

16、ade (Cno=5(Student SC))3、Sno,Sname (Student Sno (SC Cname=操作系统(Course)第3章1、 选择题1. SQL语言称为( C)。A结构化定义语言 B. 结构化操纵语言 C. 结构化查询语言 D. 结构化控制语言2. 下列SQL语句中,修改表结构的是 ( D)ACREATE BUPDATE CINSERT DALTER 3. 在SELECT语句中, 用于实现数据分组统计的子句是 (C )AFROM子句 BWHERE子句 CGROUP BY子句 DORDER BY 子句4. 下列哪种运算不能引出子查询。( B ) AIN BLIKE CE

17、XISTS D比较运算 5. 基于学生选课数据库中的3个关系:S(学号, 姓名, 性别, 年龄)、C(课程号, 课程名, 任课教师)、 SC(学号, 课程号, 成绩),若要求查找选修“数据库技术”这门课程的学生姓名和成绩,将使用关系(D )AS和SC BSC和C CS和C DS、SC和C6. 基于学生选课数据库中的3个关系:S(学号, 姓名, 性别, 年龄)、C(课程号, 课程名, 任课教师)、 SC(学号, 课程号, 成绩),若要求查找学生的平均成绩大于80分的学号和平均成绩,下面列出的SQL语句,正确的是(C )。ASELECT 学号, AVG(成绩) FROM SC WHERE AVG(

18、成绩)>80BSELECT 学号, AVG(成绩) FROM SC WHERE AVG(成绩)>80 GROUP BY 学号CSELECT 学号, AVG(成绩) FROM SC GROUP BY 学号 HAVING AVG(成绩)>80DSELECT 学号, 成绩 FROM SC GROUP BY 学号 HAVING AVG(成绩)>807. 下列SQL语句中,正确的是( C)。ASELECT S#, SNAME FROM SC GROUP BY S#BSELECT S# FROM SC GROUP BY S# HAVING COUNT(*)>3CSELECT

19、S# FROM SC GROUP BY S# WHERE COUNT(*)>3 DSELECT S# FROM SC WHERE COUNT(*)>3 GROUP BY S#8. 在视图上不能完成的操作是(C)。A更新视图 B查询视图C在视图上定义新的基本表 D在视图上定义新视图二、填空1. 在SQL的查询语句中,使用(FROM)子句数据源,使用(WHERE)子句选择参与运算的数据行,使用(SELECT)子句指定目标列。可使用(GROUP BY)子句结合聚集函数进行分组统计。若对查询结果排序可使用(ORDER BY)子句。2. 在SQL中,(CREATE TBLE)语句创建表和声明

20、完整性约束条件。如果要为一个基本表增加列和完整性约束条件,应该使用(ALTER TABLE)语句。删除表的定义及表中的数据和索引,应该使用的语句是(DROP TABLE)。3. 视图是定义在(基本表)之上的虚表,对视图也可以进行插入、修改、删除和查询操作。但视图不存储数据,对视图的一切操作最终要转换为对(基本表)的操作。三、简述题1.SQL语言的特点?2.SQL语言中常用的语句有哪些?3.SQL中提供了哪些常用的聚集函数?它们如何使用?4.什么是连接查询?连接查询如何指定连接条件?5.什么是子查询?用在WHERE子句中的子查询有几种调用方式?答案:1. SQL语言集数据查询、数据操纵、数据定义

21、和数据控功能于一体,其主要的操作语句包括CREATE、ALTER、DROP、INSERT、UPDATE、DELETE、SELECT、GRANT、REVOKE等。2. SQL中提供了一些聚集函数,用于统计数据库数据,包括COUNT、AVG、SUM、MAX、MIN等,除COUNT(*)用法外,统计时均忽略空值,使用DISTINCT选项可忽略对重复数据的统计。聚集行数只可用于SELECT子句和HAVING子句。3. 若一个查询同时涉及到两个表,则称之为连接查询。连接查询的连接条件可在WHERE子句中通过一个比较运算指定,或在FROM子句中在指定连接方式的同时指定连接条件。4. 子查询又称嵌套查询,是

22、嵌套在SELECT、INSERT、UPDATE、DELETE等语句中的SELECT查询语句。多用在WHERE子句中,使用子查询的结果作为搜索条件。在Where子句中使用子查询有以下几种方式:由IN引出子查询、由比较运算符引出子查询、由EXISTS引出子查询。四、数据库操作1. 仓库管理系统在某仓库管理系统中,有两个表:KC表和CKMX表,其结构和部分数据如下:表1、KC表结构和数据材料代码材料名称单位单价库存数量01计算机台5000.001002电视机台2000.0020表2、CKMX表结构和数据编号材料代码出库日期出库数量1012009-10-1042012009-11-2033022009

23、-11-205其中,KC表保存当前仓库库存材料的信息,CKMX表存放库存材料的出库名细。例如,KC表第一行表示该仓库中现有计算机10台。CKMX表第二行表示2009年11月20日从仓库中出库3台计算机。(1) 试写出创建KC表和CKMX表的SQL语句,要求定义实体和参照完整性。(2) 写出在KC表上按材料名称建立唯一索引的SQL语句。(3) 创建一个视图,用于查询计算机的出库明细。(4) 写出将表中数据插入到相应表中的语句。(5) 从表CKMX中统计出各种材料的出库次数和出库总数量,试写出SQL语句。(6) 写出由KC表和CKMX表产生如下结果集的查询语句:编号出库日期材料名称单价出库数量金额

24、12009-10-10计算机5000.00420000.0022009-11-20计算机5000.00315000.00答案:. 仓库管理系统(8) 创建表CREATE TABLE KC( 材料代码 char(2) PRIMARY KEY,材料名称 char(20),单位 char(10),单价 numeric(10,2),库存数量 int )CREATE TABLE CKMX( 编号 char(4) PRIMARY KEY,材料代码 char(2) REFERENCES KC(材料代码),出库日期 date,出库数量 int)Or或者CREATE TABLE CKMX( 编号 char(4)

25、 PRIMARY KEY,材料代码 char(2),出库日期 date,出库数量 int, Foreign key (材料代码) REFERENCES KC(材料代码)(9) 创建索引CREATE UNIQUE INDEX index1 ON KC(材料名称)Drop index index1 on KC(10) 创建视图CREATE VIEW viewComputer ASSELECT * FROM CKMX,KC WHERE CKMX.材料代码=KC.材料代码 and KC.材料名称= '计算机'(11) 插入数据INSERT INTO KC VALUES('01&

26、#39;,'计算机','台',5000.00,10)INSERT INTO KC VALUES('02','电视机','台',2000.00,20)INSERT INTO CKMX VALUES('1','01','2009-10-10',4)INSERT INTO CKMX VALUES('2','01','2009-10-20',3)INSERT INTO CKMX VALUES('3','0

27、2','2009-10-20',5)(12) 统计SELECT 材料代码,COUNT(*) as 次数, SUM(出库数量) as 出库数量from CKMX group by 材料代码(13) 查询SELECT ckmx.编号,出库日期,材料名称,单价,出库数量,出库数量*单价 as 金额FROM KC,CKMXWHERE KC.材料代码 = CKMX.材料代码2. 财务管理系统学校有多名学生,财务处每年要收一次学费。财务处现用两个表记录相关信息,其结构和部分数据如下表:表1、XS表结构和数据学号姓名性别年龄所在系200901张明男18计算机200902王晓萌21信息

28、200903李刚男20计算机表2、JFQK表结构和数据序号学号交费日期书费学费12009012009-09-10500.50500022009022009-09-10400.00500032009012010-10-10300.204000其中,XS表是在校学生名册和基本信息登记表,JFQK表是学生交学费情况记录。(1) 试写出创建XS表和JFQK表的SQL语句,要求定义实体和参照完整性。(2) 写出在XS表上按学生姓名建立唯一索引的SQL语句。(3) 创建一个视图,用于查询计算机系同学的基本信息。(4) 写出将表中数据插入到相应表中的语句。(5) 将计算机系同学的年龄增加1岁,并将计算机系同

29、学的学费减1000元。(6) 从表JFQK中统计出每个同学的交费次数和交费总金额,试写出SQL语句。(7) 写出由XS表和JFQK表能产生类似如下结果集的查询语句:序号姓名交费日期书费学费合计1张明2009-09-10500.5050005500.502王晓萌2009-09-10400.0050005400.00答案 财务管理系统(5) 创建表CREATE TABLE XS( 学号 char(6) PRIMARY KEY,姓名 char(10) not null,性别 char(2) null,年龄 smallint,所在系 char(20)CREATE TABLE JFQK( 序号 int

30、PRIMARY KEY,学号 char(6) REFERENCES XS(学号),交费日期 date,书费 numeric(6,2),学费 int)(6) 创建索引CREATE UNIQUE INDEX index1 ON XS(姓名)(7) 创建视图CREATE VIEW viewComputer1 AS SELECT * FROM XS WHERE 所在系 = '计算机'(8) 插入数据INSERT INTO XS VALUES('200901','张明', '男',18,'计算机')INSERT INTO X

31、S VALUES('200902','王晓萌',null,21,'信息')INSERT INTO XS VALUES('200903','李刚', '男',20,'计算机')INSERT INTO JFQK VALUES(1,'200901','2009-09-10',500.50,5000)INSERT INTO JFQK VALUES(2,'200902','2009-09-10',400.00,5000)INSER

32、T INTO JFQK VALUES(3,'200901','2010-10-10',300.20,4000)(9) 更新数据UPDATE XS SET 年龄 = 年龄 + 1WHERE 所在系 = '计算机'或 UPDATE viewComputer1 SET 年龄 = 年龄 + 1UPDATE JFQK SET 学费 = 学费 -1000 WHERE '计算机' = (SELECT 所在系 FROM XS WHERE XS.学号 = JFQK.学号)(10) 统计SELECT 学号,COUNT(*) as 交费次数, SUM(

33、书费+学费) as 总金额FROM JFQKGROUP BY 学号(11) 查询SELECT 序号,姓名,交费日期,书费,学费,书费+学费 as 合计FROM XS,JFQKWHERE XS.学号 = JFQK.学号第4、5章1、 选择题1. 实体完整性要求主属性不能取空值,这通常是通过(D )。ADBMS自动保证 B. 用户定义的完整性约束来保证 C. 定义外键来保证 D. 定义主键来保证2. 下列SQL语句中,能够实现参照完整性控制的语句是(D )。A. NOT NULL B. PRIMARY KEY C. UNIQUE D. FOREIGN KEY3. 若关系R(A,B,C)主码为A,

34、关系S(D,A)主码为D,外码为A,下面在关系S中哪个元组违反了完整性约束条件?( C)。 R SABCDA12213312342Null31A. (1, 2) B. (2, Null) C. (3, 3) D. (4, 1)4. 使用CREATE TABLE STU (NO CHAR(4) NOT NULL, NAME CHAR(8) NOT NULL, SEX CHAR(2), AGE INT ) 创建了表STU ,下列哪些语句可以插入到表中。( B)AINSERT INTO STU VALUES(1031,张华,男,23)BINSERT INTO STU VALUES (1031, 张华

35、,NULL,NULL)CINSERT INTO STU VALUES(NULL, 张华,男,23)DINSERT INTO STU VALUES (1031,NULL, 男,23)5. 下列哪种操作不会激活触发器。( A)A. SELECT B. UPDATE CINSERT D DELETE 6. 在SQL语言中授权的操作是通过(C)语句实现的。ADELETE BUPDATE CGRANT DREVOKE二、简述题1. 什么是数据库的安全性?数据库系统中常用的安全控制方法和技术有哪些?2. 什么是数据库的完整性?关系数据库的完整性包括哪几类?3. 什么是触发器?触发器由哪些事件激活?答案:1

36、. 数据库的安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。数据库系统中常用的安全控制方法有技术包括用户标识和鉴别、存取控制、定义视图、审计、数据加密等。2. 数据完整性是指数据库中的数据在逻辑上的一致性和准确性。关系数据库的完整性包括实体完整性、参照完整性和用户定义完整性三类。3. 触发器(Trigger)是用户定义在关系表上的一类由事件驱动的特殊存储过程。触发器由对表的插入、修改和删除事件激活。三、完整性约束定义1. 设有关系S、SC、C如下:S(sno, sname, age, sex, sdept)C(cno, cname, teacher)SC(sno, cn

37、o, score)用SQL完成下列功能: (1)创建学生表S和课程表C(要求标明主码)(2)创建选修课程情况表SC。(要求标明主码、外码及成绩的范围). 创建关系S、SC、CCREATE TABLE S ( Sno CHAR(8) PRIMARY KEY, /*主码约束*/ Sname CHAR(20) UNIQUE, /*唯一约束*/ Ssex CHAR(2) NOT NULL, /*非空约束*/ Sage SMALLINT, Sdept CHAR(20) ); CREATE TABLE C( Cno CHAR(4) PRIMARY KEY, /*主码约束*/ Cname CHAR(40)

38、NOT NULL, Teacher CHAR(8) , ); CREATE TABLE SC( Sno CHAR(8) REFERENCES S(Sno), /*外码约束*/ Cno CHAR(4), Score SMALLINT CHECK(Score<=100), /*检查约束*/ PRIMARY KEY (Sno,Cno), /*主码约束*/ FOREIGN KEY (Cno) REFERENCES C(Cno) /*外码约束*/ ); 2. 假设有下面两个关系模式:职工(职工号,姓名,年龄,进校时间,工资,部门号),其中职工号为主码部门(部门号,部门名称,经理名,电话),其中部门

39、号为主码用SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:(1)定义每个模式的主码(2)定义参照完整性(3)定义职工年龄不得超过60岁 ); 2. 创建关系部门、职工CREATE TABLE 部门( 部门号 char(4) PRIMARY KEY, /*主码*/ 部门名称 char(20),经理名 char(8),电话 char(11)CREATE TABLE 职工( 职工号 char(8) PRIMARY KEY,姓名 char(8),年龄 smallint CHECK(年龄<=60),进校时间 date,工资 numeric(10,2),部门号 char(4)

40、 REFERENCES 部门(部门号)第6章一、选择题1. 关系数据库规范化是为了解决关系数据库中( B)的问题而引入的。A提高查询速度B插入、删除、更新异常和数据冗余C保证数据的安全性和完整性D恢复数据库2. 关系模式中每个分量都是不可分的数据项,则关系模式属于( A)A. 1NF B. 2NF C. 3N D. BCNF3. 若R2NF,则R的每个(B )A非主属性部分依赖于码 B非主属性完全依赖于码C主属性部分依赖于码 D主属性完全依赖于码4. 消除了非主属性对码传递函数依赖的2NF的关系模式,必定属于( C)A1NF B2NF C. 3NF D. BCNF5. 关系模式中,满足2NF的

41、模式( B )A可能是1NF B必定是1NF C必定是3NF D必定是BCNF二、关系模式规范化1. 设有关系模式: 选修(姓名,专业,课程,任课教师,成绩)假设:每个学生在一个专业学习;每门课程有一个任课教师;每个学生选修的每门课程只有一个成绩;姓名、课程无重名。(1)请写出选修关系中存在的基本函数依赖集。(2)找出关系模式的候选码,指出哪些是主属性?那些是非主属性。(3)分析关系模式最高属于第几范式?为什么?(4)如果选修关系不属于3NF,请将其分解为第3NF模式集。关系模式: 选修(姓名,专业,课程,任课教师,成绩)(1)基本函数依赖包括:姓名专业 课程任课教师 (姓名,课程)专业 部分

42、 (姓名,课程)任课教师 部分 (姓名,课程)成绩 完全(2)关系模式的码为:(姓名,课程) 主属性包括“姓名”和“课程”。 非主属性包括“专业”,“任课教师”和“成绩”。(3)关系模式达到1NF,但未达到2NF。因为在关系模式中存在非主属性“专业”和“任课教师”部分依赖于码的现象。(4)关系模式可分解为 :学生(姓名,专业)课程(课程,任课教师)成绩(姓名,课程,成绩)2. 现有一个描述学生、课程以及选课信息的关系模式:SelectCourse(学号,姓名,年龄,课程名称,成绩,学分)。其中:每个学生可选多门课程,每门课程只选一次;每个学生选修的每门课程有一个成绩; 每门课程都规定

43、一定的学分。(1)请写出SelectCourse关系中存在的基本函数依赖集。(2)找出关系模式的候选码。(3)分析关系模式最高属于第几范式?为什么?(4)请将SelectCourse关系模式分解为第3NF模式集。. 关系模式: SelectCourse(学号,姓名,年龄,课程名称,成绩,学分)(1)基本函数依赖包括:学号姓名学号年龄课程名称学分(学号,课程名称)成绩(学号,课程名称)姓名(学号,课程名称)学分(学号,课程名称)年龄(2)关系模式的码为:(姓名,课程名称)(3)关系模式达到1NF,但未达到2NF。因为在关系模式中存在 “姓名”和“学分”等非主属性部分依赖于码的现象。(4)关系模式

44、可分解为 :学生(学号,姓名,年龄)课程(课程名称,学分)选课(姓名,课程名称,成绩)3. 假设某商业集团数据库中有一关系模式R如下:R(商店编号,商品编号,数量,部门编号,负责人)。如果规定:(1)每个商店的每种商品只在一个部门销售。(2)每个商店的每个部门只有一个负责人。(3)每个商店的每种商品只有一个库存量。请回答下列问题:(1)写出R关系中存在的基本函数依赖集。(2)找出关系模式的候选码。(3)分析关系模式最高属于第几范式?为什么?(4)如果R不属于3NF,请将R分解为第3NF模式集。关系模式: R(商店编号,商品编号,数量,部门编号,负责人)(1)基本函数依赖包括:(商店编号,商品编号)部门编号(商店编号,部门编号)负责人(商店编号,商品编号)数量(2)关系模式的码

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论