没法直接复制!以后有空再补上吧。
1 打开PowerDesigner,选择File | Reverse Engineer | Database 。在New Physical Data Model 对话框中, 选择所需要连接的数据库类型,点击“确定”。
2在出来的database reverse engineering窗口里, 选择Using a data source选项。
点击下一行最右边的数据库图标,d出Connect to a Data Source窗口。选择第一项:ODBC machine data source。
点击Configure按钮,d出如下窗口:
再点击上面工具栏的第二个按钮,d出如下窗口:
按步骤配好之后,返回到Connect to a Data Source窗口,输入用户名和密码,即可。
登录成功之后,d出如下窗口:
点击OK,即可自动生成ER图。
3 就生成了ER diagram
PowerDesign:PowerDesign是Sybase推出的主打数据库设计工具。PowerDesign致力于采用基于Entiry- Relation的数据模型,分别从概念数据模型(Conceptual Data Model)和物理数据模型(Physical Data Model)两个层次对数据库进行设计。概念数据模型描述的是独立于数据库管理系统(DBMS)的实体定义和实体关系定义。物理数据模型是在概念数据模型 的基础上针对目标数据库管理系统的具体化。
如何一次性将表结构的脚本导出来?
Database --->Generate Database ---> Genarate Script 就可实现。
Name用中文英文以便查询、写程序的时候方便, Code才是最终产生的Table Name
PowerDesigner中建了模型,如何把它作为文档导出?
利用REPORT。选择一个模板,然后就生成了RTF或是HTM格式的文档
如何将已经存在的数据库所有表,导入到PowerDesign中?
用PD里的反向工程file--->reverse engineering ===> and go on
概念数据模型(CDM)
CDM表现数据库的全部逻辑的结构,与任何的软件或数据储藏结构无关。一个概念模型经常包括在物理数据库中仍然不实现的数据对象。它给运行计划或业务活动的数据一个正式表现方式。不考虑物理实现细节,只考虑实体之间的关系。
物理数据模型 (PDM)
PDM叙述数据库的物理实现。主要目的是把CDM中建立的现实世界模型生成特定的DBMS脚本,产生数据库中保存信息的储存结构,保证数据在数据库中的完整性和一致性。
面向对象模型 (OOM)
一个OOM包含一系列包,类,接口和他们的关系。这些对象一起形成所有的(或部份)一个软件系统的逻辑的设计视图的类结构。一个OOM本质上是软件系统的一个静态的概念模型。
业务程序模型(BPM)
BPM描述业务的各种不同内在任务和内在流程,而且客户如何以这些任务和流程互相影响。BPM是从业务合伙人的观点来看业务逻辑和规则的概念模型,使用一个图表描述程序,流程,信息和合作协议之间的交互作用。
正向工程
你能直接地从PDM产生一个数据库, 或产生一个能在你的数据库管理系统环境中运行的数据库脚本。可以生成数据库脚本,如果选择ODBC方式,则可以直接连接到数据库,从而直接产生数据库表以及其他数据库对象。
逆向工程
将已存在的数据库产生进新的PDM 之内。数据来源可能是从脚本文件或一个开放数据库连接数据来源。
并不是每个设计都需要用到Power Designer。 例如:小的系统,或Table数比较少的情况下就没有必要采用Power Designer了。
设计步骤
CDM PDM OOM三者转换关系
PowerDesigner仅仅是实现的工具
不要以为Power能帮你把关系什么的全部建立好,很多数据库理论只是还是需要的,设计数据库的时候,那些范式什么的,一定要掌握。
设计一个好的数据库,最好的工具不是必须的,但是基础理论是一定要的。
PowerDesigner用途不局限于数据建模
还可以用PowerDweigner设计web service
并不是每个设计都需要用到PD
用Powerdesigner对付比较大型的项目,是很好的,对于短平快类型的项目,如果时间要求你1个星期完成一个程序,那么完全没有必要用 PowerDesigner,直接维护数据库就可以了,当表的数量超过10个(一个小系统的表在10个左右)的时候,建议还是用用 Powerdesigner 。
我的看法:如果想做成一个比较规范的数据库,小项目也可以用。毕竟生成报表和正反向工程很有用。
零碎
PD中的CDM设计时,可以将所有需要的字段都定义好。然后在设计实体是直接取出来。PD提供了这样的统一管理的工具。在PD菜单栏-Model-Data Item下。
为了使自己设计的CDM看起来象样一点,可以从工具栏中,拖动一个Title。其显示的信息,是当前CDM的属性值。
为了使实体等Symbol看起来显眼和舒服。可以根据个人喜好进行外观上的调整。当前设计界面中,右键-Display Perferences中进行设置。还可以增加shadow效果。选中Symbol后,Ctrl+W。或者右键菜单。
为了使布局整齐。选中需要调整的Symbol后,菜单-Symbol-Align进行设置。快捷键:ctrl+UP,ctrl+Down,ctrl+Left,ctrl+Right即为上下左右对齐。
设计实体属性时注意的细节:M:表示强制非空;P:是否为主键;D:是否在模型中显示。gerenate:表示是否作为表生成。
默认情况下,CDM的实体会显示Identifier一栏。如果不想其显示出来,在右键-Display Perferences中ObjectView-Entity中设置。
关系的命名方法是:实体名1 实体名2。
关系中的角色(Role)表示联系线上一个方向上的含义。用一个动词来描述。Role只是起一个描述作用。
依赖(Dependency):表示在联系中一个实体的存在是否依赖于另一个实体。寄生实体(Dependent Entity)是一种部分地被另一实体确定的实体。在依赖联系中,一个实体与另一实体通过标识符相联系,当一个实体的存在没有另一个实体的存在作为参考就 不能唯一确定时,两个实体间就存在依赖联系。
主从表就是典型的依赖关系。
中间实体(Associative Entity):是为了解决多对多联系而产生的一个人工实体,能够为中间实体定义属性。用鼠标右键单击多对多联系线,在d出的菜单中选择“Change to entity”,能够把这个联系转换成连接两个实体的中间实体。
善于利用自动生成的中间实体,可以简化设计工作,提高数据库设计的正确性。
中间实体一般不用再加入新的字段。
牢记:外键是通过关系Relationship自动来建立的,不需要手动建立。不然会产生多余的键。所以设计时,关注实体本身的字段,以及实体间的关系,特别是多对多和依赖关系。
从CDM到PDM的转换需要注意:
不能改变Diagram的名称
在树状图中,如果钩选红色标出的Symbol表示覆盖修改,不钩选表示保护修改。
数据库为了保证数据完整性和一致性,提出了约束。即表约束,列约束以及参照完整性约束。通常数据库设计和程序开发不是绝对的分离的。所以前两者在实际开发过程中逐渐的完善。需要注意的还是参照完整性约束。
在PD中前两者的设定是对字段,后者是对关系。
参照完整性约束
限制(Restrict)。不允许进行修改或删除 *** 作。若修改或删除主表的主键时,如果子表中存在子记录,系统将产生一个错误提示。这是缺省的参照完整性设置。
置空(Set Null)。如果外键列允许为空,若修改或删除主表的主键时,把子表中参照的外键列设置为空值(NULL)。
置为缺省(Set Default)。如果指定了缺省值,若修改或删除主表的主键时,把子表中参照的外键设置为缺省值(Default)。
级联(Cascade)。把主表中主键修改为一个新的值时,相应修改子表中外键的值;或者删除主表中主键的记录时,要相应删除子表中外键的记录。
注意理解以上的约束时,抓住 *** 作的都是主表。子表的 *** 作都是相对主表来说的。 *** 作方式就是Update和Delete。
引用基础数据表的数据时,可以建立对应的视图。选中需要作为视图的表,菜单栏-Tools-Create View
PD支持对已有数据的表更新表结构。不过需要谨慎 *** 作,检查生成的SQL脚本。
PD也可以生成随机的测试数据。
触发器就是DBMS中提供的事件驱动机制。发生在表的Insert,Update和Delete。执行SQL语句或存储过程。
在PD中可以完成存储过程的编写,也便于管理。
逆向工程可以通过数据库脚本或者通过ODBC数据源来实现。
选择“database”——"change current DBMS"——选择要导出的数据库类型(SQL\oracl)
然后“database”——"generate database"导出就可以了
使用powerdesigner 反向生成PDM步骤:
PDM中的逆向工程是指从现有DBMS的用户数据库或现有数据库SQL脚本中生成PDM的过程。逆向工程有两种对象:
1)通过ODBC数据源连接数据库 2) 现有数据库sql脚本。
本文示例的系统环境如下:
1、 数据库已创建完毕,访问用户和密码设置完成。数据库为Oracle9i。
2、 ODBC数据源已由oracle 的Net Configuration Assistant 创建,本地网络命名服务“Database”。
3、 sql脚本示例crebassql。
4、 Powerdesigner95已安装完成。 一、 通过数据源连接数据库逆向工程生成PDM
1、 配置用户数据库连接参数
(a)选择Database->configure connections,转到system dsn标签,
(b)点击Add按钮,选数据库类型Oracle,点击完成。显示如下:输入DataSource Name“PDMTest”;
(c)输入ServerName“Database”, 配置完成。
(d)点击“Test Connect”输入ServerName“Database”,用户名和密码,若连接成功,显示如下:
以后每次连接,选择Databaseconnect,选择odbc数据源,输入ServerName“Database”,用户名和密码。若无提示,则说明连接成功。同时,可以通过DatabaseConnection Information 查看连接信息。
2、 设置逆向工程选项,生成pdm
创建一个PDM文件,选择与之匹配的数据库类型“oracle9i”。
选择DatabaseReverse Engineer Database,d出Database Reverse Engineering对话框,选Using an ODBC data source选ODBC数据源“PDMTest”
点击确定后,显示此数据库中所有表、视图、用户。根据需要选择后,转换成pdm。
首先我们需要创建一个测试数据库,为了简单,我们在这个数据库中只创建一个Student表和一个Major表其表结构和关系如下所示
看看怎样用PowerDesigner快速的创建出这个数据库吧
1现在开始使用PowerDesigner创建数据库,首先运行程序,进入主界面:
2File—New Model—Physical Data Model—Physical Diagram—Model name 设置为test,DBMS属性设置为Microsoft SQL Server 2005:
3首先用表格工具创建一个表格模板:
4双击表格模板,设置属性,我们首先设置Major表:
5设置好表名,点击Columns标签,设置字段属性,设置如图所示:
6因为MajorID字段我们要设置为自动增长,所以要设置它的高级属性,选择MajorID字段,点击属性按钮,在General面板中勾选上Identity复选框:
7确定后我们再创建一个Student表,字段设置如图所示:
8接着是为Student创建一个MajorID外键,使用PowerDesigner可以很轻松的完成这个工作,选择关系设置工具,在Student表上按住左键不放,拖拽至Major表,便可为Student表添加一个MajorID的外键:
9哈哈,现在测试表已经设置好了,接着设置一下我们要生成的数据库吧,这些表都将被创建到该数据库中,我们在设计面板空白处右键—Properties,在d出的属性设置对话框设置如下:
10好了,在此我们对新数据库的设置已经完成,但是在SQL中还是空空如也啊,我们要怎么把这边设计好的结构移植到SQLServer 2005中呢执行 *** 作:Database—Generate Database,设置好存储过程导出目录和文件名,点击确定即可:
11到你的导出目录,就可以看见导出的数据库创建存储过程了,打开SQL,执行一下,你就会看到数据库被神奇的创建好了:
PowerDesigner建立与数据库的连接,以便生成数据库和从数据库生成到PD中。[以Oracle 10G版为例]
第一步,打开PD15,找到Database,如图所示:
第二步,点击新建按钮,创建一个新的ODBC连接。
第三步,这里选择系统数据源,并选择Oracle
第四步,这里需要注意,服务器需要写的是Oracle客户端配置的服务名,也就是PL/SQL连接时所用的名称。不是IP地址。
第5步,测试是否连接成功。
至此,建立了数据库的链接,可以断开,也可以连接,同时可用于数据库的正向工程和逆向工程。
PowerDesigner 生成数据库
首先,因为PowerDesigner文件与数据库文件是完全不同的两种文件格式,
所以先要将它们转换成同样的数据结构。
用PowerDesigner的物理模型生成一个新的数据库。
以生成SQL SERVER 为例:
“Database”->”Generate Database”
此时数据库设计为Employee表(原始数据库结构):
然后,在输出目录会看到SQL脚本文件,新建一个数据库,并执行脚本。
现在改变一些设计,表结构如下(新数据库结构):
将EmpName的数据类型改为nvarchar(100), 添加DeptID列。
3 数据库架构比较工具
在网上找到了一些工具,但最后选择了Visual Studio(我的版本是2010)自带的工具。步骤如下:
31 新建架构比较:“数据“->”架构比较“->”新建架构比较“
32 选择源架构和目标架构
并确认
33 找出不同项,并修改如下图:
以上就是关于如何使用powerdesigner连接数据库生成er图全部的内容,包括:如何使用powerdesigner连接数据库生成er图、powerdesigner怎么用、powerdesigner导出sql后数据库怎么用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)