出处: http://jbeduhai.iteye.com/blog/338579

由于图片复制上去不显示,如想看内容及图片详情,请下载附件

PowerDesigner数据模型(CDM—PDM—SQL脚本的转换流程)

在开发的过程中会经常遇到 做一个模块功能,首先让你根据需要先画一个E-R图出来,

很多的朋友对 E-R图 都不是很熟悉,或者说有的朋友在开发的项目过程中,根本就没有用到E-R图,因为对于有些对E-R图不是很熟悉的朋友感觉画E-R图无从下手:

我个人根据一些资料整理了一下关于E-R图的 描述 及用法 示例:希望对,对E-R图并不是很熟悉的朋友有所帮助吧….

概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这

一理论进行了扩充。它从用户的观点出发对信息进行建模,主要用于数据库的概念级设计。

通常人们先将现实世界抽象为概念世界,然后再将概念世界转为机器世界。换句话说,就是先将

现实世界中的客观对象抽象为实体(Entity)和联系(Relationship),它并不依赖于具体的计算机系统

或某个DBMS系统,这种模型就是我们所说的CDM;然后再将CDM转换为计算机上某个DBMS

所支持的数据模型,这样的模型就是物理数据模型,即PDM,

详细的关于E-R图 理论方面的描述,还请了解一些相关资料

以下是我个人对E-R图 的一个简单的用法整理,

如有不同意见,请提出….

(1).打开PowerDesigner file — new 弹出如下窗口

上图是 PowerDesigner CDM(概念数据模型—Conceptual Data Model)

(2).添加实体类:如下图

<1>.在CDM的图形窗口中,单击工具选项版上的Entity工具,再单击图形窗口的空白处,在单

击的位置就出现一个实体符号。点击Pointer工具或右击鼠标,释放Entitiy工具。如图所示

<2>.双击刚创建的实体符号,打开下列图标窗口,在此窗口“General”标签中可以输入实体的名

称、代码、描述等信息。

添加实体属性

1)  在上述窗口的“Attribute”选项标签上可以添加属性,如下图所示。

2)

添加Entity如下图:

实体属性为:

关于实体属于的具体配置信息,请查看关于这方面的入门资料,在这里我就不详细的说明了..

建立联系

联系(Relationship)是指实体集这间或实体集内部实例之间的连接。

实体之间可以通过联系来相互关联。与实体和实体集对应,联系也可以分为联系和联系集,联

系集是实体集之间的联系,联系是实体之间的联系,联系是具有方向性的。联系和联系集在含义

明确的情况之下均可称为联系。

按照实体类型中实例之间的数量对应关系,通常可将联系分为4类,即一对一(ONE TO ONE)

联系、一对多(ONE TO MANY)联系、多对一(MANY TO ONE)联系和多对多联系(MANY

TO MANY)。

在CDM工具选项板中除了公共的工具外,还包括如下图所示的其它对象产生工具。

在图形窗口中创建两个实体后,单击“实体间建立联系”工具,单击一个实体,在按下鼠标左键

的同时把光标拖至别一个实体上并释放鼠标左键,这样就在两个实体间创建了联系,右键单击图

形窗口,释放Relationship工具。如下图所示

建立关系图标

在两个实体间建立了联系后,双击联系线,打开联系特性窗口,如图所示。

“员工”与“联系方式”两个实体之间的联系是一对多联系,换句话说“联系方式”和“员工”之间的联系是多对一联

系。而且一个联系方式必须属于一个员工,并且只能属于一个员工,不能属于零个员工,所以从“联系方式”实体

至“员工”实体的基数为“1,1”,从联系的另一方向考虑,一个员工可以拥有多个联系方式,也可以没有任何联系方式,即零个联系方式,所以该方向联系的基数就为“0,n”,如图所示

在两个实体间建立了联系后,双击联系线,打开联系特性窗口,如图所示。

“员工”与“联系方式”两个实体之间的联系是一对多联系,换句话说“联系方式”和“员工”之间的联系是多对一联

系。而且一个联系方式必须属于一个员工,并且只能属于一个员工,不能属于零个员工,所以从“联系方式”实体

至“员工”实体的基数为“1,1”,从联系的另一方向考虑,一个员工可以拥有多个联系方式,也可以没有任何联系方式,即零个联系方式,所以该方向联系的基数就为“0,n”,如图所示

到此:CMD已经建成;

下面说明如何生成:PDM ->点击: Tools->Generate Physical Data Model 如下图:

或者:按Ctrl+G  键

弹出下图窗口:

生成如下图PDM

联系方式表:Fk 外键关系是由于 建立关系以后,自动生成的

生成sql 脚本:Ctrl +G键

总结:CDMàCtrl+G = PDMàCtrl+G = SQL脚本

如果要生成 OOM --> 点击工具-->Generage Object-Oriented Model

