16、ER设计工具--powerdesigner

entity-relationShip
1. 概念数据模型 (CDM)
对数据和信息进行建模,利用实体-关系图(E-R图)的形式组织数据,检验数据设计的有效性和合理性。(逻辑数据模型 (LDM):逻辑模型主要是使得整个概念模型更易于理解,同时又不依赖于具体的数据库实现,使用逻辑模型可以生成针对具体数据库管理系统的物理模型。逻辑模型并不是在整个步骤中必须的,可以直接通过概念模型来生成物理模型。)
2. 物理数据模型 (PDM)
基于特定DBMS,在概念数据模型、逻辑数据模型的基础上进行设计。由物理数据模型生成数据库,或对数据库进行逆向工程得到物理数据模型。
[img]http://dl2.iteye.com/upload/attachment/0107/0935/99ddcb84-ecff-341f-92ae-dc856a96fa14.png[/img]

一、创建数据模型
1、 File--> New Model-->Categories-->information-->Physical Data-->DBMS oracle11g-->ok
2、创建数据库
[img]http://dl2.iteye.com/upload/attachment/0107/1254/b930aa57-5104-3a0d-9131-fe9044f9bd60.png[/img]
[img]http://dl2.iteye.com/upload/attachment/0107/1258/0bde1ef7-3bbd-311f-af31-cba953b0ef7c.png[/img]
-->应用 -->确定
3、创建表空间
在pdm右键 new -->Tablespace ,输入显示名称和code
[img]http://dl2.iteye.com/upload/attachment/0107/1260/4afadcd3-1cd1-3944-bc11-6f1b196554cb.png[/img]
选择一个永久表空间
[img]http://dl2.iteye.com/upload/attachment/0107/1262/536ad319-d54a-3ebf-ba95-fa3e1043258d.png[/img]
参看preview后-->ok
4、创建表
在pdm右键 new -->Table ,输入显示名称和code
[img]http://dl2.iteye.com/upload/attachment/0107/1264/f004f9c4-177f-3509-927a-c5f1e118dd1a.png[/img]
[img]http://dl2.iteye.com/upload/attachment/0107/1266/38a93d31-21e5-3dd2-86f2-53d92dce1d44.png[/img]
表分区:
当表中的数据量不断增大,查询数据的速度就会变慢,应用程序的性能就会下降,这时就应该考虑对表进行分区。表进行分区后,逻辑上表仍然是一张完整的表,只是将表中的数据在物理上存放到多个表空间(物理文件上),这样查询数据时,不至于每次都扫描整张表。

4.1、创建序列
[img]http://dl2.iteye.com/upload/attachment/0107/1268/1f7d86a1-2e32-3a0d-87c5-40810fe7461e.png[/img]
4.2、创建用户
[img]http://dl2.iteye.com/upload/attachment/0107/1270/dad641e0-8070-3244-95a8-4acefd4ed509.png[/img]

4.3、通过palette来创建表
4.4、创建外键reference
用户表(子表) reference 部门表(父表)
利用palette添加,第一次出现子表主键生成了外键?往后就可以了。。
也可以这样:点击pdm右键 new->reference (user_reference_dept)


5、将数据模型转换为sql语言
Database-->Gennerate Datebase-->Genneral(填写生成文件名称和存放地址)-->Options(选择要生成sql的对象)-->Selection(选择要生成sql的table)-->preview -->ok
[img]http://dl2.iteye.com/upload/attachment/0107/1350/18e6a5ff-1cec-31ad-9023-f985fff0e576.png[/img]

可以去查看该文件:

6、配置oracle数据源
  64 位 ODBC 位置:C:\Windows\System32\odbcad32.exe
  64->32 位 ODBC 位置:C:\Windows\SysWOW64\odbcad32.exe

【Data Source Name】就 是你的ODBC数据源名称;
【Description】描述字段可不填;
【TNS Service Name】字段选是在Net Manager中添加的服务名,一版为默认的orcl。
【User ID】填写Oracle的用户名。
【Test Connection】测试ODBC是否能连上。

[img]http://dl2.iteye.com/upload/attachment/0107/1358/3f48fb11-b97e-3746-a1fe-cc0f69d472d1.png[/img]
ORACLE ODBC 用户数据源配置完成。可在【用户数据源】列表中看到刚添加的数据。

