PD(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 model 弹出如下窗口

 

 

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

<1>. 在 CDM 的图形窗口中,单击工具选项版上的 Entity 工具,再单击图形窗口的空白处,在单击的位置就出现一个实体符号。点击 Pointer 工具或右击鼠标 ,释放 Entitiy 工具。如图所示 
   

<2>. 双击刚创建的实体符号,打开下列图标窗口,在此窗口 “General” 标签中可以输入实体的名称、代码、描述等信息。

添加实体属性

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

自增型 Serial

字符型 Variable multibyte

创建domain。 domain是什么东西呢,应该翻译成“域”吧,但实际是一种自定义类型。把常用到的数据类型定义成domain,所有的属性指定其domain,而不直接指定数据类型,会给以后的工作带来很大的方便。Data items下创建

2)添加 Entity 如下图 : 

实体属性为 :   

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

建立联系

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

 

实体之间可以通过联系来相互关联。与实体和实体集对应,联系也可以分为联系和联系集,联系集是实体集之间的联系,联系是实体之间的联系,联系是具有方向性的。联系和联系集在含义明确的情况之下均可称为联系。

 

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

 

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

在图形窗口中创建两个实体后,单击  实体间建立联系  工具,单击一个实体,在按下鼠标左键的同时把光标拖至别一个实体上并释放鼠标左键,这样就在两个实体间创建了联系,右键单击图形窗口,释放 Relationship 工具。如下图所示

建立关系图标 

 

 

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

 

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

系。而且一个联系方式必须属于一个员工,并且只能属于一个员工,不能属于零个员工,所以从  联系方式  实体至  员工  实体的基数为 “1,1” ,从联系的另一方向考虑,一个员工可以拥有多个联系方式,也可以没有任何联系方式,即零个联系方式,所以该方向联系的基数就为 “0,n”, 如图所示 

到此 :CMD 已经建成 ;

 

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

或者 : 按 Ctrl+G  键 弹出下图窗口 :

 

生成如下图 PDM 

 

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

 

生成 sql 脚本 :Ctrl +G 键 ,如果是生成MySQL脚本,options->foreign key ->create  foreign key设为inside  

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

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

 

PowerDesigner生成数据库时取消域的生成

在PDM界面,选择菜单“database”—“generate database...”—“options”,在“all objects”中将Column的user data type勾选去掉:

相关文章
|
5月前
|
SQL 缓存 关系型数据库
一条SQL执行是如何执行的?它的执行流程是什么?跟我一起探索吧!
一条SQL执行是如何执行的?它的执行流程是什么?跟我一起探索吧!
一条SQL执行是如何执行的?它的执行流程是什么?跟我一起探索吧!
|
10月前
|
SQL 安全 关系型数据库
supersqli(SQL注入流程及常用SQL语句)
supersqli(SQL注入流程及常用SQL语句)
140 0
|
SQL 自然语言处理 算法
OBCP第三章 SQL引擎高级技术-SQL请求执行流程
OBCP第三章 SQL引擎高级技术-SQL请求执行流程
73 0
PowerDesigner16(PDM)pd生成数据库sql脚本
今天使用PowerDesigner16软件生成数据库脚本的时候遇到了一些问题,但是经过不懈努力最终修成正果,下面将小编的经历以及错误解决方案与大家分享。
|
SQL XML Java
MyBatis的动态SQL执行流程
MyBatis的动态SQL执行流程
166 0
|
14天前
|
SQL 缓存 关系型数据库
揭秘MySQL一条SQL语句的执行流程
以上步骤共同构成了MySQL处理SQL语句的完整流程,理解这一流程有助于更有效地使用MySQL数据库,优化查询性能,及时解决可能出现的性能瓶颈问题。
35 7
|
2月前
|
Java 测试技术 容器
从零到英雄:Struts 2 最佳实践——你的Web应用开发超级变身指南!
【8月更文挑战第31天】《Struts 2 最佳实践:从设计到部署的全流程指南》深入介绍如何利用 Struts 2 框架从项目设计到部署的全流程。从初始化配置到采用 MVC 设计模式,再到性能优化与测试,本书详细讲解了如何构建高效、稳定的 Web 应用。通过最佳实践和代码示例,帮助读者掌握 Struts 2 的核心功能,并确保应用的安全性和可维护性。无论是在项目初期还是后期运维,本书都是不可或缺的参考指南。
33 0
|
2月前
|
SQL 存储 数据管理
掌握SQL Server Integration Services (SSIS)精髓:从零开始构建自动化数据提取、转换与加载(ETL)流程,实现高效数据迁移与集成——轻松上手SSIS打造企业级数据管理利器
【8月更文挑战第31天】SQL Server Integration Services (SSIS) 是 Microsoft 提供的企业级数据集成平台,用于高效完成数据提取、转换和加载(ETL)任务。本文通过简单示例介绍 SSIS 的基本使用方法,包括创建数据包、配置数据源与目标以及自动化执行流程。首先确保安装了 SQL Server Data Tools (SSDT),然后在 Visual Studio 中创建新的 SSIS 项目,通过添加控制流和数据流组件,实现从 CSV 文件到 SQL Server 数据库的数据迁移。
51 0
|
2月前
|
SQL 数据库 数据库管理
SQL查询是否都需要解析:深入解析SQL执行流程与优化技巧
在数据库管理系统中,SQL(Structured Query Language)查询是用户与数据库交互的主要方式
|
5月前
|
SQL 算法
基于若依的ruoyi-nbcio流程管理系统修改代码生成的sql菜单id修改成递增id(谨慎修改,大并发分布式有弊端)
基于若依的ruoyi-nbcio流程管理系统修改代码生成的sql菜单id修改成递增id(谨慎修改,大并发分布式有弊端)
80 1
下一篇
无影云桌面