版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——PowerDesigner应用教程(深蓝居)
PowerDesigner应用教程
目录
PowerDesigner模型设计1概念模型设计4计物理模型设计1——表和主外键10物理模型设计2——约束17物理模型设计3——视图、存储过程和函数26PowerDesigner15使用时的十五个问题30
有率第一,功能也确实十分强大,现在最新版本是15.1,已经支持最新的SQL
Server2023等数据库,另外在PD15中还增加了好几种模型,界面也得到了进
这些建模其他好多工具也有一致的功能,PD在这些模型的建立上并没有看出有
什么明显的优势,所以我使用PD的目的只有一个就是进行数据库建模,这才是
他的强项。
一步的美化,做出来的图更漂亮了。下面是一个在PD15中新建模型的窗口:
PowerDesigner模型设计
SybasePowerDesigner(简称PD)是最强大的数据库建模工具,市场占
PD本身除了进行数据库建模以外,还可以建业务模型、UML模型等,当然
1
一般来说在进行数据库建模时最常用的就是概念模型和物理模型,现在在
PD15中增加了规律数据模型和多维数据模型。另外的数据流图、数据迁移模型
和UML类图就暂时不研究了。
在进行数据库建模时,最先是要建立概念模型,概念模型是一个抽象的宏观
层次的业务模型,最常用的是“实体-关系〞图。所以在概念模型中最重要的对
象是实体和关系。
根据概念模型可以生成规律模型,规律模型是概念模型的延伸,表示概念之
间的规律次序,是一个属于方法层次的模型。具体来说,规律模型中一方面显示
了实体、实体的属性和实体之间的关系,另一方面又将继承、实体关系中的引用
等在实体的属性中进行展示。规律模型介于概念模型和物理模型之间,具有物理
模型方面的特性,在概念模型中的多对多关系,在规律模型中将会以增加中间实
体的一对多关系的方式来实现。
规律模型主要是使得整个概念模型更易于理解,同时又不依靠于具体的数据
库实现,使用规律模型可以生成针对具体数据库管理系统的物理模型。规律模型
并不是在整个步骤中必需的,可以直接通过概念模型来生成物理模型。
物理模型依靠于具体的物理实现,使用的就是数据库对象,原来的“实体-
关系〞转换成“表-外键〞,实体的属性转换为表的列,同时每个列的数据类型转
换为对应的DBMS中支持的数据类型。
对于SQLServer2023的物理模型,假使主键需要使用自增长,那么需要
修改具体的列,设置该列为Identity。假使生成的数据类型不合理,也可以调整
数据类型,使得数据类型使用得更恰当。在物理模型中除了生成的表外,还可以
手动增加视图、存储过程、业务规则等在概念模型和规律模型中无法表达的数据
2
库对象。
对物理模型调整好后,就可以将模型应用到SQLServer数据库中。在数据
库中实现物理模型的方法有两种,一种是使用PD连接到SQLServer数据库,
然后将模型同步到数据库中,另一种方法就是生成数据库脚本。
3
性(Attribute)、实体标识(Identifiers)、关系(Relationship)、继承
(Inheritance)、关联(Association)、关联连接(AssociationLink)。
实体
实体就是我们抽象出的对象,譬如:一个选课系统中,学生、教师、班级、
课程等等都是实体。实体属性就是一个实体中所包含的简单属性,譬如学生实体,
具有学号、姓名、生日、性别等属性。另外实体还有个标识用于唯一的标识出每
个实体实例,譬如学生实体中就可用将学生的学号作为该实体的标识。标识可用
是一个实体属性也可以是多个属性的结合。在PD中新建一个新的概念模型,系
标图标,即可切换回一般鼠标的模式。双击已经添加的实体,弹出实体属性设置
对话框,在General中可以设置实体的Name和Code等属性,如下图:统将出现一个工具栏如下,用于在设计面板中设计模型。
单击Entity图标,然后在设计主面板中单击一次便可添加一个实体。再单击鼠
概念模型设计
在概念模型中主要有以下几个操作和设置的对象:实体(Entity)、实体属
4
切换到Attributes选项卡可以设置实体的属性Name、Code、DataType
等,右边还有3个复选框,M表示不能为空,P表示是标识属性,D表示在模
型图中是否显示,假使在设置属性时直接选中StudentID的P复选框,系统将
卡,添加一行Identifier,然后单击左上角的“属性〞按钮,然后弹出的标识属
性设置对话框中单击“添加行〞按钮,选择该标识中使用的属性。例如将学号设
置为学生实体的标识,具体操作如下图:会自动生成该Student实体的一个Identifier。
假使不希望系统自动生成而是手动设置的话,那么切换到Identifiers选项
5
关系用于表示一个实体与另外一个实体之间的对应关系,分为一对一(1:1),
一对多(1:n),多对一(n:1),多对多(m:n)4种对应关系,一对多和多对一
其实就是方向相反,所以实际上就是一对一、一对多和多对多。
最最常用的就是一对多,譬如班级实体和学生实体就是一对多关系,一个班级
有多个学生,一个学生只会属于一个班级。在设计面板中添加一个Class实体,
然后单击工具栏的Relationship按钮,然后在Class实体上单击一下,再到
击Relationship_1,即可开启关系的属性窗口,可以在General选项卡中修改
6
整个设置好的实体如下图:
关系
Student上单击一下,就可以在Class和Student之间建立一对多关系,如图:
系统默认会给该关系一个命名Relationship_1,切换到鼠标指针模式,双
系,下面的Rolename没有多大的意义,就是在模型中显示文字,多的一方有
0,n和1,n两种,也就是说一个班级可以对应多个学生,那么一个班级中最少是
没有学生还是要至少存在一个学生,同样的一的一方有0,1和1,1两种,就是说
一个学生是可以不属于任何班级呢还是必需属于某一个存在的班级,这里我们都
选至少是1,所以最终的设置界面如图:该关系的Name、Code等,如图:
切换到Cardinalities选项卡,上面可以修改是一对多还是多对多之类的关
7
继承
在概念模型中的继承与在OO模型中的继承是一回事,就是要抽象出一个
实体,其他实体继承该实体后就拥有该实体的属性。
同样以选课系统为例,现在有学生实体,有教师实体,其他他们都是人,具
有人的属性,所以我们可以抽象出一个人的实体,人具有性别、生日、名字等属
性,教师具有职称、工号等属性这是学生没有的,所以不能放在人实体中,学生
规律模型和物理模型中,系统就会将继承转换为实际的实体和表。这里只是概念
模型,所以才有继承的说法。
关联(Association)
Association也是一种实体间的连接,在Merise模型方法学理论中,
Association是一种用于连接分别代说明确定义的对象的不同实体,这种连接仅
仅通过另一个实体不能很明确地表达,而通过“事件(Event)〞连接来表示。
也就是说,实体和实体之间存在着关系(多对多),但是这种关系还存在其
他的属性,这些属性假使假使作为一个明确的实体的实体来表示又不是很适合,
8
具有学号属性是教师没有的。
这里只是概念模型,在DBMS中是没有继承这种说法的,所以在接下来的
所以就使用了Association来表达,这种关系之间一般是一个“事件〞虚实体,
也就是说是一个动词对应的实体。
前面说的可能还是太抽象,以实际的例子来说明:现在有了学生实体,有课
程实体,一个学生可以选择多门课程,一门课程有多个学生来上课,所以之间就
课,所以学生实体和课程实体与选课的关系都是一对多,添加关联连接,一门课
程可能太枯燥了,没有学生来选,所以课程对应选课可能是0,n,一个学生可能
学分够了这学期一门课都不选,所以学生对应选课也可能是0,n的关系,所以我
物理模型。
9
存在一个“选课〞的Association,其中记录了学生选课的时间、选课的状态:
一个学生会对应多个选课结果选择多门课程,一个课程对应多个选课学生选
们最终形成的概念模型如下图:
这就是一个完整的概念模型。接下来就是要根据概念模型生成规律模型或者
1.直接新建物理模型。
2.设计好概念模型,然后由概念模型生成物理模型。
3.设计好规律模型,然后由规律模型生成物理模型。
4.使用逆向工程的方法,连接到现有的数据库,由数据库生成物理模型。
物理模型能够直观的反应出当前数据库的结构。在数据库中的表、视图、存
储过程等数据库对象都可以在物理模型中进行设计。由于物理模型和数据库的一
致性,接下来以数据库对象和物理模型对象的对应来一一介绍:
新建物理模型时需要指定物理模型对应的DBMS,这里我们使用SQL
Server2023,新建一个物理模型后,系统会显示一个专门用于物理模型设计的
单击一次便可添加一个表,系统默认为表命名为Table_n,这里的n会随着添加
统将开启表属性窗口,在General选项卡中可以设置表的Name、Code等属性。
例如我们要新建一个教室表(ClassRoom),则可修改Name和Code。Name的表增多而顺序增加。添加的表是没有任何列的,如下图:工具栏:
物理模型设计1——表和主外键
在PD中建立物理模型由以下几种方法:
若要在物理模型中添加一个表,单击“表〞按钮,然后再到模型设计面板中
单击工具栏的鼠标指针按钮,将鼠标切换回指针模式,然后双击一个表,系
10
是在模型中显示的名称,Code是生成数据库表的时候的实际表名。另外Name
是模型上显示的名称,Code是生成的实际的表名,后面的3个复选框P代办主
键、F代表外键,M代表不能为空。为教室表设计了两个列,如下图:中的内容还会作为SQLServer中的表备注。
单击Columns切换到列选项卡,在下面的列表中可以添加表中的列。Name
11
主键
在设计一个表时,一般状况下每个表都会有一个主键,主键分为单列主键和
复合主键。在为表设置主键时有以下几种方法:
1.在Columns选项卡中,直接选中主键列的P列复选框,这是最简单的方
式。
2.选中一个列,然后单击工具栏中的“属性〞按钮,系统将弹出列属性窗口,
在该窗口中可以设置该列的各种属性,当然也包括该列是否是否是主键。另外还
有一个很重要的复选框是“Identity〞。选中Identity复选框则表示该列为自增
列。
12
3.切换到Keys选项卡中,在其中添加一行命名为PK_ClassRoom,然后单
击工具栏的“属性〞按钮,开启键属性窗口,在该窗口中切换到Columns选项
卡,单击添加列按钮,弹出列选择窗口,选中主键中应当包含的列,单击确定按
钮即可完成主键的创立。
13
另外需要注意的是,在建立主键时,系统会在主键上建立索引,索引分为聚
集索引和非聚集索引,在“键属性〞窗口的General选项卡中可以设置该主键
假使是由概念模型或者规律模型生成物理模型,那么外键是通过
Relationship生成的,也可以通过工具栏中的Reference来实现两表之间的外
键关系。假使一个课程只会在一个固定的教室上课,而一个教室会安排多个课程
在不同的时间上课,所以教室和课程是一对多的关系,那么课程表中就需要添加
RoomID列以形成外键列,具体操作方法就是在工具栏中单击“Reference〞按
钮,然后在设计面板中,课程表上按下鼠标左键,并拖拽到教师表中放开鼠标,
这时假使课程表中没有RoomID列,系统会自动创立RoomID列并创立该列上
的外键引用,假使已经存在RoomID列,则只添加外键引用,不会再添加新列。上建立的索引是聚集索引还是非聚集索引,如下图:
外键
14
切换到鼠标指针模式,双击箭头,系统将弹出引用的属性窗口,在属性窗口中可以设置该引用的Name、Code、关联的列、约束名、更新策略和删除策略
等。
15
唯一约束与创立唯一索引基本上是一回事,由于在创立唯一约束的时候,系
统会创立对应的一个唯一索引,通过唯一索引来实现约束。不过唯一约束更直观
的表达了对应列的唯一性,使得对应索引的目的更加明了,所以一般建议创立唯
一约束而不是只创立唯一索引。
在PD中创立唯一约束的操作,以教室表来说,RoomID是主键,必然是唯
一的,RoomName假使我们也要去必需是唯一的,那么具体操作如下:
在PD的模型设计面板中,双击“教室〞表,开启属性窗口,切换到〞Keys〞
选项卡,可以看到里面有一行数据PK_ClassRoom,这是主键约束。添加一行
数据,命名为UQ_RoomName,不能将右边的“P〞列选上,然后单击工具栏
的“属性〞按钮,弹出UQ_RoomName的属性窗口,切换到列选项卡,单击
增加列按钮,选择将RoomName列添加到其中,然后单击确定即可完成唯一
约束的添加。
物理模型设计2——约束
唯一约束
16
这样系统就会自动创立唯一约束。CHECK约束
CHECK分为列约束和表约束,列约束是只对表中的某一个列进行的约束,
可以在列的属性中进行设置,而表约束是对多个列进行的约束,需要在表的属性
中进行设置(其实列约束也可以在表约束中设置)。
1.标准CHECK约束
对于一些常用的CHECK约束,可以直接通过设置界面来完成。以班级表为
例,ClassName每个学校有自己的命名规则,假设这里规定ClassName必需
以2开头,那么需要在ClassName列上定义CHECK约束,使得其满足命名规
范。具体操作是在PD中双击Class表,开启Class的属性窗口,切换到列选项
17
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 茶文化与茶艺鉴赏 教案 项目二 得茶益-茶与健康
- 光的折射(教案)
- 2024-2025学年重庆市八中高三上学期适应性月考卷(二)地理试题及答案
- 载体桩自动化施工技术规范编制说明
- 上海市市辖区(2024年-2025年小学五年级语文)统编版能力评测(上学期)试卷及答案
- 九年级化学上册全套教案
- DB11T 1095-2014 旅行社服务网点服务要求
- 山东省济南市莱芜区2024-2025学年九年级上学期期中考试化学试题(含答案)
- 河北省张家口市桥西区2024-2025学年九年级上学期11月期中化学试题(含答案)
- 2024-2025学年湖北省高中名校联盟高三(上)月考物理试卷(11月)(含答案)
- 肾移植术的解剖(1)
- 《政务礼仪》PPT课件.ppt
- 产品标签模板
- 2022年初中一年级生物上册期中试卷及答案
- 四大名著称四大小说三国演义西游记水浒传红楼梦中国古典章回小说PPT资料课件
- GB∕T 12810-2021 实验室玻璃仪器 玻璃量器的容量校准和使用方法
- 一般跨越架搭设施工方案
- 《羊道春牧场》读后感作文5篇
- 上消化道大出血的护理PPT课件
- RPG游戏概要设计文档
- 铁塔安装施工方案(完整版)
评论
0/150
提交评论