数据库建模er图

上传人:suns****4568 文档编号:118725993 上传时间:2019-12-24 格式:PPT 页数:50 大小:2.50MB
返回 下载 相关 举报
数据库建模er图_第1页
第1页 / 共50页
数据库建模er图_第2页
第2页 / 共50页
数据库建模er图_第3页
第3页 / 共50页
数据库建模er图_第4页
第4页 / 共50页
数据库建模er图_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《数据库建模er图》由会员分享,可在线阅读,更多相关《数据库建模er图(50页珍藏版)》请在金锄头文库上搜索。

1、沃克科技 ER 设计 学习目标 v了解设计数据库的步骤 v掌握如何绘制数据库的E-R图 v理解数据库的规范化-三大范式 沃克科技 为什么需要数据库设计 当数据库比较复杂时需要数据库设计 为什么需要数据库设计 数据库设计何时开始? 设计数据库的步骤1 设计数据库的步骤2 设计数据库的步骤3 设计数据库的步骤4 绘制E-R关系图1 绘制E-R关系图2 绘制E-R关系图3 绘制E-R关系图4 如何将E-R关系转化成数据库表1 v将各实体转换为对应的表,将各属性转换为各表对 应的列 v标识每个表的主键列,需要注意的是:没有主键的 表添加ID编号列,它没有实际含义,用于做主键 或外键,例如用户表的UID

2、列,版块表中添加 SID列,发帖表和跟帖表中的TID列 v在表之间建立主外键,体现实体之间的映射关系。 如何将E-R关系转化成数据库表2 如何将E-R关系转化成数据库表3 数据规范化(Normalization) 第一范式(1st NF ) 第二范式(2st NF ) 第三范式(3st NF ) 规范化实例1 规范化实例2 应用范式规范化设计 应用第二范式规范化设计 应用第三范式规范化设计 规范化和性能关系 小结1 小结2 v为了设计良好的数据库,需要遵守一些专门的规则 ,称为数据库的设计范式 第一范式(1NF)的目标:确保每列的原子性 第二范式(2NF)的目标:确保表中的每列,都和主键 相关

3、 第三范式(3NF)的目标:确保表中的每列,都和主键 列直接相关,而不是间接相关 表的约束类型 添加约束 v添加约束的语法 ALTER TABLE table_name ADD CONSTRAINT 约束名 约束类型 具体约 束说明; v约束名的取名规则推荐采用:约束类型_约束字段 主键(Primary key)约束:如PK_stdNo 唯一(Unique key)约束:如UK_stdid 检查(Check key)约束:如CK_stuage 外键(Foreign key)约束:如FK_stuno 添加约束举例1 删除约束 综合训练1 v 现有论文和作者两个实体 论文实体的属性包括题目、期刊名

4、称、年份、期刊号; 作者实体的属性包括姓名、单位、地址; v 一篇论文可以有多个作者,且每一位作者写过多篇论文, 在每一篇论文中有作者的顺序号。请完成以下操作: (1)画出E-R图 (2)将E-R图转换成关系模式,并指出每个关系模式的 主键(加下划线)和外键(加波浪线)。 解答1 建表语句1 CREATE TABLE 发表 (姓名 CHAR(7) NOT NULL, 题目 CHAR(6) NOT NULL, 顺序号 INT DEFAULT NULL, PRIMARY KEY (姓名, 题目), FOREIGN KEY (姓名) REFERENCES 论文 ON DELETE CASCADE,

5、FOREIGN KEY (题目) REFERENCES 作者 ON DELETE RESTRICT); 综合训练2 v 某企业集团有若干工厂,每个工厂生产多种产品,且每一 种产品可以在多个工厂生产,每个工厂按照固定的计划数 量生产产品,计划数量不低于300; v 每个工厂聘用多名职工,且每名职工只能在一个工厂工作 ,工厂聘用职工有聘期和工资。 v 工厂的属性有工厂编号、厂名、地址 v 产品的属性有产品编号、产品名、规格 v 职工的属性有职工号、姓名、技术等级。请: (1)该集团进行概念设计,画出E-R图。 (2)E-R图转换成关系模式,并指出每个关系模式的主 键和外键。 解答2 CREATE

