第9章数据库设计

上传人:博****1 文档编号:587915344 上传时间:2024-09-06 格式:PPT 页数:48 大小:2.16MB
返回 下载 相关 举报
第9章数据库设计_第1页
第1页 / 共48页
第9章数据库设计_第2页
第2页 / 共48页
第9章数据库设计_第3页
第3页 / 共48页
第9章数据库设计_第4页
第4页 / 共48页
第9章数据库设计_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《第9章数据库设计》由会员分享,可在线阅读,更多相关《第9章数据库设计(48页珍藏版)》请在金锄头文库上搜索。

1、第第9 9章章 数据库设计数据库设计9.1 概念模型概念模型06 九月 2024华北科技学院 白宏斌2w用途:描述数据、数据之间联系用途:描述数据、数据之间联系概念模型数据模型转换按用户观点对信息和数据建模工具:工具:E-R图图按计算机系统观点对数据建模层次模型网状模型关系模型关系模型06 九月 2024华北科技学院 白宏斌3概念模型概念模型w概念模型通过对客观事物及其联系的抽象,概念模型通过对客观事物及其联系的抽象,方便、直接的表达各种语义,以实现数据方便、直接的表达各种语义,以实现数据库设计人员与用户的交流。库设计人员与用户的交流。w概念模型中涉及到实体、属性、关键字、概念模型中涉及到实体

2、、属性、关键字、域、实体集、联系等域、实体集、联系等06 九月 2024华北科技学院 白宏斌4客观存在并可以相互区分的客观事物或事件称为实体。王力宏歌友会、2014世界杯足球赛1号仓库、张三06 九月 2024华北科技学院 白宏斌5身高、年龄、性别、体重、比赛时间、地点、参赛队实体所具有的某一方面的特性称为属性。06 九月 2024华北科技学院 白宏斌6实体的某一属性或属性组合,其取用的值能唯一标示出某一实体。身份证号学号+课程编号06 九月 2024华北科技学院 白宏斌7属性的取值范围。性别:男,女06 九月 2024华北科技学院 白宏斌8具有相同特征的一类实体的集合称之为实体集。学生实体集

3、订单实体集06 九月 2024华北科技学院 白宏斌9w事物之间的关系事物之间的关系n实体集内部的联系,表现在属性之间或者实体实体集内部的联系,表现在属性之间或者实体之间。之间。n实体集间的联系。最基本的是两个实体间的联实体集间的联系。最基本的是两个实体间的联系。系。06 九月 2024华北科技学院 白宏斌10两个实体集间两个实体集间联系的类型联系的类型w1:1 实体集实体集A中每个实体至多只与实体集中每个实体至多只与实体集B中中一个实体相联系。反之亦然。一个实体相联系。反之亦然。w1:n 实体集实体集A中每个实体与实体集中每个实体与实体集B中多个中多个实体相联系,而实体相联系,而B中每个实体至

4、多只与中每个实体至多只与A中中一个实体相联系。一个实体相联系。wm:n 实体集实体集A中每个实体与实体集中每个实体与实体集B中多个中多个实体相联系,反之,实体相联系,反之,B中每个实体也与中每个实体也与A中中多个实体相联系。多个实体相联系。06 九月 2024华北科技学院 白宏斌11 实体:矩形框,框内为实体名称。实体:矩形框,框内为实体名称。 属性:椭圆,以线与实体连接。属性较多时属性:椭圆,以线与实体连接。属性较多时也可以将实体及其属性单独列表。也可以将实体及其属性单独列表。 实体间的联系:菱形框,框内为联系的名称。实体间的联系:菱形框,框内为联系的名称。用线将菱形框与实体相连,线上标注联

5、系类用线将菱形框与实体相连,线上标注联系类型。型。 E-RE-R图:表示概念模型图:表示概念模型06 九月 2024华北科技学院 白宏斌12零件mn工人加工工号姓名性别零件号零件名型号06 九月 2024华北科技学院 白宏斌13例:用例:用E-RE-R图表示实体及其联系。图表示实体及其联系。学生学生:学号、姓名、性别、入学分学号、姓名、性别、入学分班级班级:班级号、所属院班级号、所属院课程课程:课程号、课程名、学分课程号、课程名、学分教师教师:教工号、姓名、职称教工号、姓名、职称06 九月 2024华北科技学院 白宏斌14E-RE-R图图教师1n课程讲授讲授选修选修n1学生班级组成组成mn实体

6、间实体间联系的联系的表示表示学号姓名性别入学分所属院班级号教师教师职称教工号 姓名学分课程号 课程名1n课程讲授讲授n1班级组成组成mn学生选修选修06 九月 2024华北科技学院 白宏斌159.2数据模型与规范化数据模型与规范化概念模型数据模型转换按用户观点对信息和数据建模工具:工具:E-R图图按计算机系统观点对数据建模层次模型网状模型关系模型关系模型06 九月 2024华北科技学院 白宏斌16关系模型基本术语关系模型基本术语v关系关系:一个关系就是一张二维表,每个关系都有一个关系名。v元组元组:表中的一行即为一个元组,对应存储文件中的一个记录值。v属性:表中的列称为属性,每一列有一个属性名

7、。v域: 属性的取值范围。即不同元组对同一个属性的值所限定的范围。v关系模式关系模式:对关系的描述。如Student(ID,Sno,Sname,Class)06 九月 2024华北科技学院 白宏斌17StudentIDSnoSnameClass11056659S001张三50113190878S002李四50106 九月 2024华北科技学院 白宏斌18关系模型基本术语(续)关系模型基本术语(续)v候选关键字候选关键字:属性或属性的组合,其值能惟一地标识一个元组。v主属性主属性:包含在任何候选关键字中的属性称为主属性,否则为非主属性。v主关键字主关键字:一个关系中可能有多个候选关键字,从中选择

8、一个作为主关键字。v外关键字外关键字:如果一个关系中的属性或属性组不是该关系的关键字,但是另一个关系的关键字,称其为该关系的外关键字。如SC(Sno,Cno,Score)中的Sno属性。06九月九月2024华北科技学院华北科技学院白宏斌白宏斌19关系的性质关系的性质v每列都是同类型的数据,来自同一个域;每列都是同类型的数据,来自同一个域;v不同的列给予不同的属性名;不同的列给予不同的属性名;v任意两个元组不能完全相同。任意两个元组不能完全相同。v行、列的次序可以任意交换。行、列的次序可以任意交换。v关系的每个属性都必须是不可分的数据项,关系的每个属性都必须是不可分的数据项,不能表中有表;不能表

9、中有表;06 九月 2024华北科技学院 白宏斌20是否存在问题?v数据冗余v不一致性v插入异常v删除异常学号学号课程课程学分学分B001数据库数据库3B002数据库数据库3B001管理信息系统管理信息系统3B003管理信息系统管理信息系统2课程号课程号课程名课程名授课学时授课学时B001数据库数据库56B002管理信息系统管理信息系统48知道了“课程名”的值,即可知道“授课学时”的值。称“授课学时”函数依赖函数依赖于“课程名”,或“课程名”可以决定“授课学时”,记作课程名授课学时。函数依赖函数依赖设设R(U)是是一一个个属属性性集集U上上的的关关系系,X和和Y是是U的的子子集集。如如果果属属

10、性性集集合合X中中每每个个属属性性的的值值构构成成的的集集合合唯唯一一地地决决定定了了属属性性集集合合Y中中每每个个属属性性的的值值构构成成的的集集合合,则则属属性性集集合合Y函函数数依依赖赖于于属属性集合性集合X,计为:,计为:XY。学号学号课程号课程号学分学分101B0013101B0022102B0023如“学分”函数依赖于主关键字学号、课程。但决定“学分”的只是“课程”,与“学号”无关,则称“学分”部分函数依赖于学号、课程。部分函数依赖如果非主属性B函数依赖于构成某个候选关键字的一组主属性A的某一个真子集,则称B部分函数依赖于A。学号学号楼号楼号住宿费住宿费10123001023500

11、1033500学生住宿的楼号依赖于学号,学生应交的住宿费是由楼号决定的,即“收费”依赖于“楼号”,“楼号”依赖于“学号”,则“收费”传递函数依赖于“学号”。传递函数依赖在R(U)中,如存在X,Y,Z包含于U,且满足:XY,YZ,则称Z传递函数依赖于X。06 九月 2024华北科技学院 白宏斌24v范式范式定义:在关系规范化过程中,必须遵循一定的准则以指导,一般把这些准定义:在关系规范化过程中,必须遵循一定的准则以指导,一般把这些准则称之为范式。则称之为范式。06 九月 2024华北科技学院 白宏斌25范式范式v第一范式:任何符合关系定义的表即满足第一范式。第一范式:任何符合关系定义的表即满足第

12、一范式。IDIDNameNameSexSexAgeAgeMaleMaleFemaleFemale101张三Y20102李四Y2106 九月 2024华北科技学院 白宏斌26v第二范式第二范式定义:如果一个关系不存在部分依赖关系,那么定义:如果一个关系不存在部分依赖关系,那么该关系就属于第二范式。该关系就属于第二范式。凡是以单个属性作为主关键字的关系自动就是凡是以单个属性作为主关键字的关系自动就是第二范式。因为主关键字只有一个,不会存在部第二范式。因为主关键字只有一个,不会存在部分依赖的情况。因此,第二范式只是针对主关键分依赖的情况。因此,第二范式只是针对主关键字是组合属性的关系。字是组合属性的

13、关系。06 九月 2024华北科技学院 白宏斌27学号学号课程课程学分学分B001数据库数据库3B002数据库数据库3B001管理信息系统管理信息系统3B003管理信息系统管理信息系统2学号学号课程课程B001数据库数据库B002数据库数据库B001管理信息系统管理信息系统B003管理信息系统管理信息系统课程课程学分学分数据库数据库3管理信息系统管理信息系统206 九月 2024华北科技学院 白宏斌28第三范式第三范式v定义:一个关系如果是第二范式的,并且没有传定义:一个关系如果是第二范式的,并且没有传递依赖关系,则该关系就是第三范式。递依赖关系,则该关系就是第三范式。v每个非主属性不部分依赖

14、于关键字,也不传递依每个非主属性不部分依赖于关键字,也不传递依赖于关键字的关系就是第三范式。赖于关键字的关系就是第三范式。06 九月 2024华北科技学院 白宏斌29学号楼号楼号收费1002250012044600130288001508180206 九月 2024华北科技学院 白宏斌30关关系系规规范范化化的的目目的的:解解决决关关系系模模式式中中存存在在的的插插入入、删删除除异常,以及数据冗余问题,异常,以及数据冗余问题,基基本本思思想想:围围绕绕函函数数依依赖赖的的主主线线,对对一一个个关关系系模模式式进进行行分解,使关系从较低级范式变换到较高级范式。分解,使关系从较低级范式变换到较高级

15、范式。 消除部分函数依赖消除部分函数依赖1NF2NF 3NF BCNF 。消除传递函数依赖消除传递函数依赖。关系规范化过程关系规范化过程06 九月 2024华北科技学院 白宏斌31例:例:T(Student(SNO, SName, DeptID,DeptName), CNO, Score) 消除复合关系,规范到消除复合关系,规范到1NF1NF:关系规范化实例关系规范化实例T(SNO, SName, DeptID, DeptName, CNO, Score)SNO, CNO作为主键,作为主键,Sname依赖于依赖于SNO,则此关系,则此关系中存在部分函数依赖,中存在部分函数依赖,T 1NF06

16、九月 2024华北科技学院 白宏斌32T1(SNO, CNO, Score)T2(SNO, SName, DeptID,DeptName)T1关系无部分函数依赖和传递函数依赖,关系无部分函数依赖和传递函数依赖,T1 3NFT2关系关系SNO-DeptID,DeptID-DeptName,因此因此T2 2NF06 九月 2024华北科技学院 白宏斌33T1(SNO, CNO, Score)T2(SNO, SName, DeptID)T3(DeptID,DeptName)T1,T2,T3关系无部分函数依赖和传递函数依赖,因关系无部分函数依赖和传递函数依赖,因此此T1 3NF,T2 3NF,T3 3

17、NF概念模型转换为关系模型v实体转换实体转换实体的属性转化为关系的属性,实体的关键字转化为关系的关键字。实体的属性转化为关系的属性,实体的关键字转化为关系的关键字。v联系转换联系转换1:1vStudentIDvS(SNO,SName,ID_NO,ID_Address)1:nvStudentS_ProvincevS(SNO,SName,Pro_ID)Pro(Pro_ID,Pro_Name)m:nvStudentCoursevS(SNO,SName)C(CNO,CName)SC(SNO,CNO)9.3数据库设计案例分析数据库设计案例分析06 九月 2024华北科技学院 白宏斌35案例一案例一v某销

18、售公司信息系统某销售公司信息系统包含员工、产品、供应商、客户、订单等包含员工、产品、供应商、客户、订单等每个产品属于某一类别,一个类别的产品具有统一的外每个产品属于某一类别,一个类别的产品具有统一的外观,一个产品可以由不同的供应商提供观,一个产品可以由不同的供应商提供客户分为不同的类别,一个客户可以属于不同类别客户分为不同的类别,一个客户可以属于不同类别员工负责不同地区的业务,每位员工有一个上级领导员工负责不同地区的业务,每位员工有一个上级领导一个订单中有多个产品信息一个订单中有多个产品信息依据以上描述设计数据库结构。依据以上描述设计数据库结构。06 九月 2024华北科技学院 白宏斌36案例

19、案例二二v某图书出版信息系统中某图书出版信息系统中有员工、职位、书店、出版社等基本信息有员工、职位、书店、出版社等基本信息一个员工只能做一个职位的工作一个员工只能做一个职位的工作每本书有一个书名,一本书可以由多个作者,一个作者每本书有一个书名,一本书可以由多个作者,一个作者可以写多本书可以写多本书每本书在一个时间段内可以有一定幅度的打折每本书在一个时间段内可以有一定幅度的打折每本书在每个销售量区间内会提供作者一定比例的版税,每本书在每个销售量区间内会提供作者一定比例的版税,一本书有多个作者时,按照事先约定比例划分一本书有多个作者时,按照事先约定比例划分依据以上描述设计数据库结构。依据以上描述设

20、计数据库结构。06 九月 2024华北科技学院 白宏斌37案例案例三三v某库存管理信息系统中某库存管理信息系统中一个企业内部有若干个库房,每个库房有若干个柜位,一个企业内部有若干个库房,每个库房有若干个柜位,一个柜位在一个库房内有唯一编号。一个柜位在一个库房内有唯一编号。库存商品存放柜位上,存在一个柜位放多个商品的情况。库存商品存放柜位上,存在一个柜位放多个商品的情况。每个库房都由一个库房管理员来管理。每个库房都由一个库房管理员来管理。每次库存商品出入库都要填写一张库存出入库单据。每次库存商品出入库都要填写一张库存出入库单据。依据以上描述设计数据库结构。依据以上描述设计数据库结构。06 九月

21、2024华北科技学院 白宏斌389.4数据库设计步骤数据库设计步骤06 九月 2024华北科技学院 白宏斌391 1系统需求分析系统需求分析2 2数据库概念设计数据库概念设计3 3数据库逻辑设计数据库逻辑设计4 4创建数据库对象创建数据库对象步骤一:系统需求分析步骤一:系统需求分析v对整个应用情况作全面的、详细的调查,确对整个应用情况作全面的、详细的调查,确定设计目标,收集基础数据以及具体存储要定设计目标,收集基础数据以及具体存储要求,从而确定用户的需求求,从而确定用户的需求,包括:包括:处理需求处理需求,即要即要实现实现什么功能什么功能信息需求信息需求,即要存储哪些数据即要存储哪些数据06

22、九月 2024华北科技学院 白宏斌40步骤二:数据库概念设计步骤二:数据库概念设计v在需求分析的基础上,利用在需求分析的基础上,利用E-R图等图等双方都能理解双方都能理解的形式,设计出数据库的概念模型。的形式,设计出数据库的概念模型。06 九月 2024华北科技学院 白宏斌41集集成成消除冗余消除冗余局部局部E-R图图基本基本E-R图图初步初步E-R图图步骤二:数据库概念设计步骤二:数据库概念设计局部E-R图初步E-R图集集成成局部局部E-R图图初步初步E-R图图步骤二:数据库概念设计步骤二:数据库概念设计初步E-R图步骤二:数据库概念设计步骤二:数据库概念设计基本E-R图消除冗余消除冗余基本

23、基本E-R图图初步初步E-R图图步骤二:数据库概念设计步骤二:数据库概念设计步骤二:数据库概念设计步骤二:数据库概念设计基本E-R图步骤三:数据库的逻辑设计步骤三:数据库的逻辑设计v将逻辑模型将逻辑模型转换成具体转换成具体DBMS所支持的数据所支持的数据模型相符合的逻辑结构。模型相符合的逻辑结构。E-R模型转化为关系模型模型转化为关系模型关系模型的规范化关系模型的规范化06 九月 2024华北科技学院 白宏斌47步骤四:创建数据库对象步骤四:创建数据库对象v在特定数据库环境下创建数据库,建立表、在特定数据库环境下创建数据库,建立表、主键、外键、索引、视图、存储过程、触发主键、外键、索引、视图、存储过程、触发器等数据库对象。器等数据库对象。06 九月 2024华北科技学院 白宏斌48

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

最新文档


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

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