非常全面的概念数据模型概述-PD下画E-R图

⾮常全⾯的概念数据模型概述-PD下画E-R图
版权声明吧:呵呵,这个是从我的⽹友QQ空间⾥复制过来的,感觉有⽤就保存喽。。拿出来跟⼤家分享。。。
以下是⽤PowerDesigner介绍的:
⼀、概念数据模型概述
数据模型是现实世界中数据特征的抽象。数据模型应该满⾜三个⽅⾯的要求:
1)能够⽐较真实地模拟现实世界
2)容易为⼈所理解
3)便于计算机实现
概念数据模型也称信息模型,它以实体联系(Entity-RelationShip,简称E-R)理论为基础,并对这⼀理论进⾏了扩充。它从⽤户的观点出发对信息进⾏建模,主要⽤于数据库的概念级设计。
通常⼈们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。换句话说,就是先将现实世
界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个DBMS所⽀持的数据模型,这样的模型就是物理数据模型,即PDM。
CDM是⼀组严格定义的模型元素的集合,这些模型元素精确地描述了系统的静态特性、动态特性以及完整性约束条件等,其中包括了数据结构、数据操作和完整性约束三部分。
1)数据结构表达为实体和属性;
2)数据操作表达为实体中的记录的插⼊、删除、修改、查询等操作;
3)完整性约束表达为数据的⾃⾝完整性约束(如数据类型、检查、规则等)和数据间的参照完整性约束(如联系、继承联系等);
⼆、实体、属性及标识符的定义
实体(Entity),也称为实例,对应现实世界中可区别于其他对象的“事件”或“事物”。例如,学校中的每个学⽣,医院中的每个⼿术。每个实体都有⽤来描述实体特征的⼀组性质,称之为属性,⼀个实体由若⼲个属性来描述。如学⽣实体可由学号、姓名、性别、出⽣年⽉、所在系别、⼊学年份等属性组成。
实体集(Entity Set)是具体相同类型及相同性质实体的集合。例如学校所有学⽣的集合可定义为“学⽣”实体集,“学⽣”实体集中的每个实体均具有学号、姓名、性别、出⽣年⽉、所在系别、⼊学年份等性质。
实体类型(Entity Type)是实体集中每个实体所具有的共同性质的集合,例如“患者”实体类型为:患者{门诊号,姓名,性别,年龄,⾝份证号.............}。实体是实体类型的⼀个实例,在含义明确的情况下,实体、实体类型通常互换使⽤。
实体类型中的每个实体包含唯⼀标识它的⼀个或⼀组属性,这些属性称为实体类型的标识符(Identifier),如“学号”是学⽣实体类型的标识符,“姓名”、“出⽣⽇期”、“信址”共同组成“公民”实体类型的标识符。
有些实体类型可以有⼏组属性充当标识符,选定其中⼀组属性作为实体类型的主标识符,其他的作为次标识符。
三、实体、属性及标识符的表达广州木偶艺术中心
介绍PowerDesigner概念数据模型以及实体、属性创建。
⼀、新建概念数据模型
1)选择File-->New,弹出如图所⽰对话框,选择CDM模型(即概念数据模型)建⽴模型。
2)完成概念数据模型的创建。以下图⽰,对当前的⼯作空间进⾏简单介绍。(以后再更详细说明)
3)选择新增的CDM模型,右击,在弹出的菜单中选择“Properties”属性项,弹出如图所⽰对话框。在“General”标签⾥可以输⼊所建模型的名称、代码、描述、创建者、版本以及默认的图表等等信息。在“Notes”标签⾥可以输⼊相关描述及说明信息。当然再有更多的标签,可以点击 "More>>"按钮,这⾥就不再进⾏详细解释。
⼆、创建新实体
1)在CDM的图形窗⼝中,单击⼯具选项版上的Entity⼯具,再单击图形窗⼝的空⽩处,在单击的位置就出现⼀个实体符号。点击Pointer ⼯具或右击⿏标,释放Entitiy⼯具。如图所⽰
2)双击刚创建的实体符号,打开下列图标窗⼝,在此窗⼝“General”标签中可以输⼊实体的名称、代码、描述等信息。
三、添加实体属性
1)在上述窗⼝的“Attribute”选项标签上可以添加属性,如下图所⽰。
注意:
数据项中的“添加属性”和“重⽤已有数据项”这两项功能与模型中Data Item的Unique code 和Allow reuse选项有关。
P列表⽰该属性是否为主标识符;D列表⽰该属性是否在图形窗⼝中显⽰;M列表⽰该属性是否为强制的,即该列是否为空值。
如果⼀个实体属性为强制的,那么, 这个属性在每条记录中都必须被赋值,不能为空。2)在上图所⽰窗⼝中,点击插⼊属性按钮,弹出属性对话框,如下图所⽰。
注意:这⾥涉及到域的概念,即⼀种标准的数据结构,它可应⽤⾄数据项或实体的属性上
⼀、定义属性的标准检查约束
标准检查约束是⼀组确保属性有效的表达式。在实体属性的特性窗⼝,打开如图所⽰的检查选项卡。
在这个选项卡可以定义属性的标准检查约束,窗⼝中每项的参数的含义,如下
参数说明Minimum属性可接受的最⼩数Maximum 属性可接受的最⼤数Default属性不赋值时,系统提供的默认值Unit单位,如公⾥、吨、元Format属性的数据显⽰格式Lowercase属性的赋值全部变为⼩写字母Uppercase属性的赋值全部变为⼤写字母Cannot modify该属性⼀旦赋值不能再修改List Of Values属性赋值列表,除列表中的值,不能有其他的值Label属性列表值的标签
⼆、定义属性的附加检查
当Standard checks 或Rules 不能满⾜检查的要求时,可以在Additional Checks选项卡的Server⼦页上,通过SQL语句中使
⽤%MINMAX%、%LISTVAL%、%RULES%、%UPPER%、%LOWER%⼏个变量来定义Standard和Rule,如图所⽰
%MINMAX%、%LISTVAL%、%UPPER%、%LOWER%
在Standard Check中定义的Minimum 和Maximum、List values 、uppervalues、lowervalues
%RULES%
在Rules特性窗⼝Expression选项卡中定义的有效性规则表达式
回馈制动⼀、标识符
标识符是实体中⼀个或多个属性的集合,可⽤来唯⼀标识实体中的⼀个实例。要强调的是,CDM中的标识符等价于PDM中的主键或候选键。
每个实体都必须⾄少有⼀个标识符。如果实体只有⼀个标识符,则它为实体的主标识符。如果实体有多个标识符,则其中⼀个被指定为主标识符,其余的标识符就是次标识符了。
⼆、如果定义主、次标识符
1)选择某个实体双击弹出实体的属性对话框。在Identifiers选项卡上可以进⾏实体标识符的定义。如下图所⽰
2)选择第⼀⾏“主标识符”,点击属性按钮或双击第⼀⾏“主标识符”,弹出属性对话框,如图所⽰
3)选择"Attributes"选项卡,再点击“Add Attributes”⼯具,弹出如图所⽰窗⼝,选择某个属性作为标识符就⾏了。
⼀、数据项
数据项(Data Item)是信息存储的最⼩单位,它可以附加在实体上作为实体的属性。
注意:模型中允许存在没有附加⾄任何实体上的数据项。
⼆、新建数据项
1)使⽤“Model”---> Data Items 菜单,在打开的窗⼝中显⽰已有的数据项的列表,点击 “Add a Row”按钮,创建⼀个新数据项,如图所⽰
2)当然您可以继续设置具体数据项的Code、DataType、Length等等信息。这⾥就不再详细说明了。
奥特朗托城堡
三、数据项的唯⼀性代码选项和重⽤选项
使⽤Tools--->Model Options->Model Settings。在Data Item组框中定义数据项的唯⼀性代码选项(Unique Code)与重⽤选项(Allow Reuse)。
注意:北大投毒案
如果选择Unique Code复选框 ,每个数据项在同⼀个命名空间有唯⼀的代码,⽽选择Allow reuse ,⼀个数据项可以充当多个实体的属性。
四、在实体中添加数据项
1)双击⼀个实体符号,打开该实体的属性窗⼝。
2)单击Attributes选项卡,打开如下图所⽰窗⼝
注意:
Add a DataItem 与 Reuse a DataItem的区别在于
Add a DataItem 情况下,选择⼀个已经存在的数据项,系统会⾃动复制所选择的数据项。如果您设置
解放军理工大学气象学院了UniqueCode选项,那系统在复制过程中,新数据项的Code会⾃动⽣成⼀个唯⼀的号码,否则与所选择的数据项完全⼀致。
Reuse a DataItem情况下,只引⽤不新增,就是引⽤那些已经存在的数据项,作为新实体的数据项
膨胀螺栓
⼀、 联系
联系(Relationship)是指实体集这间或实体集内部实例之间的连接。
实体之间可以通过联系来相互关联。与实体和实体集对应,联系也可以分为联系和联系集,联系集是实体集之间的联系,联系是实体之间的联系,联系是具有⽅向性的。联系和联系集在含义明确的情况之下均可称为联系。
按照实体类型中实例之间的数量对应关系,通常可将联系分为4类,即⼀对⼀(ONE TO ONE)联系、⼀对多(ONE TO MANY)联系、多对⼀(MANY TO ONE)联系和多对多联系(MANY TO MANY)。 ⼆、 建⽴联系
在CDM⼯具选项板中除了公共的⼯具外,还包括如下图所⽰的其它对象产⽣⼯具。
在图形窗⼝中创建两个实体后,单击“实体间建⽴联系”⼯具,单击⼀个实体,在按下⿏标左键的同时
把光标拖⾄别⼀个实体上并释放⿏标左键,这样就在两个实体间创建了联系,右键单击图形窗⼝,释放Relationship⼯具。如下图所⽰
三、 四种基本的联系
即⼀对⼀(ONE TO ONE)联系、⼀对多(ONE TO MANY)联系、多对⼀(MANY TO ONE)联系和多对多联系(MANY TO MANY)。如图所⽰
四、 其他⼏类特殊联系
除了4种基本的联系之外,实体集与实体集之间还存在标定联系(Identify Relationship)、⾮标定联系(Non-Identify RelationShip)和递归联系(Recursive Relationship)。
标定联系:
每个实体类型都有⾃⼰的标识符,如果两个实体集之间发⽣联系,其中⼀个实体类型的标识符进⼊另⼀个实体类型并与该实体类型中的标识符共同组成其标识符时,这种联系则称为标定联系,也叫依赖联系。反之称为⾮标定联系,也叫⾮依赖联系。
注意:
在⾮标定联系中,⼀个实体集中的部分实例依赖于另⼀个实例集中的实例,在这种依赖联系中,每个实体必须⾄少有⼀个标识符。⽽在标定
联系中,⼀个实体集中的全部实例完全依赖于另个实体集中的实例,在这种依赖联系中⼀个实体必须⾄少有⼀个标识符,⽽另⼀个实体却可以没有⾃⼰的标识符。没有标识符的实体⽤它所依赖的实体的标识符作为⾃⼰的标识符。
换句话来理解,在标定联系中,⼀个实体(选课)依赖 ⼀个实体(学⽣),那么(学⽣)实体必须⾄少有⼀个标识符,⽽(选课)实体可以没有⾃⼰的标识符,没有标标识符的实体可以⽤实体(学⽣)的标识符作为⾃⼰的标识符。
递归联系:
递归联系是实体集内部实例之间的⼀种联系,通常形象地称为⾃反联系。同⼀实体类型中不同实体集之间的联系也称为递归联系。
例如:在“职⼯”实体集中存在很多的职⼯,这些职⼯之间必须存在⼀种领导与被领导的关系。⼜如“学⽣”实体信中的实体包含“班长”⼦实体集与“普通学⽣”⼦实体集,这两个⼦实体集之间的联系就是⼀种递归联系。创建递归联系时,只需要单击“实体间建⽴联系”⼯具从实体的⼀部分拖⾄该实体的别⼀个部分即可。如图
五、 定义联系的特性
在两个实体间建⽴了联系后,双击联系线,打开联系特性窗⼝,如图所⽰。
六、 定义联系的⾓⾊名
在联系的两个⽅向上各⾃包含有⼀个分组框,其中的参数只对这个⽅向起作⽤,Role Name为⾓⾊名,描述该⽅向联系的作⽤,⼀般⽤⼀个动词或动宾组表。
如:“学⽣ to 课⽬ ” 组框中应该填写“拥有”,⽽在“课⽬To 学⽣”组框中填写“属于”。(在此只是举例说明,可能有些⽤词不太合理)。
七、 定义联系的强制性
Mandatory 表洋这个⽅向联系的强制关系。选中这个复选框,则在联系线上产⽣⼀个联系线垂直的竖线。不选择这个复选框则表⽰联系这个⽅向上是可选的,在联系线上产⽣⼀个⼩圆圈。
⼋、 有关联系的基数
联系具有⽅向性,每个⽅向上都有⼀个基数。
举例,
“系”与“学⽣”两个实体之间的联系是⼀对多联系,换句话说“学⽣”和“系”之间的联系是多对⼀联系。⽽
且⼀个学⽣必须属于⼀个系,并且只能属于⼀个系,不能属于零个系,所以从“学⽣”实体⾄“系”实体的基数为“1,1”,从联系的另⼀⽅向考虑,⼀个系可以拥有多个学⽣,也可以没有任何学⽣,即零个学⽣,所以该⽅向联系的基数就为“0,n”,如图所⽰
CDM是⼤多数开发者使⽤PD时最先创建的模型,也是整个数据库设计最⾼层的抽象。CDM是建⽴在传统的ER图模型理论之上的,ER图中

本文发布于:2024-09-20 15:01:58,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/611765.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:实体   联系   属性   标识符
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议