西华大学数据系库统论概重点.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西华大学数据系库统论概重点

第一小结。 小结 小结 (2)关系模型有三个表(带下划线的为主键,红色的为外键) 公司(公司编号,公司名,地址) 仓库(仓库编号,仓库名,地址,公司编号) 职工(职工编号,姓名,性别,仓库编号,聘期,工资) 设关系模式R(S#,C#,GRADE,TNAME,TADDR),其属性分别表示学生学号、选修课程的编号、成绩、任课教师姓名、教师地址等意义。 如果规定,每个学生每学一门课只有一个成绩;每门课只有一个任课教师;每个教师只有一个地址(此处不允许教师同名同姓)。 (1)试写出关系模式R基本的FD和候选码。 (2)试把R分解成2NF模式集,并说明理由 (3)试把R分解成3NF模式集,并说明理由 根据“每个学生每学一门课只有一个成绩”的语义,可写出FD(S#,C#)→GRADE 根据“每门课只有一个任课教师”的语义,可写出FD C#→TNAME 根据“每个教师只有一个地址”的语义,可写出FD TNAME →TADDR 候选码是(S#,C#),因为从(S#,C#)可函数决定全部属性。 由于R中存在下列两个FD: (S#,C#)→GRADE和C#→TNAME 因此,(S#,C#)→ TNAME是一个局部FD,即TNAME部分依赖候选码(S#,C#),所以R不是2NF。此时,R中就会存在数据冗余和数据异常,如果一门课程有50个学生选修,那么在关系中就会出现50个元组,即这门课程的任课教师姓名和地址就要重复出现50次。这就是数据冗余,随之就会出现各种操作异常。 如果把R分解成R1(S#,C#,GRADE)和R2(C#,TNAME,TADDR),就能消除上面提到的局部FD和数据冗余问题,并且R1和R2都是2NF模式。因此R分解成的2NF模式集是{R1,R2}。 (3) 答案: a 、c a、丢失修改数据 b、不可重读数据 c、读脏数据 (2) 要使数据一致,就必须对数据加锁,试说明解决办法 (3)写出一个可串行调度,并给出执行结果(3分) 答:(2)的解决办法就是一个可串行调度 若T1、T2、T3三个事务允许并发执行,则有多少种可能正确的执行结果,并写出调度情况和执行结果。(3分) 答:共六种: T1T2T3 执行结果64 T1T3T2执行结果32 T2T1T3执行结果36 T2T3T1执行结果18 T3T1T2执行结果12 T3T2T1执行结果10 设有一教师工资管理系统的E-R图如图所示(回答问题时只用图中字符属性) 1.请对下列数据库设计阶段排列先后顺序 a、概念结构设计、b.需求分析、c.数据库物理结构设计、 d.数据库逻辑结构设计、e.数据库的维护、f.数据库的实施 2.对一数据设计,E-R图应该在哪个阶段设计 试使用E-R图转换为关系模型的原则,将教师工资管理系统的E-R图转换为关系模型 4.写出下列问题的SQL语句 (1).将本题中3小题的关系模型转换为数据库的基本表 (2).查询教师姓名中有“中”字符的教师姓名、工资总额的记录 (3).查询女副教授的姓名、工资总额的记录 (4).在表中增加一教师记录“012 王中一 男 教授 计算机” (5).在表中删除一教师记录“012 王中一 男 教授 计算机” (6).将所有教师的姓名,工资总额按工资总额的降序排序 1.答案: 需求分析、概念结构设计、数据库逻辑结构设计、数据库物理结构设计、数据库的实施、数据库的维护。 2.答案: E-R图应该在概念结构设计阶段设计 3.答案: 教师(编号、姓名、性别、职称、所在系) 工资(编号、工资总额、补贴、福利、奖金、教师编号、水电费、房租费) 或 Teacher( Bh 、Xm 、Xb 、Zc 、Szm ) Wages( Bh 、Gz 、Bt 、Fl 、Jj 、Jsbh 、Sd 、Fz ) 4(1)答案: create table teacher ( bh char(3) not null, xm char(10) not null, xb char(2), zc char(10), szx char(10) ) create table wages ( bh char(3) not null, jsbh char(10), gz decimal(7,2), bt decimal(5,2), fl decimal(5,2), jj decimal(7,2), sd decimal(5,2), fz decimal(5,2) ) 4(3)答案:

文档评论(0)

sb250103 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档