天津储鑫盛钢材现货供应商 发表于 2023-7-5 13:36:33

PowerDesigner反向导入表+PowerDesigner的ER图设计+PowerDesigner连接外键

使用PowerDesigner导入表+PowerDesigner画ER图+PowerDesigner设置外键

ps:
①ER图:就是PD中的 Physical Diagram
一、导入表,并设置备注为PD中的显示名称


[*]参考:https://blog.csdn.net/weixin_37530941/article/details/107331105
[*]利用建表语句sql导入表
1、新建数据库模型

https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705133656296-1615495487.png
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705133714956-1961482759.png
2、导入表——见参考


[*]最好每张表都把生成主键的名字修改了,不然会产生错误的字段
-- 建表语句1_未修改前的
CREATE TABLE "TABLE_1"
(
"COLUMN_11" CHAR(10),
"ID" CHAR(32) NOT NULL,
"AGE" NUMBER(22,6),
"C_2222" CHAR(10),
UNIQUE("AGE"),
NOT CLUSTER PRIMARY KEY("ID")
) STORAGE(ON "MAIN", CLUSTERBTR) ;

COMMENT ON COLUMN "TABLE_1"."AGE" IS 'CS_AA';
COMMENT ON COLUMN "TABLE_1"."COLUMN_11" IS 'CS_11';
COMMENT ON COLUMN "TABLE_1"."C_2222" IS 'CS_';
COMMENT ON COLUMN "TABLE_1"."ID" IS 'CS_DD';

-- 建表语句2_修改之后的
-- 主键的名字规则:PK_表名
CREATE TABLE "TABLE_1"
(
"COLUMN_11" CHAR(10),
"ID" CHAR(32) NOT NULL,
"AGE" NUMBER(22,6),
"C_2222" CHAR(10),
UNIQUE("AGE"),
constraint PK_CS1 PRIMARY KEY("ID")
) STORAGE(ON "MAIN", CLUSTERBTR) ;

COMMENT ON COLUMN "TABLE_1"."AGE" IS 'CS_AA';
COMMENT ON COLUMN "TABLE_1"."COLUMN_11" IS 'CS_11';
COMMENT ON COLUMN "TABLE_1"."C_2222" IS 'CS_';
COMMENT ON COLUMN "TABLE_1"."ID" IS 'CS_DD';修改详情:
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705133743841-803256240.png

[*]脚本

[*]使用字段备注当做pd中的显示名的脚本

Option Explicit

ValidationMode = True

InteractiveMode = im_Batch

Dim mdl ' the current model

' get the current active model

Set mdl = ActiveModel

If (mdl Is Nothing) Then

MsgBox "There is no current Model "

ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then

MsgBox "The current model is not an Physical Data model. "

Else

ProcessFolder mdl

End If

Private sub ProcessFolder(folder)

On Error Resume Next

Dim Tab 'running table

for each Tab in folder.tables

if not tab.isShortcut then

tab.name = tab.comment

Dim col ' running column

for each col in tab.columns

if col.comment="" then

else

col.name= col.comment

end if

next

end if

next

Dim view 'running view

for each view in folder.Views

if not view.isShortcut then

view.name = view.comment

end if

next

' go into the sub-packages

Dim f ' running folder

For Each f In folder.Packages

if not f.IsShortcut then

ProcessFolder f

end if

Next

end sub二、画图

1、参考——规范:

设计规范——有需要的私我。或者评论
2、新建ER图

https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705133857864-1694144174.png
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705133944837-627802249.png
3、连接有外键关系的两张表(同一张表出现在不同的ER图中的情况)

①工具栏中的这个图标,可以把拖入ER图的有外键关联的表连接起来。
——这个功能适用于,同一张表出现在不同的ER图中。
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134000131-1375342191.png
呼出界面:
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134023881-1026487782.png
②其他工具栏:
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134037070-1180595659.png
4、绘制外键的线

参考:https://www.somode.com/jiaocheng/36995.html
4.1、打开面板


[*]找到 References
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134055438-1936712874.png
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134107386-750154230.png
4.2、外键设置

①、如Table_2(从表) 中的 TABLE_ID 是 TABLE_1(主表) 的 ID 的外键。
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134119138-735885543.png
②、双击连线,设置如下:

[*]设置外键名字
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134128974-1936409361.png

[*]设置是否在生成sql的时候生成外键。(不生成表示:只有ER图展示,sql中不会有)
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134141126-280663924.png

[*]配置字段:选择子表、父表的字段
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134152717-1624028153.png
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134159666-2061002052.png

[*]验证
见①。子表的外键字段出现就是对的
4.3、显示外键线上的名字

参考:https://www.cnblogs.com/EasonJim/p/4715282.html
①结果
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134224241-1494948833.png
②操作
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134238069-1664353300.png
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134244043-1823985801.png
5、格式设置

5.1、把table1的格式弄到table2上。

https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134255840-846382224.png
5.2、给外键的线赋予格式

https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134304553-492641365.png
5.3、获取格式、应用格式

①结果:
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134313343-2053780218.png
②操作步奏:
1)表:
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134321256-413974289.png
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134330328-1633759212.png
2)线:
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134339018-557098873.png
https://img2023.cnblogs.com/blog/1848807/202307/1848807-20230705134347137-2107492345.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: PowerDesigner反向导入表+PowerDesigner的ER图设计+PowerDesigner连接外键