ref: https://blog.csdn.net/tianlesoftware/article/details/6874067

一.     PDM 介绍

物理数据模型(Physical Data Model)PDM,提供了系统初始设计所需要的基础元素,以及相关元素之间的关系;数据库的物理设计阶段必须在此基础上进行详细的后台设计,包括数据库的存储过程、操作、触发、视图和索引表等;

PowerDesigner能够用于创建多种不同类型的DBMS(数据库管理系统),每种类型的DBMS都包含一个标准定义的文件用于在PD和DBMS中确定彼此的关联而提供一套接口;创建不同的DBMS可以生成不同的数据库脚本。

物理数据模型(PDM)的主要功能:

1、可以将数据库的物理设计结果从一种数据库移植到另一种数据库;

2、可以通过反向工程将已经存在的数据库物理结构重新生成物理模型或概念模型;

3、可以定制生成标准的模型报告;

4、可以转换为OOM;

5、完成多种数据库的详细物理设计(涵盖常用的各种数据库的DBMS),并生成数据库对象的.sql脚本;

1.1 PDM中的基本概念:

1)  表

2)  列

3)  视图

4)  主键

5)  候选键

6)  外键

7)  存储过程

8)  触发器

9)  索引

10)完整性检查约束

1.2 创建PDM对象:

1)  创建表

2)  创建列

3)  创建创建域

4)  创建视图

5)  创建主键

6)  创建候选键

7)  创建外键

8)  创建索引

9)  创建完整性检查约束

10)创建存储过程

11)创建触发器

1.3 管理PDM对象:

1)  创建用户

2)  设置表的用户

3)  设置表的物理属性

1.4 检查PDM:

1)  检查选项设置

(1)Package(包)

(2)Table(表)

(3)Column(列)

(4)Index(索引)

(5)Key(键)

(6)Domain(域)

(7)View(视图)

(8)Reference(参照)

(9)Trigger(触发器)

(10)    Procedure(存储过程)

(11)    User(用户)

(12)    File(文件)

2)更正错误/警告

1.5 触发器和存储过程/函数:

1)创建触发器

设定触发器类型(Insert、Update、Delete)

2)创建存储过程/函数

1.6 生成数据库

1)选择Database→GenerateDatabase菜单项

2)选项设置

(1)数据库

(2)用户

(3)域

(4)表和列

主键、候选键

外键

索引

触发器

(5)存储过程

3)格式设置

4)选择对象

(1)查看包

(2)全选/全部取消选择

(3)使用图中选中的对象

1.7 创建PDM:

1)新建PDM

(1)选择File→New Model菜单项

(2)在左侧模型类型列表中选择Physical  Data Model

(3)在右侧输入模型名称、在DBMS下拉列表中选择DBMS类型、在First diagram下拉列表中选择Physical Diagram

2)正向工程:从CDM/LDM生成PDM

3)逆向工程:从现有DB 逆向生成PDM

正向工程和逆向工程生成PDM会单独整理成一片文章,这篇不做说明。

1.8 PDM 生成脚本:

PDM我们最终是需要导入我们的数据库中去。 PDM 可以生成不同数据库对应的sql语句,或者直接讲脚本部署到数据库中,这个在generate database 的时候可以进行选择。

一般是先生成sql 脚本,然后到数据库里执行sql脚本。

二.     PDM 使用示例

2.1 创建新的PDM

2.2 设置PDM的显示参数

Tools --> Display Preferences

2.3 设置PDM的模型属性(一般在发布资源或者提交设计的时候需要设置)

Model –> Model Properties

2.4 设置PDM模型选项

Tools--> Model Options

2.5 创建表

使用PD 的工具面板,选中表后,在工作区创建一个表,右击释放表,在双击表,进行编辑工作。

2.6 表列以及其设置

2.7 详情设置

2.8 标准检查约束

2.9 完成了一个表的设计

