项目6-教学资源管理系统数据库构建任务课件

上传人:人*** 文档编号:568596326 上传时间:2024-07-25 格式:PPT 页数:19 大小:365KB
返回 下载 相关 举报
项目6-教学资源管理系统数据库构建任务课件_第1页
第1页 / 共19页
项目6-教学资源管理系统数据库构建任务课件_第2页
第2页 / 共19页
项目6-教学资源管理系统数据库构建任务课件_第3页
第3页 / 共19页
项目6-教学资源管理系统数据库构建任务课件_第4页
第4页 / 共19页
项目6-教学资源管理系统数据库构建任务课件_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《项目6-教学资源管理系统数据库构建任务课件》由会员分享,可在线阅读,更多相关《项目6-教学资源管理系统数据库构建任务课件(19页珍藏版)》请在金锄头文库上搜索。

1、数据库构建任务数据库构建任务教学资源管理系统2home back first prev next last学习目标学习目标理解数据库模型中进行规范化的目的理解数据库模型中进行规范化的目的掌握三范式的规则的定义掌握三范式的规则的定义确定实体是否符合三范式规则确定实体是否符合三范式规则必要时将数据库模型转换,使其符合三范式必要时将数据库模型转换,使其符合三范式3home back first prev next last任务背景任务背景你们项目组现在负责开发一个教学资源管理你们项目组现在负责开发一个教学资源管理系统,你负责数据库设计与构建任务。系统,你负责数据库设计与构建任务。项目经理告诉你:项目

2、经理告诉你:需求分析已经完成,你会得到有关的 ERD分析员是个新手, ERD 可能不尽合理你需要非常注意,如果 ERD 有问题,尽快提出,要求分析员进行修改修改过程可能需要多次反复4home back first prev next lastERD V0.1这是这是 ERD 中的一个实体中的一个实体你据此设计了数据表,并填写了测你据此设计了数据表,并填写了测试数据试数据如果我们要查询如果我们要查询 F 楼有多少间教室,应该怎么办?楼有多少间教室,应该怎么办?必须解析必须解析 classroom 字段的字符串,非常麻烦。你发现,这违反字段的字符串,非常麻烦。你发现,这违反了了第一范式第一范式。5

3、home back first prev next lastERD V0.2分析员改进了分析员改进了ERD,这,这是新版本是新版本你据此设计了数据表,你据此设计了数据表,并填写了测试数据并填写了测试数据6home back first prev next lastERD V0.2你注意到,如果你注意到,如果 F 楼新增了电梯,则每个教室的电梯数都楼新增了电梯,则每个教室的电梯数都需要修改。一旦遗漏,数据将出现不一致现象。需要修改。一旦遗漏,数据将出现不一致现象。这违背这违背第二范式第二范式。7home back first prev next lastERD V0.3分析员改进了分析员改进了E

4、RD,这,这是新版本是新版本你据此设计了数据表,你据此设计了数据表,并填写了测试数据并填写了测试数据8home back first prev next lastERD V0.3如果多媒体生产厂商电话发生更改,则必须更改从该厂商如果多媒体生产厂商电话发生更改,则必须更改从该厂商购买的所有多媒体计算机所在教室的信息。购买的所有多媒体计算机所在教室的信息。这违背这违背第三范式第三范式。9home back first prev next lastERD V0.4分析员改进了分析员改进了ERD,这是新,这是新版本版本你要据此设计你要据此设计了数据表,并了数据表,并填写测试数据填写测试数据10home