转载 - PowerDesigner(CDM—PDM—SQL脚本的转换流程)的更多相关文章

  1. PowerDesigner数据模型(CDM—PDM—SQL脚本的转换流程)

    原文地址:PowerDesigner数据模型(CDM-PDM-SQL脚本的转换流程)作者:zzenglish 有图片的参考http://blog.sina.com.cn/s/blog_64742675 ...

  2. PowerDesigner:导出SQL脚本以及问题解决

    在PowerDesigner中点击DataBase  -----------> Generate Datebase  -----(可以点击Preview预览sql语句)------->设置 ...

  3. Oracle使用超大SQL脚本文件恢复数据问题记录

    在以前获取的Oracle数据库备份一般都是dmp文件,创建表空间和用户就直接使用imp或者impdp导入即可. 这一次遇到的情况比较特殊,对方提供数据时给我的是使用SQLPlus导出的SQL脚本文件, ...

  4. PD 15.1 安装 破解 , 简单使用 (一对多,多对多关系生成sql脚本) , CDM 和 PDM 的区别;PD15.1 生成sql2008 无FK外键约束的解决方法

    CDM是概念模型,在概念模型上没有具体数据库产品的概念,反映的是实体和联系.PDM是物理模型,是依赖具体数据库产品的模型,比如可以指定具体的数据类型和约束等等.在PowerDesigner中两个模型之 ...

  5. PowerDesigner PDM生成sql脚本时:表的名称和表里面的字段名称都有引号解决。。。

    PowerDesigner PDM生成sql脚本时:表的名称和表里面的字段名称都有引号解决... 1.当你的PowerDesigner 是新安装时,你得设置可能就会出现一些问题,在这里比如:PDM生成 ...

  6. PowerDesigner在PDM转换为sql脚本时报错Generation aborted due to errors detected during the verification of the mod

    在设计概念数据模型(CDM)之后,转换为物理数据模型(PDM),之后转换为sql脚本时报错Generation aborted due to errors detected during the ve ...

  7. powerDesigner根据sql脚本来逆向生成pdm等模型

    一.问题概述 网上一般的博文都是说要建立数据源的方式来逆向或者正向. 我这人比较懒得折腾,更喜欢通过sql脚本的方式来做. 二.步骤 File-->New Model--> 然后: 注意上 ...

  8. powerdesigner中物理模型与sql脚本的以及与数据库的连接设置

    使用JDBC连接失败的解决方案: http://blog.csdn.net/t37240/article/details/51595097 使用powerdesigner工具我们可以方便的根据需求分析 ...

  9. 运用PowerDesigner的反向工程,可以导入SQL脚本,从而生成物理模型

    运用PowerDesigner的反向工程,可以导入SQL脚本,从而生成物理模型.方法/步骤 首先打开PowerDesigner,点击左上角“File”—>"Reverse Engine ...

随机推荐

  1. P4727 [HNOI2009]图的同构记数

    传送门 如果我们把选出子图看成选出边,进而看成对边黑白染色,那么就是上一题的弱化版了,直接复制过来然后令\(m=2\)即可 不过直接交上去会T,于是加了几发大力优化 不知为何华丽的被小号抢了rank2 ...

  2. 流程图软件draw.io

    工作中经常需要梳理一些流程图,时序图.以前用微软Visio绘制流程图(当然不是正版Visio).后来为了响应国家号召,改用processon(proceson.com)进行绘制流程图.Processo ...

  3. open_basedir 报错

    Warning: require(): open_basedir restriction in effect. File(/home/www/blog/vendor/autoload.php) is ...

  4. js实现水波纹背景

    <!DOCTYPE html> <html> <head> <title>水波背景</title> <meta charset=&qu ...

  5. 利用反射给JAVABEAN实例赋值

    为简化和统一,需要给javabean实例统一赋值,实现代码如下(已测试) import java.util.ArrayList; import java.util.Date; import java. ...

  6. 从实际案例聊聊Java应用的GC优化--转

    https://tech.meituan.com/jvm_optimize.html 当Java程序性能达不到既定目标,且其他优化手段都已经穷尽时,通常需要调整垃圾回收器来进一步提高性能,称为GC优化 ...

  7. Java使用 POI 操作Excel

    Java中常见的用来操作 Excel 的方式有2种:JXL和POI.JXL只能对 Excel进行操作,且只支持到 Excel 95-2000的版本.而POI是Apache 的开源项目,由Java编写的 ...

  8. Java高级程序员(5年左右)面试的题目集

    Java高级程序员(5年左右)面试的题目集 https://blog.csdn.net/fangqun663775/article/details/73614850?utm_source=blogxg ...

  9. 微信开发解决if...else..的臃肿

    开发中难以避免if...else (switch case ),大量的if...else 让代码可读性低...难以维护 无论是接手别人的代码还是自己写的代码,因为开发周期短可能就往往忽略了这一点. 久 ...

  10. poj3279 Fliptile

    思路: 枚举. 枚举了第一行的操作之后,下面每行的操作也随之确定了.因为在确定了第i行的操作之后,要想再改变a[i][j]的状态只能通过改变a[i + 1][j]来实现.另外,用到了集合的整数表示方法 ...