创建参照完整性(参照是父表和子表间的连接,定义了两个表中对应列间的参照完整性约束,外键联系主键,两者之间建立参照)

根据参照连接的对应性质的差别,可将连接分成键连接和用户指定的列连接:

1)键连接:把父表中的主键或候选键连接到子表中的外键上;

2)用户指定的列连接:把父表中的一个或多个列连接到子表中相应的列上;(比较少用)

2.10 设置两个表之间的关系(设置两个表之间的参照)

2.11 连接主键、候选键和外键,或者在用户指定的列之间建立连接

2.12 定义参照完整性

2.13 域设置(有助于识别信息的类型,使得不同表中列的山上特性标准化,通过域可以将数据类型、检查规则、强制性等信息关联到域上)

Model --> Domains

2.14 重建表中的键

Tools --> Rebuild Objects

2.15 创建索引

双击表,打开编辑,选中对应的列,在点属性(第二步)。

2.16 创建视图

Oracle 视图(View) 说明

http://www.cndba.cn/Dave/article/1178

在工具面板选中视图后,创建一个视图。双击视图,打开配置。

在SQL Query页面,定义视图的SQL语句

1、Union合并两个或多个Select语句,数据不重复;

2、Union All合并两个或多个Select语句,数据可重复;

3、Intersect合并两个或多个Select语句,数据显示交集;

4、Minus合并两个或多个Select语句,数据显示补集;

单击Query栏右边Edit编辑SQL

完成实例

三.     生成sql脚本

一般来说都是先画出CDM的E-R,然后将CDM 转成PDM。 PDM 中的对象与我们库中的对象一致。

对于PDM 的部署有两种方法:

(1) 生成SQL 脚本

(2) 直接将脚本部署到数据库上,即直接在库上把我们的对象创建好

Database --> Generate Database, 弹出如下窗口:

Script generation: 是生成SQL 脚本,one file on是否需要按照表生成许多个sql(默认选上,即不需要)

Direct generation: 是直接在数据库中执行脚本,这2者只能选一个。 一般直接生成SQL 脚本。

Automatic archive:   生成sql同时生成apm文件。

Check model:powerdesigner有定义每种数据库的表名、字段名等名字的最大长度的,该长度用于powerdesigner作check model的,但是该定义的长度和数据库实际允许的长度不一定相同,如果你希望能通过pd的检查,可以修改pd中的设置(pd对不同数据库的这种约定实际是在保存在一个xml文件中,扩展名为.xdb)!或者你可以直接在生成数据库时选择不check model.

