PowerDesigner9.5物理数据模型
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PowerDesigner9.5——物理数据模型(PDM)
一、物理数据模型的理论基础
Powerdesigner中的物理数据模型以数据库管理系统(DBMS)理论为基础。
建立PDM的目的是把概念数据模型中建立的现实世界模型生成特定DBMS的SQL脚本,以此在数据库中产生信息的存储结构,这些存储结构是存储现实世界中数据信息的容器,并保证数据在数据库中的完整性和一致性。
1、PDM与DBMS的关系
2、PDM中的主要概念
1)表、列、视图、主键、侯选键、外键
表:长期保存信息的表和临时表两种。长期保存信息的表是PDM中设计的主要对象。在PDM中建立表的过程就是产生SQL语句的过程。
列:组成表的基本单元,每一个列都有一个数据类型。
视图:是从一个或多个基本表或其它视图中导出的表,它可以形象的被看作是一个活动的窗口,在数据库中通过它可以看到自己干兴趣的内容。
主键:是用来惟一标识表中一条记录的一个或多个列的集合。
侯选键:也是用来惟一标识表中一条记录的一个或多个列的集合,它于主键具有同样的作用。
外键:是与其它表连接的公共列,这个列通常是其它表的主键。
2)存储过程
3)触发器
4)默认和规则
默认:当用户没有为某一列赋值时,数据库服务器为该列自动插入的值。
规则:就是在数据库的管理中指定的允许或不允许哪些值插入某些列。
5)完整性检查约束
完整性是指数据库中数据的正确性和一致性。通过对数据库中插入、删除和修改数据值进行限制和约束来实现数据的完整性,数据库提供两种保持数据完整性的方法:一是在定义表时定义完整性约束;二是定义规则、约束、索引和触发器。
在数据库服务器上可以建立如下三种完整性约束:
●唯一性(Unique)和主键约束(Primary Key)
●参照完整性约束(Reference)
●检查约束(Check)
6)索引:描述了数据在表中是如何组织的。可以创建一个或多个索引来加快数据库的查询速度,索引多用户是透明的,数据库自动确定何时使用表的索引。
7)库函数:每一种DBMS都提供了很多库函数。
8)逆向工程:是指从现存的数据库或数据库SQL脚本中生成PDM的过程。
二、定义PDM中的表
有三种途径可以建立表:
1.直接在PDM的图形窗口插入表图形符号
单击工具选项板上的Table工具。
2.在列表中增加新标
选择Model->Tables,打开表列表窗口,在列表中单击空行或单击Add a Row工具。
3.在浏览器窗口增加新表
右击当前模型节点,从弹出的菜单中选择New->Table,打开表的特性窗口。
三、定义PDM中域
1、在PDM中,使用于有助于识别信息的类型,易于使不同表中列的数据特征标准化。域为列定义了一组有效
的值。可以把Data Tpye,Check,Rule,Mandatory等信息关联到域上。
2、域的特性
●Mandatory: 表示使用该域的所有列的值是强制的
●Identity: 表示使用该域的列值自动增益
●Standard Check:表示位域定义的检查参数
●Additional Check:表示标准检查参数没有定义的域约束
●Rule:表示附加到域上的业务规则
四、定义表中的列
1、列特性:
●Identity:表示列中的数据自动增益
●Domain:表示列所关联的域名
●Computed:表示该列是由其他列的值通过一定的表达式计算出来的
●Primary key:表示这个列是主键
●Foreign Key:表示该列依赖于另一个表的主键
●Mandatory:表示该烈必须被赋值,不能为空
●With default:表示当增加一行数据时该列自动赋予一个默认值
2、创建计算列
在列属性窗口中点击Detail页,点击Edit按钮,在弹出的窗口中输入表达式。
五、定义表中的键
1、定义主键:主键是表的主标识符,它可以是一个或多个列,列的值在表的所有记录中是唯一的。每个表都
必须有一个主键。
方法:在表的特性窗口中单击Columns页,在列表中选择一个或多个列的P列的复选框。
2、定义外键:从其它表迁移来得主键或侯选键。
3、定义侯选键:是指一个或多个列,列的值在表的所有记录中是唯一的。侯选键不能是主键,但可以是外键。
每个侯选键都在数据库中生成一个惟一索引或惟一约束。
4、例:Sys_Subbureau表通过外键列higherUpcode与Sys_Bureau表的主键列Unitcode参照连接;Sys_Segment
表通过外键列higherUpcode与Sys_Subbureau表的主键列Unitcode参照连接.
六、定义参照及参照完整性
1、参照:是父表和子表之间的连接,它定义了两个表中列对之间的参照完整性约束,列对是指主键与外键或
两个表中用户指定的两个列。
2、参照连接:分为键之间的连接和用户指定列之间的连接。
3、创建参照:
4、参照完整性:是维持主键、候选键和外键之间数据一致性的规则集合。表示父表中修改或删除参照列的数
据对子表的影响,采用两种方法实现
●Declarative:把参照完整性约束定义成一种特殊的引用,当参照生成到目标DBMS中时,它维持数据
的有效性并生成相应的错误信息。
●Trigger: 参照完整性约束通过基于完整性约束的触发器实现。触发器维持参照的有效性并生成用户
自定义的相应错误信息。
5、参照完整性的特性: