《南京邮电大学数据库系统课后习题答案2ppt课件》由会员分享,可在线阅读,更多相关《南京邮电大学数据库系统课后习题答案2ppt课件(34页珍藏版)》请在金锄头文库上搜索。
1、4.24设有关系方式有关系方式R(ABCD),其上的,其上的FD集集F=AB,BC,DB。参考答案:参考答案:RR分解成分解成ACD, BDACD, BD,试求求F F在在ACDACD和和BDBD 上的投影。上的投影。 解:解:实践是求践是求F+F+在在ACDACD和和BDBD上的投影上的投影 设:R1(ACD)R1(ACD), R2(BD) R2(BD) 由推理由推理规那么:那么: F1 =AC F1 =AC,DC DC 传送性送性 F2 F2 =DB =DB 第四章第四章P144-145数据数据库系系统习题课二二第四章第四章习题R(ABCD),F=AB,BC,DB。F1=AC,DC,F2=
2、DBACD和和BD是是BCNF吗?如不是,?如不是,试分解成分解成BCNF。解:分析出解:分析出键分析函数依分析函数依赖类型或按定型或按定义判判别范式范式(a)用推理用推理规那么或求属性那么或求属性闭包法找出包法找出键Key1:ADKey2:D(b)对R1、F1:ADC部分依部分依赖1NF分解方法:算法分解方法:算法4.61AC,AD或或AD,DC对R2、F2:按定按定义4.24达达BCNF数据数据库系系统习题课二二第四章第四章习题p* *不在任何函数依不在任何函数依赖中的属性中的属性应列入列入键中中4.28设有有R(职工工编号,日期,日号,日期,日营业额,部,部门名,名,部部门经理理)。每每
3、职工每天一工每天一营业额:(职工工编号,日期号,日期)日日营业额每每职工只在一部工只在一部门任任务:职工工编号号部部门名名每部每部门名只需一位部名只需一位部门经理:部理:部门名名部部门经理理参考答案:参考答案:(1)R(1)R的根本函数依的根本函数依赖集集 F=( F=(职工工编号,日期号,日期)日日营业额, 职工工编号号部部门名,名, 部部门名名部部门经理理 Key: ( Key: (职工工编号,日期号,日期) ) (2)(2)(职工工编号,日期号,日期)部部门名名 1NF 1NF ( (职工工编号,日期号,日期)部部门经理理 消除部分依消除部分依赖 职工工编号号部部门名,部名,部门经理理
4、R1,R2=(R1,R2=(职工工编号号, ,日期日期, ,日日营业额) ), ( (职工工编号号, ,部部门名,部名,部门经理理) F1=( F1=(职工工编号,日期号,日期)日日营业额 Key1: ( Key1: (职工工编号号, ,日期日期),R1),R1无部分依无部分依赖,达,达2NF2NF F2= F2=职工工编号号部部门名,部名,部门名名部部门经理理 Key2: Key2: 职工工编号号, R2, R2无部分依无部分依赖,达,达2NF 2NF pp(3)(3)分解成分解成3NF3NF R1 R1无无传送依送依赖,达,达3NF 3NF R2 R2中:中:职工工编号号部部门经理理 是是
5、传送依送依赖关系关系将将R2R2分解分解为3NF3NF方式集方式集 R21( R21(职工工编号号, ,部部门名名) ) R22( R22(部部门名,部名,部门经理理 ) ) (职工工编号号, ,日期日期, ,日日营业额) ), ( (职工工编号号, ,部部门名名) ),( (部部门名名, ,部部门经理理)4.30设有关系方式有关系方式R(ABCD),其上的,其上的FD集集为F=ABC,CA,CD,ACD,BCF=AB,BC,CD,AB,AD,CD解解:(1)R的关的关键码AB、BC(2)中有中有R1(ACD),R2(BC)R1R2=C,R1R2=AD,由由F经合并性推理得:合并性推理得:CA
6、D,无无损(3)F1=CA,CD,F2=F1F2F分解分解不不坚持函数依持函数依赖(4)R1的的F1=CA,CDKey1:C按定按定义4.19R1达达BCNFR2的的Key2:BCR2达达BCNF数据数据库系系统习题课二二第四章第四章习题扩展:展:和和的关系方式的关系方式各到达第几范式?各到达第几范式?应该为数据数据库方式中的每个方式到达的范式方式中的每个方式到达的范式数据数据库系系统习题课二二第四章第四章习题F=AB,BC,CD,AB,AD,CD解解:(1)R的关的关键码A(2):R1(AB),R2(AD),R3(CD)按算法按算法4.3有有损数据数据库系系统习题课二二第四章第四章习题b31
7、b32a3a4 R3 :CDAiRiABCDR1 :ABa1a2b13b14R2 :ADa1b22b23 a4 a4a4a2a2b13b13(3)F1=AB,F2=AD,F3=CDF1F2F3F分解分解不不坚持函数依持函数依赖(4)R1的的Key1:A按定按定义4.19R1达达BCNFR2的的Key2:A按定按定义4.19R2达达BCNFR3的的Key3:C按定按定义4.19R3达达BCNF4.21设有关系方式有关系方式R(ABC),其上的,其上的FD集集为F=BC,CA,那么分解那么分解AB,AC相相对于于F能否是无能否是无损分解和分解和坚持持FD?阐明理由明理由解解(1)中有中有R1(AB
8、),R2(AC)R1R2=A,R1R2=B,R2R1=C在在F中推中推导不出不出AB或或AC,有有损(2)F1=BA,F2=CAF1F2F,丧失了失了BC分解分解不不坚持函数依持函数依赖数据数据库系系统习题课二二第四章第四章习题第五章参考答案第五章参考答案PP.180 5.14某商业集团有三个实体集。一个是“公司实体集,属性有公司编号、公司名、地址等。二是“仓库实体集,属性有仓库编号、仓库名、地址等。三是“职工实体集,属性有职工编号、姓名、性别等。公司与仓库间存在“隶属关系,每个公司管辖假设干个仓库,每个仓库只属于一个公司管辖;仓库与间存在“聘用联络,每个仓库可聘用多个职工,每个职工只能在一个
9、仓库任务,仓库聘用职工有聘期和工资。画出ER图,并在图上注明属性、联络的类型。转换成关系方式集,并指出每个关系方式的主键和外键。数据数据库系系统习题课二二第五章第五章习题ER图图仓库隶属公司职工聘用仓库名公司编号公司名仓库编号地址职工编号地址性别姓名工资聘期1m1n数据数据库系系统习题课二二第七章第七章习题关系方式集关系方式集公司公司编号,公司名,地址公司公司编号,公司名,地址仓库仓库编号,仓库名,地址,公司仓库仓库编号,仓库名,地址,公司编号编号职工职工编号,姓名,性别,仓库编职工职工编号,姓名,性别,仓库编号,聘期,公司号,聘期,公司数据数据库系系统习题课二二第七章第七章习题第七章参考答案
10、第七章参考答案数据数据库系系统习题课二二第七章第七章习题一、一、P2507.3数据数据库系系统习题课二二第七章第七章习题参考答案参考答案: :(1)原子性:事原子性:事务的一切操作的一切操作“要么全做,要么全不做。要么全做,要么全不做。是数据是数据库系系统本身的本身的职责;由由DBMS事事务管理子系管理子系统实现。(保保证了了事事务的的一一致致性性),保保证数数据据库的的完好性完好性(2)一致性:事务独立执行的结果应坚持一致性:事务独立执行的结果应坚持DB的一致性。的一致性。是编写事务的运用程序员的职责;是编写事务的运用程序员的职责;由由DBMS完好性子系统测试。完好性子系统测试。保证数据库的
11、完好性。保证数据库的完好性。数据数据库系系统习题课二二第七章第七章习题(3)隔离性隔离性(Isolation):-多个事务并发执行时,系统应保证与这些事务多个事务并发执行时,系统应保证与这些事务先后单独执行时的结果一样。先后单独执行时的结果一样。-由由DBMS的并发控制子系统实现。的并发控制子系统实现。-提高事务的并发度,又不让错误发生。提高事务的并发度,又不让错误发生。(4)耐久性耐久性(Durability):-一个已胜利执行的事务对数据库的影呼应该一个已胜利执行的事务对数据库的影呼应该是耐久的,缺点后可恢复。是耐久的,缺点后可恢复。-由由DBMS的恢复子系统实现。的恢复子系统实现。-保证
12、已写入磁盘的数据不丧失或可恢复。保证已写入磁盘的数据不丧失或可恢复。ACID准那么共同保证了数据库中的数据总是正确的准那么共同保证了数据库中的数据总是正确的二、二、P2507.10数据数据库系系统习题课二二第七章第七章习题参考答案参考答案: :(1)检查点机制的主要思想:检查点机制的主要思想:*运运转转过过程程中中由由DBMS每每隔隔一一定定时时间间在在日日志志中中设设置置一一个检查点个检查点*在检查点时辰,在检查点时辰,把把将将上上一一个个检检查查点点后后已已commit的的事事务务对对DB的的更更新新写入磁盘写入磁盘在日志文件中登入在日志文件中登入记录记录缺缺点点恢恢复复时时,只只需需最最
13、近近一一个个检检查查点点之之后后到到发发生生缺点时缺点时的事务需求恢复的事务需求恢复数据数据库系系统习题课二二第七章第七章习题(2)COMMIT与检查点时辰操作的协调:与检查点时辰操作的协调:在检查点时辰,写入磁盘的是上一个检查点后已在检查点时辰,写入磁盘的是上一个检查点后已commit的事务对的事务对DB的更新的更新缺点恢复时,重做的是从最近一个检查点之后到缺点恢复时,重做的是从最近一个检查点之后到发生缺点时已发生缺点时已commit的事务,这些事务被正向的事务,这些事务被正向扫描写入扫描写入重做队列,并重新实施更新操作重做队列,并重新实施更新操作三、三、P2507.20数据数据库系系统习题
14、课二二第七章第七章习题参考答案参考答案: :可串行化调度与串行化调度的区别:可串行化调度与串行化调度的区别: - -前者交叉执行各事务的操作,效果上相当于它前者交叉执行各事务的操作,效果上相当于它们的某一串们的某一串 行执行行执行; ; - -后者串行执行各事务,无并发意义,系统资源后者串行执行各事务,无并发意义,系统资源利用率低利用率低四、四、P2507.24数据数据库系系统习题课二二第七章第七章习题参考答案参考答案: :完好性规那么的组成:完好性规那么的组成: - - 何时检查,何时检查,WHENEVER WHENEVER - - 检查什么错误,检查什么错误,IFIF - - 检出错误怎样
15、办,检出错误怎样办,THENTHEN SQLSQL中的完好性约束:中的完好性约束: - - 域约束域约束 - - 基表约束基表约束 - - 检查约束检查约束 或断言或断言扩展:扩展:应了解各种约应了解各种约束的阐明方法束的阐明方法五、五、P2517.28数据数据库系系统习题课二二第七章第七章习题参考答案参考答案:在基表在基表S的定的定义中,用中,用检查子句子句CHECK(AGEBETWEEN16AND25)在基表在基表SC的定的定义中,做以下中,做以下阐明:明:,S#NOTNULL,C#NOTNULL,FOREIGNKEY(S#)REFERENCESS,FOREIGNKEY(C#)REFERE
16、NCESC,也可用断言也可用断言也可用域约束或断言也可用域约束或断言数据数据库系系统习题课二二第七章第七章习题在基表在基表SCSC的定的定义中,用参照完好性中,用参照完好性约束束 FOREIGN KEY(C#) REFERENCES C ON DELETE RESTRICT FOREIGN KEY(C#) REFERENCES C ON DELETE RESTRICT 也可用触发器也可用触发器在基表在基表SCSC的定的定义中,用参照完好性中,用参照完好性约束束 FOREIGN KEY(S#) REFERENCES S ON UPDATE CASCADE FOREIGN KEY(S#) REFE
17、RENCES S ON UPDATE CASCADE课堂堂练习:某企某企业集集团有假有假设干工厂,每个工厂消干工厂,每个工厂消费多种多种产品,且每一种品,且每一种产品品可以在多个工厂消可以在多个工厂消费,每个工厂按照固定的方案数量消,每个工厂按照固定的方案数量消费产品;每品;每个工厂聘用多名个工厂聘用多名职工,且每名工,且每名职工只能在一个工厂任工只能在一个工厂任务,工厂聘用,工厂聘用职工有聘期和工工有聘期和工资。工厂的属性有工厂。工厂的属性有工厂编号、厂名、地址,号、厂名、地址,产品的品的属性有属性有产品品编号、号、产品名、品名、规格,格,职工的属性有工的属性有职工号、姓名、技工号、姓名、技
18、术等等级。请:1.为该集集团进展概念展概念设计,画出,画出E-R图。2.将将E-R图转换成关系方式,并指出每个关系方式的主成关系方式,并指出每个关系方式的主键和外和外键及及范式范式级别。职工职工聘用聘用工厂工厂消费消费产品产品职工号职工号姓名姓名聘期聘期工资工资地址地址工厂编号工厂编号厂名厂名产品号产品号产品名产品名规格规格数量数量n1m n技术等级技术等级关系方式:关系方式:职工职工号,姓名,技术等级,工厂编号,聘期,工资外键:工厂编号职工职工号,姓名,技术等级,工厂编号,聘期,工资外键:工厂编号工厂工厂编号,厂名,地址工厂工厂编号,厂名,地址产品产品号,产品名,规格产品产品号,产品名,规格
19、消费工厂编号,产品号,数量消费工厂编号,产品号,数量两个外键分别为:工厂编号,产品号两个外键分别为:工厂编号,产品号3 3 CREATE TABLE CREATE TABLE消费消费工厂编号工厂编号 CHAR CHAR1010 ,产品号产品号 CHAR CHAR8 8 ,数量数量 INT INT,PRIMARY KEYPRIMARY KEY工厂编号,产品号,工厂编号,产品号,FOREIGN KEYFOREIGN KEY工厂编号工厂编号REFERENCESREFERENCES工厂工厂, , FOREIGN KEY FOREIGN KEY产品号产品号REFERENCESREFERENCES产品产品
20、, ,CHECK ( CHECK ( 数量数量= 300 ) = 300 ) ;补充习题:补充习题:设设有有关关系系方方式式R(SNO,CNO,GRADE,TNAME,TADDR),其其属属性性分分别别表表示示学学生生学学号号、课课程程号号、成成果果、任任课课教教师师名名、教教师师地地址址。规规定定:每每个个学学生生一一门门课课只只需需一一个个成成果果;每每门门课课只只需需一一个个教教师师任任教教;每个教师只需一个地址,一切教师不同名。每个教师只需一个地址,一切教师不同名。(1)试写出关系方式试写出关系方式R根本的函数依赖和候选键。根本的函数依赖和候选键。(2)试把试把R分解成分解成2NF方式
21、集,并阐明理由。方式集,并阐明理由。(3)试把试把R分解成分解成3NF方式集,并阐明理由。方式集,并阐明理由。R(SNO,CNO,GRADE,TNAME,TADDR)每个学生一门课只需一个成果;每个学生一门课只需一个成果;每门课只需一个教师任教;每门课只需一个教师任教;每个教师只需一个地址,一切教师不同名。每个教师只需一个地址,一切教师不同名。(1)试写出关系方式试写出关系方式R根本的函数依赖和候选键根本的函数依赖和候选键F=,SNO,CNOGRADECNOTNAMETNAMETADDRKEY=SNO,CNO(2)试把试把R分解成分解成2NF方式集,并阐明理由方式集,并阐明理由;=R1(SNO
22、,CNO,GRADE),R2(CNO,TNAME,TADDR)F1=SNO,CNOGRADE,KEY=(SNO,CNO)F2=CNOTNAME,TNAMETADDR,KEY=(CNO)中中R1、R2的一切属性都是原子的,且没有非的一切属性都是原子的,且没有非主属性主属性对对候候选键选键的部分函数依的部分函数依赖赖,到达,到达2NF;(3)试把试把R分解成分解成3NF方式集,并阐明理由方式集,并阐明理由;=R1(SNO,CNO,GRADE),R21(CNO,TNAME),R22(TNAME,TADDR)F1=SNO,CNOGRADE,KEY=(SNO,CNO)F21=CNOTNAME,KEY=(
23、CNO)中中R1、R21、R22的一切属性都是原子的,的一切属性都是原子的,且没有非主属性且没有非主属性对候候选键的部分和的部分和传送函数依送函数依赖,到达到达3NF;F22=TNAMETADDR,KEY=(TNAME)有关系方式有关系方式RABCD根据根据语义R的函数依的函数依赖集集F=AB,BC,CD。对R有分解有分解RAB,R2ACD。解解(1)R的关的关键码A(2)R最高到达第几范式,最高到达第几范式,阐明明缘由由2NF理由理由R的非主属性的非主属性为B,C,D,不存在,不存在BCD对候候选键A的部分的部分依依赖,R到达到达2NF。但存在非主属性。但存在非主属性CD对候候选键A的的传送
24、依送依赖,R不能到达不能到达3NF。(3)判判别能否无能否无损,并,并阐明明缘由由R1R2=A,R1R2=B,F=AB,BC,CD即即R1R2R1R2成立。成立。无无损(4)判判别能否能否坚持了函数依持了函数依赖,并,并阐明理由。明理由。F1=AB,F2=AC,CD,(F1F2)+=F+丧失了失了BC不不坚持函数依持函数依赖数据数据库系系统第四章第四章习题课堂练习设有关系方式设有关系方式R R职工名,工程名,工程费,职工名,工程名,工程费,部门名,部门经理,假设规定每个职工可以部门名,部门经理,假设规定每个职工可以参与多个工程,每参与一个工程,就有一份工参与多个工程,每参与一个工程,就有一份工
25、程费;每个工程只属于一个部门管理;每个部程费;每个工程只属于一个部门管理;每个部门只需一个经理。门只需一个经理。1 1试写出关系方式试写出关系方式R R的根本函数依赖的根本函数依赖FDFD和候和候选键。选键。2 2阐明阐明R R不是不是2NF 2NF 方式的理由,并把方式的理由,并把R R分解分解成成2NF2NF方式集。方式集。3 3进而把进而把R R分解成分解成3NF3NF方式集,并阐明理由方式集,并阐明理由 1试写出关系方式R的根本函数依赖FD和候选键。R R的根本的根本FDFD有有3 3个:个:职工名,工程名工名,工程名工程工程费工程名工程名部部门名名部部门名名部部门经理理关系方式关系方
26、式 R R 的候的候选键为:职工名,工程名工名,工程名2阐明R不是2NF 方式的理由,并把R分解成2NF方式集。 R R中有下面两个中有下面两个FDFD:职工名,工程名工名,工程名部部门名,部名,部门经理理工程名工程名部部门名,部名,部门经理理由于存在非主属性由于存在非主属性组部部门名,部名,部门经理理对候候选键职工名,工程名的部分函数依工名,工程名的部分函数依赖,所以所以R R不是不是2NF2NF。 R R应分解成以下两个方式:分解成以下两个方式:R1R1职工名,工程名,工程工名,工程名,工程费 R2 R2工程名,工程名,部部门名,部名,部门经理理 R1R1与与R2R2均均为2NF2NF。3进而把R分解成3NF方式集,并阐明理由。R1曾经是3NF。在R2中存在非主属性部门经理对候选键工程名的传送函数依赖,所以R不是3NF。 R2应进一步分解成以下两个方式:R21工程名,部门名 R22部门名,部门经理R21与R22均为3NF。最终,R分解成R1,R21,R22。