- 练习E-R图数据库计划简化信息系统,小组完成数据库综合实行的E-R图和表计划。
- 个人提交本次实行报告。
- 综合实行的ER图由组长提交,但不评分,宣讲前都可以修改。(高评分标准之一是E-R图尽可能接近实用。)
盘算机、Powerpoint、Visio、navicat等绘图软件,不答应用手写。
1、注意事项:
1)、先完成实体的关系模型(表),确定实体的主码(尽量单列做主码)
2)、联系的转换:
①1:1的联系
联系合并到某个1端,并在该表中增加另一个实体的码(作为外码,不作为主属性!),以及添加联系自己的属性。
② 1:n的联系
合并到n端对应的表中,将1端的码添加到n端的表(作为外码,不作为主属性!),以及添加联系自己的属性。
③m:n的联系
必须增加一个新表,新表的码至少由联系两头实体的码组合而成,同时增加相干的联系属性(如偶然间等辅助标识唯一属性,一般应作为主属性)。
3)、课本P232,1:1,1:n联系时,把转换新的关系模式打叉,以后工作时除非很特殊的场景,都不要转换为新的表。ER图的计划固然理论上是最简关系,但关系型数据库的缺点之一就是表相对较多,多表查询可能时延较大,商用时还可能根据性能低落范式合表(只要业务模型能规避低范式的增删改问题即可)。
4)注意事项:取决于业务建模
① 联系需要故意义,而不但是取值约束
② 联系可能需要新增时间等主属性
③ 两个实体之间可能存在多种联系
④ 三元联系之外,依然可能存在两两间联系
⑤ 联系可以再与实体或联系产生联系
⑥ 通过编号规则可增加信息量,减少主属性
⑦ 偶然通过完整性约束(比如触发器)可约
某医院病房信息系统中需要如下数据信息:
科室:科地址,科名(不重复),科电话
病房:床位数量,病房号
医生:姓名,职称,性别,工号
病人:姓名,病历号,性别
其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治(简化,只考虑每人一次诊断),一个病人入住病房后(一个病房可能住多名病人)的主管医生只有一个。(注:题目特意未形貌医生与病房的联系,请按题意作答。因此分组综合实行宣讲时,都必须讲E-R图的计划,天然语言形貌数据库计划轻易二义性。)
完成如下计划:
(1)计划该信息系统的E-R图;(20分)
(2)将该E-R图转换为关系模型布局,注明每个关系模式的主码(下划线)和外码(可用FK标注),是否满足BCNF。(10分)
科室( 科名, 科地址, 科电话)
病房( 病房号, 床位数量, FK科名)
医生( 工号, 姓名, 职称, 性别, FK科名)
病人( 病历号, 姓名, 性别, FK(工号, 病床号 ))
是否满足BCNF需要检查每个关系模式的函数依靠和候选码,
科室:科名 → 科地址, 科电话,满足BCNF
病房:病房号 → 床位数量, 科名,满足BCNF
医生:工号 → 姓名, 职称, 性别, 科名,满足BCNF
病人:病历号 → 姓名, 性别, 工号,满足BCNF
(3)假设病人可以看多个医生(同一个医生也可以看多次),那么是否需要新建表?请仅写出该新建的表,其他不用写。标注主码(下划线)和外码(可用FK标注)。(10分)
需要新建一个表,如:
看病记录(看病记录ID, 诊断日期, FK(病历号, 工号))
某工厂信息系统需如下数据信息,团体有多个工厂,每间工厂可生产多种产品,且每种产品可以在多间工厂生产,每间工厂需记录生产产品的该月产量;每间工厂聘任多名职工,且每名职工只能在一间工厂工作,工厂聘任职工有聘期和工资。工厂的属性有厂名、工厂编号、地址,产品的属性有产品名、产品编号、规格,职工的属性有职工号、姓名。
(1)根据上述语义画出E-R图,要求画出属性;(15分)
(2)将该E-R模型转换为关系模型,指出每个关系模式的主码(下划线)和外码(可用FK标注),以及是否满足BCNF。(15分)
工厂( 工厂编号, 厂名, 地址)
产品( 产品编号, 产品名, 规格)
职工( 职工号, 姓名, 聘期, 工资, FK 工厂编号)
生产( 工厂编号, 产品编号, 该月产量)
工厂:工厂编号 → 厂名, 地址,满足BCNF
产品:产品编号 → 产品名, 规格,满足BCNF
职工:职工号 → 姓名, 工厂编号, 聘期, 工资,满足BCNF
生产:工厂编号, 产品编号, → 该月产量,满足BCNF
某高校计划的数据库需计划如下属性列:
- 首先课程号、准考证号均为唯一,请根据下表的列名确定对应属性列;(提示:唯一即能够标识一个实体,先读完题目,然后根据下表清除后的列名找出课程号、准考证号能唯一确定的列。此外,本题特意不用学号);
- 讲堂号和考试时间(含日期时间)决定唯一的考场,每门课可以有多个考场(而一个考场在某考试时间只能考一门课);一人可以考多门课(差异学期可以考同一门课);
- 缓考情况里比如缓考/休学需记录在该学期的该次选课里,结果为空;
请根据题干作答,其他语义不再赘述(题目并未给出很详细的信息,但可以按题意给出唯一参考答案。)。
准考证号
| 姓名
| 讲堂号
| 考试时间
| 主监考工号
| 座位号
| 缓考情况
| 考试结果
| 课程号
| 课程名
| 学期
| 结果
|
|
|
|
|
|
| 缓考/休学/缺考…
|
|
| 2022-1
|
| (1)请回答以上关系是否满足3NF?是否满足2NF?(5分)
由题目可知,准考证号、课程号都是唯一的,可以作为候选键。但是准考证号->姓名,课程号->课程名,这些属性与候选键有部分依靠关系。因此,该关系不满足2NF。
由题目可知,(准考证号,课程号)->(课程名)->(考试结果),而课程号又与考场有关系,存在传递依靠。因此,该关系也不满足3NF。
(2)若不满足,请将其转化为符合3NF,表名自定,不要增删属性,注明主码(下划线)和外码(用FK标注)。(25分)提示:用E-R图头脑比列举函数依靠关系往往更直观,尤其商用需要形貌上百个属性时。
讲堂(讲堂号,考试时间,主监考号,FK课程号)
学生(准考证号,姓名,座位号,FK(讲堂号,考试时间))
课程(课程号,课程名)
评分(准考证号,课程号,缓考情况,结果,学期)
##答案不保证100%精确!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |