文档介绍:该【数据库建模 】是由【kuailonggua】上传分享,文档一共【34】页,该文档可以免费在线阅读,需要了解更多关于【数据库建模 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。 实体/联系图
Entity/Relationship图,简称E/R图,一种传统的图形化数据库建模语言。E/R模型。
E/R图的主要建模元素 :
实体集entity set:与类class相对应。描述名称。矩形表示。
属性attribute:描述实体某一个性质的值。只描述名称,不描述类型。椭圆表示。
联系relationship:两个或多个实体集之间的连接关系。通常需要描述名称。菱形表示。
实体/联系图
Movies
title
year
length
file type
Stars in
Owns
Stars
Studios
name
address
name
address
实体/联系图
为仓库管理设计一个E/R模型。仓库主要管理零件(Part)的入库、出库和采购等事项。仓库根据需要 向外面厂家(Supplier)订购零件,而许多工程项目(Project)需要仓库供应零件。
工程项目的属性:项目编号,项目名称,项目开工日期。
零件的属性:零件编号,零件名称,规格,颜色,重量。
供应厂家的属性:工厂编号,工程名称,工程地址。
E/R联系的多重性(multiplicity)
多重性是实体之间存在的定量的约束关系。
本质上区分为两种多重性:
1:关联零个或一个实体,“最多一个”
多:关联零个到多个实体,“能超过一个”
组合起来,考虑实体集A到B的联系:
1对1:A的一个实体对应B的零个或一个实体;且B的一个实体对应A的零个或一个。
1对多:A的一个实体对应B的零个到多个实体;而B的一个实体对应A的零个或一个。(多对1是1对多的逆联系)
多对多:A到B是1对多、且B到A也是1对多。
E/R联系的多重性(multiplicity)
多重性之间的关系:
1对多是多对多的一种特例;多对多包含1对多的情形。
1对1是1对多的一种特例;1对多包含1对1的情形。
假设从实体集A到B有一个联系,确定B方多重性的方法:
先确定实体集A的一个实体时,再判断所联系的实体集B中关联一个还是多个实体。
E/R模型中如何表示多重性:
有箭头所指的实体集为1;无箭头所连接的实体集为多。
多重性是最基本定量关系,有决定数据库基本结构的意义。
多元联系
一个联系涉及两个以上的实体集,该联系就是多元联系。通常是三元联系。
Movies
Stars
Studios
Contracts
Contracts是一个三元联系,表示一个制片公司和一个影星签约以参演某一部电影。
一个联系可表示为一个三元组:(studio, star, movie)
多元联系
三元联系中的多重性是如何确定:
实体集A和B先分别确定一个实体,判断联系的C的实体是一个还是多个。
思考:
图书馆中“读者”、“书籍”和“管理员”之间的联系
学校教务管理中“班级”、“教师”和“课程”之间的联系
联系中的角色(role)
角色:
在一种联系中,一个实体相对于被关联的其它实体的职责。
当两个不同实体集之间建立一种联系时,假定双方实体集的名称作为各自角色。
当一个实体集自身存在某种联系时,就需要确定联系的双方实体所扮演的不同角色。
Sequel-of
Movies
Original
Sequel
考虑公司雇员之间的管理关系(superior—inferior)应如何表示
联系中的角色(role)
两个实体集之间有多种联系
as leader
Salesman
Department
name
depid
work for
empid
idno
name
gender
phone
联系中的属性
除了实体集可定义属性之外,联系也可定义属性来扩展语义。
三元联系:Contracts可定义一个salary(片酬)和signdate(签约时间)的属性 。
二元联系:Movies和Stars之间的stars-in可定义时间等属性 。