使用PowerDesigner画ER图详细教程
- 格式:docx
- 大小:856.29 KB
- 文档页数:23
画用例图用例图组成:系统边界。
参与者。
用例。
关系。
参与者:Actor不是人,而是指参与用例时担当的角色。
如果一个角色的操作是由另一个角色代理完成的,请建立该角色到另外角色之间的依赖。
怎样识别参与者呢?1. 是谁向系统提供的信息呢.2. 谁向系统获取信息。
3. 谁操作系统。
4. 系统使用哪些外部资源5. 系统是否和已经存在的系统交互系统、子系统或类与外部的参与者(actor)交互的动作序列的说明,包括各种序列及出错序列。
用例分析可以认为是对系统功能的分解。
怎样确定用例的粒度呢?用例的粒度(用例的大小)可大可小,一般一个系统易控制在20个左右。
用例是系统级的抽象的描述,不是细化的(是做什么,非怎样做)。
对复杂系统可以划分为若干个子系统处理。
怎样获取用例呢?参与者希望系统执行什么任务?参与者在系统中访问哪些信息(创建、存储、修改、删除等)?需要将外界的哪些信息提供给系统?需要将系统的那个事件告诉参与者?如何维护系统?UML中的四种关系。
关联(association)包含(include)扩展(extend)泛化(generalization)关联关系描述参与者和用例之间的关系。
用单向箭头,表示谁启动用例。
每个用例都有角色启动,除了包含和扩展用例。
包含。
是指两个用例之间的关系。
其中一个用例(基本用例,base use case)的行为包含了另一个用例(包含用例,inclusion use case)的行为。
如果两个以上用例有大量一致的功能,则可以将这个功能分解到另一个用例中,其他用力拉可以和这个用例建立包含关系。
上面的例子就是说查询、提款和转账三个用例都有一个一致的功能,所以将这个功能提取出来为一个用例。
且这三个用例和提取出的这个用例之间是包含的关系。
执行基本用例的时候也可以执行被包含的用例,被包含的用例也可以单独执行。
如果一个用例的功能太多时,可以用包含关系建模成两个或多个小用例扩展。
也是指两个用例之间的关系。
PowerDesigner的基本操作-图文第2章PowerDeigner的基本操作完美的模型源于娴熟的技巧。
因此,熟悉建模环境,掌握模型设计基本操作至关重要。
本章将从安装PowerDeigner及其相关工具软件开始,详细叙述PowerDeigner建模环境,以及模型设计基本操作方法。
2.1安装PowerDeigner及相关工具软件利用PowerDeigner进行软件分析建模,必须正确安装PowerDeigner 产品。
PowerDeigner采用模块化的结构组织其建模产品,这为购买和扩展提供了极大的灵活性,读者可根据实际需要选择。
购买不同的PowerDeigner产品,包含的模块不同,安装界面中的内容也略有不同。
2.1.1软硬件环境要求安装PowerDeigner之前,需首先确认安装的软硬件环境要求,然后根据实际需求选择安装相关软件。
1.安装PowerDeigner15的系统要求1.5GHz的处理器。
1GBRAM。
SVGA或更高分辨率的图形适配器和兼容的彩色显示器。
CD-ROW驱动器。
500MB以上磁盘空间(用于安装PowerDeigner核心模块)。
MicrooftWindow某P、MicrooftWindowServer或MicrooftWindowVita。
2.需要安装的软件MicrooftSQLServer等等,可根据需要选择安装。
MicrooftOffice产品。
除此之外,可根据实际需求选择安装不同的辅助软件。
例如:利用PowerDeigner建立物理数据模型的多维图时,应安装一种联机分析处理(OLAP)产品,可以选择SybaeASIQ、MicrooftSQLServerAnlyiServiee 等;利用PowerDeigner导入Viio图形时,除安装PowerDeigner15中附带的Viio插件外,还需安装Viio2003或2007产品做支持。
2.1.2安装步骤运行PowerDeigner15.e某e文件,打开安装向导欢迎界面口该界面显示了安装的产品及版本信息。
er图怎么画ER图全称为实体关系图,是一种图形化表示系统中的数据结构和关系的工具,常用于数据库设计和数据模型化。
ER图可以帮助人们更好地理解系统中的数据结构,发现不同实体之间的关系,并对数据进行分类和组织。
ER图基本符号和概念ER图中包含三个基本元素:实体、属性和关系。
实体即系统中的具体事物,可以是一个人、一个地方、一个物品等。
实体可以有一些属性来描述其特征,例如一个人的姓名、年龄、性别等。
关系则指不同实体之间的联系,例如人与公司之间可以有雇佣关系、人与人之间可以有亲戚关系等。
ER图基本符号如下:实体:通常用矩形表示,矩形中写上实体名称;属性:通常用椭圆形表示,椭圆中写上属性名称;关系:通常用菱形表示,菱形中写上关系名称。
ER图中的实体采用“名词”,属性采用“形容词”,关系采用“动词”。
ER图制作步骤ER图的制作步骤如下:1.明确系统的实体、属性和关系,对每个实体、属性和关系进行命名。
2.确定实体之间的关系,包括一对一、一对多、多对一和多对多关系。
3.绘制ER图的框架,包括实体、属性和关系的符号和名称。
4.分别绘制实体、属性和关系之间的联系线,以表示它们之间的关系。
5.对ER图进行审查,确保ER图的关系准确、完整。
6.完善ER图,包括对各实体的属性和关系进行详细描述,绘制ER模型图。
ER图实例下面以一个图书馆管理系统为例,演示ER图的制作步骤。
1.明确实体、属性和关系在图书馆管理系统中,我们可以确定以下实体、属性和关系:(1)实体图书、借书者、出版社、作者、管理员(2)属性图书:书名、作者、ISBN号、出版社、分类号、价格、总量、库存等借书者:姓名、性别、借书证号、电话、地址等出版社:出版社名称、地址、联系人等作者:姓名、性别、出生年月、国籍、著作等管理员:姓名、账号、密码等(3)关系图书和出版社之间的关系为一对多关系;图书和作者之间的关系为多对多关系;图书和借书者之间的关系也是多对多关系。
2.确定实体之间的关系在图书馆管理系统中,我们可以确定以下实体之间的关系:(1)图书和出版社之间的关系一本图书只能由一个出版社出版,而一个出版社可以出版多本图书,所以图书和出版社之间的关系为一对多关系。
PowerDesigner 使用方法简介一、从网上下载软件。
路径为:计算机系\软件工程与项目管理(CMM)\工具二、安装软件三、软件使用过程根据下述过程建立如图所示的E-R图。
1、点击PowerDesigner图标启动软件。
进入到初始页面,如图2所示2、点击菜单中的文件项,选择新建,出现要求选择建立何种模型的模型类型对话框。
其中Conceptual Data Model CDM,为概念(数据)模型,它建立的就是E-R图Business Process Model BPM,业务处理模型Object-Oriented Model OOM,面向对象模型Physical Data Model PDM,物理(数据)模型,它建立的就是数据库表选择CDM并单击确认按钮。
3、进入PowerDesigner的CDM操作窗口4、界面上出现一个小工具条palette,里面包括常用的数据库建模工具。
用鼠标单击工具条中的工具后,到界面中央单击或拖动即可。
为了能够完成前述图1的内容,选中图标,在界面中间单击五次,形成如图所示画面。
此时,每一个实体都是空的。
需要逐个进行定义和描述。
5、定义实体双击其中的一个实体,弹出实体属性定义对话框。
对“General”选项卡上的内容进行定义。
Name :定义实体的显示名称(图书)Code :定义实体的代码中表示名称(book),必须是英文。
Number :实体中实例(记录)的最大个数(100000000,它表示图书馆的最大藏书量可达一亿册)。
这个数字的作用是便于估计数据库服务器的磁盘容量。
6、定义属性、属性的约束和算法“Attribute”选项卡上定义属性,如图所示每一行定义一个属性,包括属性描述(名称,name)、属性代码(code)、数据类型(type)、使用域(domain)、是否可空(强制,M)、是否为主键(P)、是否显示在模型中(D)。
属性描述在概念模型中进行显示,转换成物理模型后将被忽略,转而显示属性代码。
PowerDesigner简单使⽤教程PowerDesigner是⼀个做开发设计很常⽤的⼯具软件,同时还有Rose也可以,都是当前软件开发最著名的建模设计及软件之⼀,下⾯讲解简单的应⽤。
步骤:1.现在各版本⾮常多,我本⼈使⽤16.5版本,这⾥就是欢迎页⾯。
2.⾸页要建⽴模型,只有建⽴模型以后才能建⽴表格,才能进⾏以后的操作。
选择“File”然后选择第⼀项内容“New Model”,弹出新页⾯,在页⾯中的“Model name”填写⾃⼰的名称,在下⾯的“DBMS”中选择你要⽣成的数据库类型。
建议在这⾥选好后,以后⽣成的语句会好⼀些。
3.现在模型已经建⽴好了,让我们来开始建表吧。
⾸先在右侧⼯具栏中选择建表⼯具。
其中在“Physical Diagram”中选择有表格的这个,也就是下图标记的这个,把⿏标放上去显⽰Table就可以了。
点击以后在中间的地⽅选择放置的位置。
4.在中间放置好后,双击就能修改表名称和添加字段了。
在图的左边就是刚才放置的表格,然后双击就出现后侧的对话框了。
这个时候name是给⾃⼰在软件中查询看到的名称,Code是当前的表名,建议命名的时候有⼀定的规律。
⽐如系统以sys_开头,正常表以t_开头好⼀些。
comment是导⼊数据库的表的名称注释,建议要填写。
为了以后⽅便使⽤。
5.建⽴表字段。
其中Name是给设计软件的说明,Code是字段名,comment是表字段的说明。
对于初学者⼀定要写字段的注释。
为了以后开发养成良好的规范。
6.Date Type是设置字段的类型,其中varchar(40)是字符串型,int是数字型。
在Length是字段的长度,如果是主键的话Piamary和Mandatory这两个是要选中的,⼀个标⽰是主键,另⼀个是标⽰不能为空。
7.这样基础的建表就已经完成了,在表名上选择右键,选择“SQL Preview”就能看到SQL代码了。
8.添加外键:我们可能在Powerdesigner中,直接新建物理模型或(先设计概念、逻辑模型⽽⽣成物理模型)或(连接现有数据库,逆向⽣成物理模型)。
一、概念数据模型概述数据模型是现实世界中数据特征的抽象。
数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世界2)容易为人所理解3)便于计算机实现概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。
它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。
通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。
换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个DBMS所支持的数据模型,这样的模型就是物理数据模型,即PDM。
CDM是一组严格定义的模型元素的集合,这些模型元素精确地描述了系统的静态特性、动态特性以及完整性约束条件等,其中包括了数据结构、数据操作和完整性约束三部分。
1)数据结构表达为实体和属性;2)数据操作表达为实体中的记录的插入、删除、修改、查询等操作;3)完整性约束表达为数据的自身完整性约束(如数据类型、检查、规则等)和数据间的参照完整性约束(如联系、继承联系等);二、实体、属性及标识符的定义实体(Entity),也称为实例,对应现实世界中可区别于其他对象的“事件”或“事物”。
例如,学校中的每个学生,医院中的每个手术。
每个实体都有用来描述实体特征的一组性质,称之为属性,一个实体由若干个属性来描述。
如学生实体可由学号、姓名、性别、出生年月、所在系别、入学年份等属性组成。
实体集(Entity Set)是具体相同类型及相同性质实体的集合。
例如学校所有学生的集合可定义为“学生”实体集,“学生”实体集中的每个实体均具有学号、姓名、性别、出生年月、所在系别、入学年份等性质。
实体类型(Entity Type)是实体集中每个实体所具有的共同性质的集合,例如“患者”实体类型为:患者{门诊号,姓名,性别,年龄,身份证号.............}。
利用powerdesigner反向数据库结构,生成ER图(1)首先新建一个“PhysicalDataModel”类型的文件,然后点击“Database”->"Configure Connections",弹出窗口“Configure Data Connections”, 并选择"Connection Profiles"如下图所示:(2)点击进行新建一个mysql连接,出现如下窗口:填写连接相关信息,填写完毕后如下图所示:(上图相关信息填写需注意:<1>User name:和Password:为mysql数据库的用户名和密码;<2>JDBC driver jar files:为你的mysql-connector-java-5.1.13-bin.jar所在位置,点击后面的图标选择即可。
)填写完相关信息后点击左下角的“Test Connection。
”进行测试连接是否连接成功。
若连接成功,点击“OK”时弹出如下窗口。
若连接不成功,则需要配置mysql-connector-java-5.1.13-bin.jar的环境变量,过程如下:(5)连接成功后,点击“Database”->"Update Model from Database(快捷键为:CTRL_R)",弹出窗口“Database Reverse Engineering Options”,如下图所示:点击进行连接的一些配置,如下图所示:完成配置后,弹出如下窗口:选择需要进行反向工程的数据库或数据库中的某些表,然后点击“OK”即可完成数据库的反向工程操作。
(注意:默认是所有数据库全部选中的,所以在进行选择需要进行反向工程的数据库之前,先点击使得数据库全部未选中。
)到目前为止,powerdesigner的反向工程的连接环境全部配置完成,此时只需选中需要进行反向工程的数据库或表,点击“OK”便可导出数据的PhysicalDataModel图。
使⽤PowerDesigner逆向⽣成数据库E-R图1.13 使⽤PowerDesigner逆向⽣成数据库E-R图在开发⼀个新的程序时,为提⾼开发速度,经常修改现有的与将要开发的程序相类似的旧程序。
同样,功能相似的程序,其数据库也基本相似,甚⾄完全相同,此时便可以直接使⽤原有的数据库,从⽽节省数据库设计的时间和⼯作量。
⽽要分析⼀个数据库的数据结构和连接关系,E-R图是最好的数据库资料。
但是原有的数据库也许是多年以前的,或者是借鉴同事的,资料不⼀定完整,也不⼀定存在E-R图。
这就给数据库分析带来了很⼤的不便。
如果能够使⽤相应的设计⼯具将数据库的结构和关系抽象成E-R图,就可以为系统分析员提供相应的数据库资料,从⽽分析或修改原有数据库。
本节将介绍如何使⽤PowerDesigner⼯具实现数据库E-R图的逆向⽣成。
(1)在开始逆向⽣成E-R图之前,需要为指定的数据库创建ODBC数据源。
以Windows 2003操作系统为例,选择"开始"/"运⾏"命令,在弹出的"运⾏"对话框中的"打开"⽂本框中输⼊odbcad32.exe,然后单击"确定"按钮,启动数据源管理器。
(2)在"ODBC数据源管理器"对话框中单击"添加"按钮。
(3)在弹出的"创建新数据源"对话框中选择SQL Server选项,单击"完成"按钮,如图1.33所⽰。
图1.33 "创建新数据源"对话框(4)在弹出的"创建到SQL Server的新数据源"对话框的"名称"⽂本框中输⼊新建数据源的名称,例如db_jxcOdbc。
在"描述"⽂本框中可以输⼊该数据源的描述信息,因为数据源的名称经常使⽤单词的缩写形式,随着时间的流逝很容易忘记其含义,如果搭配相应的描述信息,会使该数据源的含义更明确。
使用PowerDesigner花ER图详细教程(1)一、概念数据模型概述数据模型是现实世界中数据特征的抽象。
数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世界2)容易为人所理解3)便于计算机实现概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。
它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。
通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。
换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个 DBMS所支持的数据模型,这样的模型就是物理数据模型,即PDM。
CDM是一组严格定义的模型元素的集合,这些模型元素精确地描述了系统的静态特性、动态特性以及完整性约束条件等,其中包括了数据结构、数据操作和完整性约束三部分。
1)数据结构表达为实体和属性;2)数据操作表达为实体中的记录的插入、删除、修改、查询等操作;3)完整性约束表达为数据的自身完整性约束(如数据类型、检查、规则等)和数据间的参照完整性约束(如联系、继承联系等);二、实体、属性及标识符的定义实体(Entity),也称为实例,对应现实世界中可区别于其他对象的“事件”或“事物”。
例如,学校中的每个学生,医院中的每个手术。
每个实体都有用来描述实体特征的一组性质,称之为属性,一个实体由若干个属性来描述。
如学生实体可由学号、姓名、性别、出生年月、所在系别、入学年份等属性组成。
实体集(Entity Set)是具体相同类型及相同性质实体的集合。
例如学校所有学生的集合可定义为“学生”实体集,“学生”实体集中的每个实体均具有学号、姓名、性别、出生年月、所在系别、入学年份等性质。
实体类型(Entity Type)是实体集中每个实体所具有的共同性质的集合,例如“患者”实体类型为:患者{门诊号,姓名,性别,年龄,身份证号.............}。
一、概念数据模型概述数据模型是现实世界中数据特征的抽象。
数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世界2)容易为人所理解3)便于计算机实现概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。
它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。
通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。
换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个DBMS所支持的数据模型,这样的模型就是物理数据模型,即PDM。
CDM是一组严格定义的模型元素的集合,这些模型元素精确地描述了系统的静态特性、动态特性以及完整性约束条件等,其中包括了数据结构、数据操作和完整性约束三部分。
1)数据结构表达为实体和属性;2)数据操作表达为实体中的记录的插入、删除、修改、查询等操作;3)完整性约束表达为数据的自身完整性约束(如数据类型、检查、规则等)和数据间的参照完整性约束(如联系、继承联系等);二、实体、属性及标识符的定义实体(Entity),也称为实例,对应现实世界中可区别于其他对象的“事件”或“事物”。
例如,学校中的每个学生,医院中的每个手术。
每个实体都有用来描述实体特征的一组性质,称之为属性,一个实体由若干个属性来描述。
如学生实体可由学号、姓名、性别、出生年月、所在系别、入学年份等属性组成。
实体集(Entity Set)是具体相同类型及相同性质实体的集合。
例如学校所有学生的集合可定义为“学生”实体集,“学生”实体集中的每个实体均具有学号、姓名、性别、出生年月、所在系别、入学年份等性质。
实体类型(Entity Type)是实体集中每个实体所具有的共同性质的集合,例如“患者”实体类型为:患者{门诊号,姓名,性别,年龄,身份证号.............}。
前言在CSDN上转悠经常看到有网友寻求PowerDesigner相关资料的帖子,Baidu,Google上找找还真很少;同时也有不少网友发来Email询问相关PowerDesigner问题或索要相关资料的,故下定决心制作本文档。
折腾二十多天,终于输出了现在的文档,其中绝大部分内容都是依照PowerDesigner自带的帮助文档翻译过来,乐意啃英文的朋友最好还是看其”原汁”教程,同时本文档仅用于帮助分析设计人员更快熟悉掌握PowerDesigner的使用方法,不包含分析设计方面的理论,所以要作好系统的分析设计工作还是需要用户深厚的项目实践功底。
起初想尽量按照PowerDesigner自带帮助文档完整地进行,尝试了一上午的工作之后这种方案马上就被我否决,原因有二:1.内容太多,工作量太多。
2.原帮助文档特别周全,个人觉得可以在内容上作很大程度的压缩。
姑决定按原帮助文档写,同时加入自己目前正在做的技术论坛分析设计过程以便于理解。
对本文档内容的几点说明:1.本文档只包括PowerDesigner部分内容(RQM,Report,CDM,PDM),内容不够全面。
2.内容尽量简略,一些相同或类似操作过程尽量不再重复。
3.部分术语参考了飞思科技产品研发中心监制电子工业出版社的《PowerDesigner数据库系统分析设计与应用》。
4.暂时没有包含OOM,XML,BPM,ILM等模型内容,我将会在后期陆续更新。
版本说明:我使用的是PowerDesigner Trial 11英文版,因此文档中一些菜单,按钮名称也用英文写出(因当心自己译出的名称和中文版上的名称不一致而造成理解不便),若是给使用中文版的朋友带来不便,我在这说声”抱歉”了!同时由于各版本不同部分操作可能会有所区别。
这里要感谢在我进行翻译工作期间给我发送Email关注的网友,感谢一直支持我的朋友们!由于第一次做翻译工作,限于水平有限,文档中肯定存在很多不足和错误之处,衷心欢迎各位网友指点迷津,期望得到您的指导!Email:dingchungao@ dingchungao@QQ:330982401Blog:http:\\Slash2006.8.31需求模型PowerDesigner11.0.0.1363评估版为了更好的将原文含义再现,不加入我个人语言习惯,我尽量按照原文档内容翻译。
一、概念数据模型概述数据模型就是现实世界中数据特征得抽象。
数据模型应该满足三个方面得要求:1)能够比较真实地模拟现实世界2)容易为人所理解3)便于计算机实现概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。
它从用户得观点出发对信息进行建模,主要用于数据库得概念级设计。
通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。
换句话说,就就是先将现实世界中得客观对象抽象为实体(Entity)与联系(Relationship),它并不依赖于具体得计算机系统或某个DBMS系统,这种模型就就是我们所说得CDM;然后再将CDM转换为计算机上某个DBMS所支持得数据模型,这样得模型就就是物理数据模型,即PDM。
1)数据结构表达为实体与属性;2)数据操作表达为实体中得记录得插入、删除、修改、查询等操作;3)完整性约束表达为数据得自身完整性约束(如数据类型、检查、规则等)与数据间得参照完整性约束(如联系、继承联系等);二、实体、属性及标识符得定义实体(Entity),也称为实例,对应现实世界中可区别于其她对象得“事件”或“事物”。
例如,学校中得每个学生,医院中得每个手术。
每个实体都有用来描述实体特征得一组性质,称之为属性,一个实体由若干个属性来描述。
如学生实体可由学号、姓名、性别、出生年月、所在系别、入学年份等属性组成。
实体集(Entity Set)就是具体相同类型及相同性质实体得集合。
例如学校所有学生得集合可定义为“学生”实体集,“学生”实体集中得每个实体均具有学号、姓名、性别、出生年月、所在系别、入学年份等性质。
实体类型(Entity Type)就是实体集中每个实体所具有得共同性质得集合,例如“患者”实体类型为:患者{门诊号,姓名,性别,年龄,身份证号、、、、、、、、、、、、、}。
实体就是实体类型得一个实例,在含义明确得情况下,实体、实体类型通常互换使用。
一、概念数据模型概述数据模型是现实世界中数据特征的抽象。
数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世界2)容易为人所理解3)便于计算机实现概念数据模型也称信息模型,它以实体-联系(Enti ty-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。
它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。
通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。
换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个DBMS所支持的数据模型,这样的模型就是物理数据模型,即PDM。
CDM是一组严格定义的模型元素的集合,这些模型元素精确地描述了系统的静态特性、动态特性以及完整性约束条件等,其中包括了数据结构、数据操作和完整性约束三部分。
1)数据结构表达为实体和属性;2)数据操作表达为实体中的记录的插入、删除、修改、查询等操作;3)完整性约束表达为数据的自身完整性约束(如数据类型、检查、规则等)和数据间的参照完整性约束(如联系、继承联系等);二、实体、属性及标识符的定义实体(Entity),也称为实例,对应现实世界中可区别于其他对象的“事件”或“事物”。
例如,学校中的每个学生,医院中的每个手术。
每个实体都有用来描述实体特征的一组性质,称之为属性,一个实体由若干个属性来描述。
如学生实体可由学号、姓名、性别、出生年月、所在系别、入学年份等属性组成。
实体集(Entity Set)是具体相同类型及相同性质实体的集合。
例如学校所有学生的集合可定义为“学生”实体集,“学生”实体集中的每个实体均具有学号、姓名、性别、出生年月、所在系别、入学年份等性质。
实体类型(Entity Type)是实体集中每个实体所具有的共同性质的集合,例如“患者”实体类型为:患者{门诊号,姓名,性别,年龄,身份证号.............}。
一、概念数据模型概述数据模型是现实世界中数据特征的抽象。
数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世界2)容易为人所理解3)便于计算机实现概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这一理论进行了扩充。
它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。
通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。
换句话说,就是先将现实世界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个DBMS所支持的数据模型,这样的模型就是物理数据模型,即PDM。
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)。
标定联系:每个实体类型都有自己的标识符,如果两个实体集之间发生联系,其中一个实体类型的标识符进入另一个实体类型并与该实体类型中的标识符共同组成其标识符时,这种联系则称为标定联系,也叫依赖联系。
反之称为非标定联系,也叫非依赖联系。
注意:在非标定联系中,一个实体集中的部分实例依赖于另一个实例集中的实例,在这种依赖联系中,每个实体必须至少有一个标识符。
而在标定联系中,一个实体集中的全部实例完全依赖于另个实体集中的实例,在这种依赖联系中一个实体必须至少有一个标识符,而另一个实体却可以没有自己的标识符。
没有标识符的实体用它所依赖的实体的标识符作为自己的标识符。
换句话来理解,在标定联系中,一个实体(选课)依赖一个实体(学生),那么(学生)实体必须至少有一个标识符,而(选课)实体可以没有自己的标识符,没有标标识符的实体可以用实体(学生)的标识符作为自己的标识符。
递归联系:递归联系是实体集内部实例之间的一种联系,通常形象地称为自反联系。
同一实体类型中不同实体集之间的联系也称为递归联系。