7、连接数据库,生成表
Database-->Connect
经过步骤6后,出现配置好的oracle_files文件
[img]http://dl2.iteye.com/upload/attachment/0107/1361/a2d8ddf2-c4b6-3e39-b14c-783bc5639acd.png[/img]
异常:点击modify的时候:
找不到 Oracle in OraDB12Home1 ODBC 驱动程序的安装例程。请重新安装驱动程序。

驱动程序的 ConfigDSN、ConfigDriver 或 ConfigTranslator 失败

在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配

网上说是jdk64位oracle32之间的冲突。。。。搞死人了。。
安装16.5的powerdesigner试试,因为我是oracle12,15的只支持到11g;

8、之后update,查看数据库。。

参考:http://wenku.baidu.com/link?url=Kyv_6fgViV5TY-lsPP_uoPJ2CJpV2JQilP5l5nYINHMd7XcyPIk0f7NUP5HbDw47PUk2BwmY2IdBAHa9xHc7utSNyssDSKpOZisHC2-gkAu
http://wenku.baidu.com/link?url=-MIlZhiq6H2XzpDay9o0YbezeXWW1ft8gBhIHiv2RH2zgsAjFS4_c1X8cbSDcFlpeCCI_8tkLzE7FZpQX96tXUjm0wkSbDj1okhybesC8rW


二、创建概念model
1、 File--> New Model-->Model types-->conceptual data model-->Conceptual Diagram-->OK

2、双击新建的CDM
[img]http://dl2.iteye.com/upload/attachment/0107/0937/893cba22-3331-34d8-9d64-d4b1b3df092e.png[/img]
在弹出的菜单中选择“Properties”属性项,在“General”标签里可以输入所建模型的名 称、代码、描述、创建者、版本以及默认的图表等等信息。在“Notes”标签里可以输入相关描述及说明信息。当然再有更多的标签,可以点击 "More>>"按钮。

创建实体
3、在CDM的图形窗口中,单击工具选项版上的Entity工具,再单击图形窗口的空白处,在单击的位置就出现一个实体符号。点击Pointer工具或右击鼠标,释放Entitiy工具。
[img]http://dl2.iteye.com/upload/attachment/0107/0939/855cfba9-33b0-3a33-94c5-bd1d01fe5cec.png[/img]

4、双击创建的实体,在窗口“General”标签中可以输入实体的名称、代码、描述等信息。
[img]http://dl2.iteye.com/upload/attachment/0107/0941/a7718202-35c4-3639-b1a2-703423b40ead.png[/img]

添加实体属性
5、添加实体属性
在上述窗口的“Attribute”选项标签上可以添加属性:
[img]http://dl2.iteye.com/upload/attachment/0107/0943/a93d527e-4cb9-3aee-a3ae-3fce0c54f0c8.jpg[/img]
P列表示该属性是否为主标识符;D列表示该属性是否在图形窗口中显示;M列表示该属性是否为强制的,即该列是否为空值。

定义属性的标准检查约束:
[img]http://dl2.iteye.com/upload/attachment/0107/0989/8130cb53-461f-3961-952d-5a2feaedab4f.png[/img]
在这个选项卡可以定义属性的标准检查约束,窗口中每项的参数的含义,如下
[img]http://dl2.iteye.com/upload/attachment/0107/0995/2c3f82f7-c363-3160-bfe7-50c6fb524734.png[/img]
[img]http://dl2.iteye.com/upload/attachment/0107/0997/5107ed4c-dc2e-3cfa-bd6c-fbac5176b188.png[/img]

建立联系
6、在图形窗口中创建两个实体后,单击“实体间建立联系”工具,单击一个实体,在按下鼠标左键的同时把光标拖至别一个实体上并释放鼠标左键,这样就在两个实体间创建了联系,右键单击图形窗口,释放Relationship工具。
[img]http://dl2.iteye.com/upload/attachment/0107/0966/e5ffa4af-9578-3d65-b123-c40f309bef5a.jpg[/img]

系统默认会给该关系一个命名Relationship_1,切换到鼠标指针模式,双击Relationship_1,即可打开关系的属性窗口,可以在General 选项卡中编辑


PowerDesigner - Error
This data item is already used.
菜单栏上的“tool”-〉Model Options-〉Model Setting
把右边的“Data Item”数据框中的“Unique code”选项框取消掉。

PowerDesigner中Name与Code同步的问题
解决方法如下:
选择Tools->GeneralOptions->Dialog项->取消右边“Name to Code mirroring”复选框。

你可能感兴趣的:(DB)