PowerDesigner 物理数据模型(PDM) 说明的更多相关文章

  1. PowerDesigner(六)-物理数据模型(PDM逆向工程)(转)

    物理数据模型PDM 物理数据模型(Physical Data Model,PDM):在数据库的逻辑结构设计好之后,就需要完成其物理设计,PDM就是为实现这一目的而设计的. 物理数据模型是以常用的DBM ...

  2. PowerDesigner 物理数据模型(PDM)

    PowerDesigner 物理数据模型(PDM) 说明 数据库脚本sqldatabasegeneration存储   目录(?)[+]   一.     PDM 介绍 物理数据模型(Physical ...

  3. 物理数据模型(PDM)->概念数据模型 (CDM)->面向对象模型 (OOM):适用于已经设计好数据库表结构了。

    物理数据模型(PDM)->概念数据模型 (CDM)->面向对象模型 (OOM):适用于已经设计好数据库表结构了.   步骤如下: 一.反向生成物理数据模型PDM 开发环境 PowerDes ...

  4. 六、物理数据模型(PDM逆向工程)

      物理数据模型PDM 物理数据模型(Physical Data Model,PDM):在数据库的逻辑结构设计好之后,就需要完成其物理设计,PDM就是为实现这一目的而设计的. 物理数据模型是以常用的D ...

  5. powerdesigner 实体关系模型CDM与物理数据模型PDM互转

    1.创建CDM 2.CDM转换PDM 3.PDM转CDM 环境 powerdesigner15.1 1.创建CDM File --> new Model-->Conceptual data ...

  6. 在powerdesigner中创建物理数据模型

    物理数据模型(PDM)是以常用的DBMS(数据库管理系统)理论为基础,将CDM/LDM中所建立的现实世界模型生成相应的DBMS的SQL语言脚本.PDM叙述数据库的物理实现,是对真实数据库的描述 PDM ...

  7. PowerDesigner 16.5 使用VBScript脚本从Excel导入物理数据模型

    本文使用的数据库类型是Oracle 11g 最近在工作中遇到一个问题:数据的设计以表格的形式保存在Excel文件中.(由于保密原因,我只能看到数据库设计文档,无法访问数据库.=_=!) 其中包括Nam ...

  8. PowerDesigner数据库设计PDM基于Excel的导入导出总结

    经常用到pdm来管理代码,一两张表,手写一下还凑合,一旦表多了,就慌了.于是,开始学习用vbs进行Excel的来快速导入导出操作PDM就变得很紧急了,搜罗了网络上的很多vbs脚本,各有各的优点,但对于 ...

  9. PowerDesigner反向生成物理数据模型

    什么是PowerDesigner Power Designer 是Sybase公司的CASE工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程.利用Power De ...

随机推荐

  1. InvokeRequired和Invoke(转)

    C#中禁止跨线程直接访问控件,InvokeRequired是为了解决这个问题而产生的,当一个控件的InvokeRequired属性值为真时,说明有一个创建它以外的线程想访问它.此时它将会在内部调用ne ...

  2. RedHat6.5上安装Hadoop单机

    版本号:RedHat6.5   JDK1.8   Hadoop2.7.3 hadoop  说明:从版本2开始加入了Yarn这个资源管理器,Yarn并不需要单独安装.只要在机器上安装了JDK就可以直接安 ...

  3. 转 Oracle监听器启动出错:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又停止了解决方案

    今早刚上班.客户打电话过来说系统访问不了,输入用户名.用户号不能加载出来!听到这个问题,第一时间想到的是不是服务器重新启动了,Oracle数据库的相关服务没有启动的原因.查看服务的时候,发现相关的服务 ...

  4. 页面框架加载完自动执行函数$(function(){});

    页面中有一些大的资源文件,如图片,声音等,如果一个事件绑定写在这些加载资源代码的下方,那么要等资源加载完才会绑定,这样体验不够好. 于是想不等资源加载完,只要框架加载完成就绑定事件,就可以把代码放在以 ...

  5. ubuntu 阿里云 常出问题 运维工作日志

    一.2015-8.26(数据库 error—28) tmp文件临时数据写入不了----解决办法 1.查看临时文件 ls -l 找到了 2.由此可以查看得出来tmp文件有的权限是有的 3.查看tmp 存 ...

  6. 开始使用Chronograf(官方说明)

    地址:https://docs.influxdata.com/chronograf/v1.6/introduction/getting-started/ 开始使用Chronograf 在本页面 入门概 ...

  7. WPF Demo18 路由事件

    using System.Windows; namespace 路由事件2 { public class Student { ////声明并定义路由事件 //public static readonl ...

  8. 限制input输入字符数(中文2个字符,英文1个字符)

    input的maxlength可以限制input的输入的字符数,但是是字符串的长度,相当于判断str.length;然而经常会有中文字符算2个字符英文算1个字符的需求,目前只能通过编写代码来实现. & ...

  9. Memcached在.NET应用程序中的使用

    在应用程序运行的过程中总会有一些经常需要访问并且变化不频繁的数据,如果每次获取这些数据都需要从数据库或者外部文件系统中去读取,性能肯定会受 到影响,所以通常的做法就是将这部分数据缓存起来,只要数据没有 ...

  10. PAT 乙级 1020 月饼 (25) C++版

    1020. 月饼 (25) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 月饼是中国人在中秋佳节时吃的一种传统食 ...