powerdesigner看这一篇就够了

1、通过数据库构建PDM

首先创建一个物理模型:file->new model

图片[1] - powerdesigner看这一篇就够了 - MaxSSL

Model name:物理模型名称,可以自定义命名,或者使用默认名称

DBMS:物理模型所匹配的数据库

点击确定,生成一个物理模型

图片[2] - powerdesigner看这一篇就够了 - MaxSSL

2、配置数据库连接

数据库配置支持三种方式:ODBC Machine、ODBC File Data Source、connection file

第一种方式,需要在自己的的计算机安装对应的驱动

控制面板->搜索odbc

图片[3] - powerdesigner看这一篇就够了 - MaxSSL

根据自己安装的powerdesigner是32位或者64安装对应的驱动

图片[4] - powerdesigner看这一篇就够了 - MaxSSL

下载对应的数据库连接驱动,然后安装,之后在该处点击添加,添加成功后到powerdesigner进行配置

Database->Configure connections

图片[5] - powerdesigner看这一篇就够了 - MaxSSL

点击添加数据库连接

图片[6] - powerdesigner看这一篇就够了 - MaxSSL

选择需要的驱动,点击下一页完成,配置数据库连接信息

图片[7] - powerdesigner看这一篇就够了 - MaxSSL

数据库名称、数据库服务地址、端口、用户、密码,然后点击Test,测试是否成功

图片[8] - powerdesigner看这一篇就够了 - MaxSSL

3、通过数据库生成PDM

Database->update model from database

图片[9] - powerdesigner看这一篇就够了 - MaxSSL

勾选刚才配置的数据库连接

图片[10] - powerdesigner看这一篇就够了 - MaxSSL

点击connect->确定,然后不同的数据库操作不同,pg数据库会有多个schema,勾选对应的表

图片[11] - powerdesigner看这一篇就够了 - MaxSSL

点击ok

图片[12] - powerdesigner看这一篇就够了 - MaxSSL

对应显示的列可以通过配置

tool->Display Preference

图片[13] - powerdesigner看这一篇就够了 - MaxSSL

选择Table

图片[14] - powerdesigner看这一篇就够了 - MaxSSL

图片[15] - powerdesigner看这一篇就够了 - MaxSSL

勾选需要显示的列,调整顺序

图片[16] - powerdesigner看这一篇就够了 - MaxSSL

配置之后展示情况

图片[17] - powerdesigner看这一篇就够了 - MaxSSL

可以发现name与code一致,name并没有展示中文

双击模型,查看Comment列是否有值

图片[18] - powerdesigner看这一篇就够了 - MaxSSL

如果该列没有值,进行sql修改

database->Edit current DBMS->Objects->colums

图片[19] - powerdesigner看这一篇就够了 - MaxSSL

查看sql是否正确查出comment的值,可以进行对应的修改,如果提示权限不足,不允许修改,可以到对应的目录,进行文件夹的权限修改,添加“修改”权限,完成以后

tool->Execute Commands->edit/run script

图片[20] - powerdesigner看这一篇就够了 - MaxSSL

Option Explicit ValidationMode = True InteractiveMode = im_BatchDim blankStrblankStr = Space(1)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 IfPrivate sub ProcessFolder(folder) On Error Resume NextDim Tab 'running table for each Tab in folder.tables if not tab.isShortcut then tab.name = tab.commentDim col ' running column for each col in tab.columns if col.comment = "" or replace(col.comment," ", "")="" Thencol.name = blankStrblankStr = blankStr & Space(1)elsecol.name = col.comment end ifnext end if nextDim 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

将该脚本复制进去,点击执行

图片[21] - powerdesigner看这一篇就够了 - MaxSSL

4、PDM生成数据库脚本

Database -> Generation Database

图片[22] - powerdesigner看这一篇就够了 - MaxSSL

图片[23] - powerdesigner看这一篇就够了 - MaxSSL

options选项根据对应的需求,选择是否需要生成删除表,用户等语句

图片[24] - powerdesigner看这一篇就够了 - MaxSSL

成功生成了脚本

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享