5、 back first prev next lastERD V0.411home back first prev next lastERD V0.412home back first prev next lastERD V0.4DROP TABLE classrooms;DROP TABLE multimediamakers;DROP TABLE school_buildings;CREATE TABLE school_buildings( id NUMBER(5) PRIMARY KEY, name VARCHAR2(20 CHAR) NOT NULL, address VARCHAR2(4

6、0 CHAR), elevator_num NUMBER(2);INSERT INTO school_buildings VALUES(1,F楼,黄河路1号,0);CREATE TABLE multimediamakers( no NUMBER(5) PRIMARY KEY, name VARCHAR2(20 CHAR) NOT NULL, address VARCHAR2(40 CHAR) NOT NULL, phone_number VARCHAR2(20 CHAR) NOT NULL);INSERT INTO multimediamakers VALUES(1,浪潮集团,济南市山大路11

7、2号,88889999);CREATE TABLE classrooms( no VARCHAR2(10 CHAR) , floor NUMBER(2) NOT NULL, room_size NUMBER(3) NOT NULL, Building_id NUMBER(5) REFERENCES SCHOOL_BUILDINGS(id), Multimedia_maker_no NUMBER(5) REFERENCES MultimediaMakers(no), CONSTRAINT pk_classrooms PRIMARY KEY (Building_id,no);INSERT INTO

8、 classrooms VALUES(1,1,150,1,1);INSERT INTO classrooms VALUES(2,1,150,1,1);INSERT INTO classrooms VALUES(3,1,150,1,1);COMMIT;13home back first prev next last总结总结理解数据库模型中进行规范化的目的理解数据库模型中进行规范化的目的掌握三范式的规则的定义掌握三范式的规则的定义确定实体是否符合三范式规则确定实体是否符合三范式规则必要时将数据库模型转换,使其符合三范式必要时将数据库模型转换,使其符合三范式14home back first pre

9、v next last规范化规范化 (Normalization)请考虑这样一种情况,您将朋友们的电话号码存储在以下请考虑这样一种情况,您将朋友们的电话号码存储在以下三个不同的地方:通讯簿、移动电话和贴在冰箱上的一页三个不同的地方:通讯簿、移动电话和贴在冰箱上的一页纸。如果一位朋友更改了电话号码,就会带来很多麻烦。纸。如果一位朋友更改了电话号码,就会带来很多麻烦。您必须分别更改通讯簿、移动电话和贴在冰箱上的那张纸您必须分别更改通讯簿、移动电话和贴在冰箱上的那张纸中的相应条目。中的相应条目。如果数据存储在数据库中的多个位置上,会发生什么情况如果数据存储在数据库中的多个位置上,会发生什么情况?如果

10、有人更改了其中一处的信息,但没有更改其它位置?如果有人更改了其中一处的信息,但没有更改其它位置中的相应信息,则会发生什么情况?如何知道哪一处的信中的相应信息,则会发生什么情况?如何知道哪一处的信息是正确的?息是正确的?规范化就是消除此类问题的一个过程。规范化就是消除此类问题的一个过程。数据库设计者的目标是数据库设计者的目标是“将信息存储在将信息存储在一个一个最佳位置中最佳位置中”。遵循规范化规则(范式)将有助于您达到此目标。遵循规范化规则(范式)将有助于您达到此目标。15home back first prev next last第一范式(第一范式( First Normal Form )第一

11、范式要求不能存在多值第一范式要求不能存在多值属性。属性。要检查要检查1NF,请验证每个属,请验证每个属性对于实体的每个实例是性对于实体的每个实例是否具有单个值。否具有单个值。学校的建筑物里会有很多教学校的建筑物里会有很多教室,所以它是重复的属性。室,所以它是重复的属性。这违反了这违反了1NF 规则。规则。如果属性有重复的值,则应如果属性有重复的值,则应另外创建一个实体,并通另外创建一个实体,并通过多对一关系将其与初始过多对一关系将其与初始实体关联起来。实体关联起来。16home back first prev next last第二范式(第二范式( Second Normal Form )组织

12、像朋友们的电话号码和地址这样的信息组织像朋友们的电话号码和地址这样的信息时,需要确保将其存储在适当的位置(如个时,需要确保将其存储在适当的位置(如个人通讯簿)中。人通讯簿)中。例如,如果将朋友的地址存储在食谱盒里,则可能直到下次查找食谱的时候才会找到它。规范化就是消除此类问题的一个过程。规范化就是消除此类问题的一个过程。17home back first prev next last第二范式(第二范式( Second Normal Form )第二范式要求任何非第二范式要求任何非UID 属性均依赖于完整的属性均依赖于完整的UID。这意味着不属于实体这意味着不属于实体UID 的所有属性都依赖于完

13、的所有属性都依赖于完整的整的UID。它特别适用于拥有由多个属性组成的。它特别适用于拥有由多个属性组成的UID 或其或其UID 为属性和关系组合的实体。为属性和关系组合的实体。然而,在此然而,在此ERD 中,电梯数量属性被放错了。它中,电梯数量属性被放错了。它仅依赖学校建筑。仅依赖学校建筑。这违反了第二范式。这违反了第二范式。18home back first prev next last第三范式第三范式 ( Third Normal Form )您可能需要在个人通讯簿中记录一位朋友的您可能需要在个人通讯簿中记录一位朋友的不同类型的信息:电话号码、地址、学校名不同类型的信息:电话号码、地址、学校

14、名称或工作地点。称或工作地点。如果有几位朋友在同一所学校学习,您如果如果有几位朋友在同一所学校学习,您如果在每个人的旁边记录学校的街道地址,则不在每个人的旁边记录学校的街道地址,则不仅数据发生重复,而且可能导致问题仅数据发生重复,而且可能导致问题例如,如果因学校搬迁而更改了其地址,则您必须对每一处进行更改。规范化就是消除此类问题的一个过程。规范化就是消除此类问题的一个过程。19home back first prev next last第三范式第三范式 ( Third Normal Form )第三范式第三范式(3NF) 的规则表明,任何非的规则表明,任何非UID 属性都不能依赖属性都不能依赖于另一个非于另一个非UID 属性。属性。第三范式将禁止传递相关性。如果实体的任何属性依赖于第三范式将禁止传递相关性。如果实体的任何属性依赖于该实体的任何其它非该实体的任何其它非UID 属性,则表示存在传递相关性。属性,则表示存在传递相关性。另一种规定第三范式的方法是:另一种规定第三范式的方法是:非UID 属性不能拥有自己的属性。厂商电话仅依赖于厂商。和教室并没有直接的关系厂商电话仅依赖于厂商。和教室并没有直接的关系

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号