1)一个职工不能同时成为多个部门的领导人; 2)一个职工不能同在在多个部门就职; 3) 一个职工不能同时参加多个生产项目;
4) 一个职工不能同时在两个不同的办公室办公; 5) 一个职工不能同时拥有两部或两部以上的电话;
AREA
DBUDGET
OFF#DEPT#MGR_EMP#
PHONE#EMP#PROJ#PBUDGET#
JOBTITLE
DATE
SALARY
6)一个生产项目不能同时分配给多个部门; 7)一个办公室不能同时分配给多个部门;
8)部门号、职工号、项目号、办公室号及电话号码是全局惟一的。 (2)先按照图5。12设计一组关系模式,它们都是属于INF的。 DEPT(DEPT#,DBUDGET,MGR_EMP#) PRIMARY KEY(DEPT#)
DEPT#和MGR_EMP#都是候选码,把DEPT#作为主码。
F={DEPT#→DBUDGET,DEPT#→MGR_EMP#,MGR_EMP#→DEPT#} EMPI(EMP#,DEPT#,PROJ#,OFF#,PHONE# PRIMARY KEY (EMP#)
F={EMP#→DEPT#,EMP#→PROJ#,EMP#→OFF#,EMP#→PHONE#,PHONE#→OFF#,OFF#→DEPT#,PROJ#→DEPT#} JOB(EMP#,JOBTITLE)
PRIMARY KEY(EMP#,JOBTITLE)
F={EMP#,JOBTITLE→EMP#,EMP#,JOBTITLE→JOBTITLE} SALHIST(EMP#,JOBTITLE,DATE,SALARY) PRIMARY KEY (EMP#,DATE)
F={EMP#,DATE→JOBTITLE,EMP#,DATE→SALARY} PROJ(PROJ#,DEPT#,PBUDGET) PRIMARY KEY (PROJ#)
F={PROJ#→DEPT#,PROJ#→PBUDGET} OFFICE(OFF#,DEPT#,AREA) PRIMARY KEY (OFF#)
F={OFF#→DEPT#,OFF#→AREA} PHONE(PHONE#,OFF#) PRIMARY KEY (PHONE#)
F={PHQNE#→OFF#}
(3)现在来分析一下这7个关系模式,发现:SALHIST(EMP#,DATE,JOBTITLE,SALARY)的属性包含了JOB(EMP#,JOBTLTLE)的属性,所以JOB(EMP#,JOBTITLE)可以消去。
EMP1中OFF#和DEPT#都传递函数依赖于主码(EMP#)。OFF#通过PHONE#,DEPT#通过PROJ#或OFF#(然后通过PHONE#)传递依赖于{EMP#},所以可以把EMP1(EMP#,DEPT#,PROJ#,OFF#,PHONE#)分解成下面4个3NF的关系模式: EMP(EMP#,PROJ#,PHONE#) PRIMARY KEY (EMP#)X(PHONE#,OFF#)
PRIMARY KEY(PHONE#)Y(PROJ#,DEPT#)
PRIMARY KEY(PROJ#)Z(OFF#,DEPT#) PRIMARY KEY(OFF#)
然而,X就是PHONE,Y是PROJ的投影,Z是OFFICE的投影,所以X、Y、Z都可以消去。
最后可以得到下面6个关系模式,所有这些关系模式都是属于3NF的,进一步发现他们也是BCNF的。
DEPT(DEPT#,DBUDGET,MGR_EMP#) PRIMARY KEY(MGR_EMP#) EMP(EMP#,PROJ#,PHONE#) PRIMARY KEY(EMP#)
SALHIST(EMP#,DATE,JOBTITLE,SALARY) PRIMARY KEY (EMR#)
PROJ(PROJ#,DEPT#,PBUDGET) PRIMARY KEY(PROJ#)
OFFICE(OFF#,DEPT#,AREA) PRIMARY KEY(OFF#) PHONE(PHONE#,OFF#)
PRIMARY KEY(PHONE#)
10.答:其语义假设如下:
(1)任何两个顾客的收货地址都不相同; (2)每一个订单都有一个惟一的订单号码。
(3)每个订单的订单细则在这个订单里有一个惟一的编号。 函数依赖图如下:
ADDRESSADDRESS
QTYORD
ORD#
DISCOUNT
CREDLIM
BAL
CUST#
QTYOUTDANGER
PLANT#QTYOH
ITEM#DESCNLINE#
相应的BCNF关系模式如下:
CUST(CUST#,BAL,CREDLIM,DISCOUNT) PRIMARY KEY(CUST#) SHIPTO(ADDRESS,CUST#) PRIMARY KEY(ADDRESS)
ORDHEAD(ORD#,ADDRESS,DATE) PRIMARY KEY(ORD#)
ORDLINE(ORD#,LINE#,ITEM#,QTYORD,QTYOUT) PRIMARY KEY (ORD#,LINE#) ITEM(ITEM#,DESCN)
PRIMARY KEY(ITEM#)
IP(ITEM#,PLANT#,QTYOH,DANGER) PRIMARY KEY (ITEM#,PLANT#)
一、单项选择题(本大题共10小题,共30分)1.数据库中,数据的物理独立性是指( )。
A.数据库与数据库管理系统的相互独立
B.用户程序与DBMS的相互独立
C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的
D.应用程序与数据库中的数据的逻辑结构相互独立
2. 从E-R模型关系向关系转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是
A.M端实体的关键字 B.N端实体的关键字( )
C.M端实体关键字与N端实体关键字组合D.重新选取其他属性
3.保护数据库,防止未经授权的或不合法的使用造成的资料泄漏、更改破坏。这是指数据的( )
A.安全性 B.完整性C.并发控制 D.恢复
4. 关系模式中的各级模式之间的关系为( )。
A.3NF 2NF 1NF B.3NF 1NF 2NF
C.1NF 2NF 3NF D.2NF 1NF 3NF
5. 五种基本关系代数运算是 ( )
A.∪,-,×,π和σ B.∪,-,∞,π和σ
C.∪,∩,×,π和σ D.∪,∩,∞,π和σ
6. 在数据库设计中,将ER图转换成关系数据模型的过程属于 ( )
A.需求分析阶段 B.逻辑设计阶段 C.概念设计阶段 D.物理设计阶段
7. SQL中,下列涉及空值的 *** 作,不正确的是 ( )
A. AGE IS NULL B. AGE IS NOT NULL C. AGE = NULL D. NOT (AGE IS NULL)
8.关系数据库规范化是为解决关系数据库中( )问题而引入的。
A.插入、删除和数据冗余 B.提高查询速度
C.减少数据 *** 作的复杂性 D.保证数据的安全性和完整性
9.下图所示的E-R图转换成关系模型,可以转换为( )关系模式。
A.1个 B.2个 C.3个D.4个
n m
10. 如下面的数据库的表中,若职工表的主关键字是职工号,部门表的主关键字是部门号,SQL *** 作( )不能执行。
职工表部门表
A.从职工表中删除行(‘025’,‘王芳’,‘03’,720)
B.将行(‘005’,‘乔兴’,‘04’,750)插入到职工表中
C.将职工号为‘001’工资改为700
D.将职工号为‘038’部门号改为‘03’
二、填空题(本大题共5小题,每空1分,共10分)
1.对于非规范化的模式,结过使属性域变为简单域转变为1NF,将1NF经过消除非主属性对码的_______________转变为2NF,将2NF经过消除非主属性对码的_______________转变为3NF。
2.在关系A(S,SN,D)和B(D,CN,NM)中,A的主键是S,B的主键是D,则D在S中称为___________。
3.数据模型由_________________、_________________和_________________三部分组成的。
4.数据库体系结构按照_______________、_______________和_______________三层结构进行组织。
5.E-R图向关系模型转化要解决的问题是如何将实体和实体之间的联系转换成关系模式,如何确定这些关系模式的_________________。
三、计算题(本大题共5小题,每小题2分,共10分)
设有如下图所示的关系R,S和T,计算:
⑴ R1=R∪S RS T
⑵ R2=R-S
⑶ R3=R T
⑷ R4=RT
(5) R5=
四、设计题(本大题共5小题,每小题4分,共20分)
设教学数据库中有三个基本表:
学生表S(SNO,SNAME,SEX,AGE,DEPT)
课程表C(CNO,CNAME,TEACHER)
学生选课表SC(SNO,CNO,GRADE)
其中:SNO为学号,SNAME为姓名,SEX为性别,AGE为年龄,DEPT为系别,CNO为课程CNAME为课程名,TEACHER 任课老师,GRADE为成绩。
试写出下列 *** 作的SQL语句:
1检索学生姓名及其所选修课程号和成绩。
2 检索选修课程“C2”的学生中的最高成绩。
3检索所有比“王华”年龄大的学生姓名、年龄和性别。
4 检索选修四门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。
5 把Wu老师的女同学选课成绩增加5%
五、综合题(本大题共2小题,每小题15分,共30分)
1.假设某商业集团数据库中有一关系模式R如下:R (商店编号,商品编号,数量,部门编号,负责人)
如果规定:
(1) 每个商店的每种商品只在一个部门销售;
(2) 每个商店的每个部门只有一个负责人;
(3) 每个商店的每种商品只有一个库存数量。
试回答下列问题:
(1) 根据上述规定,写出关系模式R的基本函数依赖;
(2) 找出关系模式R的候选码;
(3) 试问关系模式R最高已经达到第几范式?为什么?
(4) 如果R不属于3NF,请将R分解成3NF模式集。
2.假定一个部门的数据库包括以下的信息:
职工的信息:职工号、姓名、住址和所在部门。
部门的信息:部门所有职工、经理和销售的产品。
产品的信息:产品名、制造商、价格、型号及产品内部编号。
制造商的信息:制造商名称、地址、生产的产品名和价格。
完成如下设计:
(1)设计该计算机管理系统的E-R图;
(2)写出关系模式集,并用下划线和波浪线标识出每个模式的主码和外码。
(3)在上述数据库中,写出主码和外码的总数这两个数字。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)