6、TABLE 生产 (工厂编号 CHAR(7) NOT NULL, 产品号 CHAR(6) NOT NULL, 数量 DEC(5,2), PRIMARY KEY (工厂编号,产品号), FOREIGN KEY (工厂编号) REFERENCES 工厂 ON DELETE CASCADE, FOREIGN KEY (产品号) REFERENCES 产品 ON DELETE RESTRICT, CHECK (数量 =300) ); 建表语句2 综合训练3 v 设某汽车运输公司数据库中有三个实体集。 一是“车队”实体集,属性有车队号、车队名等; 二是“车辆”实体集,属性有车牌照号、厂家、出厂日期 等;

7、 三是“司机”实体集,属性有司机编号、姓名、电话等。 设车队与司机之间存在“聘用”联系,每个车队可聘用若 干司机,但每个司机只能应聘于一个车队,车队聘用司 机有聘期;司机与车辆之间存在着“使用”联系,司机使 用车辆有使用日期和公里数,每个司机可以使用多辆汽 车,每辆车可被多个司机使用。 v 要求: (1)试画出ER图,并在图上注明属性、联系类型; (2)将ER图转换成关系模式,并说明主键和外键。 解答3 关系模式 v 关系模式: 1) 车队(车队号、车队名) 主键:车队号 2) 车辆(车牌照号、厂家、出厂日期) 主键:车牌照号 3) 司机(司机编号、姓名、电话,聘期,车队号) 主键:司机编号,

8、外键:车队号 4) 使用(司机编号,车牌照号,使用日期,公里数) 主键:(司机编号,车牌照号,使用日期); 外键1:司机编号,外键2:车牌照号 综合训练4 v 在校田径运动会中设置了各类比赛 v 每一比赛类别有类别编号、类别名称和主管等属性 v 每一比赛类别包含很多比赛项目 v 每一比赛项目有项目编号、项目名称、比赛时间和级别等属性 v 各个系团队有团编号、团名称、领队等属性 v 每一代表团有多名运动员组成 v 运动员有编号,姓名,年龄,性别等属性 v 每一名运动员可以参加多个比赛项目 v 每一比赛项目也有多名运动员参加 v 运动员参加比赛有成绩属性,成绩限定在07分。 1) 根据上述语义画出

9、ER图, 2) 将ER图转换成关系模式,并指出每个关系模式的主键和外键。 3) 用DDL语句定义反映运动员与比赛项目之间的“参与”关系表。 解答4 关系模式4 关系模式: 1) 比赛类别( 类别编号 ,类别名称,主管) 2) 比赛项目( 项目编号 ,项目名称、比赛时间,级别, 类别编号 ) 3) 系团队( 团编号 ,团名称,领队) 4) 运动员( 运动员编号 ,姓名,年龄,性别, 团编号 ) 5) 参加( 项目编号 ,运动员编号 ,成绩) 建表语句4 CREATE TABLE 参加 (项目编号 CHAR(7) NOT NULL , 运动员编号 CHAR(6) NOT NULL , 成绩 INT , PRIMARY KEY (项目编号, 运动员编号) , FOREIGN KEY (项目编号) REFERENCES 比赛项目(项目编号) ON DELETE RESTRICT , FOREIGN KEY (运动员编号) REFERENCES 运动员(运动员编号) ON DELETE RESTRICT , CHECK (成绩 BETWEEN 0 AND 7) ) ; 总结 v数据库的物理实现一般包括: 创建表 添加各种约束 给需要的操作表的账号授权 推荐建模工具 vPower designer vERwin

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

最新文档


当前位置:首页 > 大杂烩/其它

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