200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > pdm生成java_PowerDesigner通过SQL语句生成PDM文件并将name和comment进行互相转换

pdm生成java_PowerDesigner通过SQL语句生成PDM文件并将name和comment进行互相转换

时间:2021-02-11 16:41:12

相关推荐

pdm生成java_PowerDesigner通过SQL语句生成PDM文件并将name和comment进行互相转换

本篇文章主要介绍了PowerDesigner通过SQL语句生成PDM文件并将name和comment进行互相转换 超详细过程(图文),具有一定的参考价值,感兴趣的小伙伴们可以参考一下

1.软件准备

软件:Navicat 11.1,Powerdesigner 15

2.安装步骤

第一步:将要生成的数据库导出为sql文件

第二步:打开PowerDesigner选择File-->Reverse Engineer --> Database...

第三步:选择MySQL5.0数据库

第四步:找到第一步生成的Sql文件,点击确定即可

PowerDesigner中NAME和COMMENT的互相转换,需要执行语句

由于PDM 的表中 Name 会默认=Code 所以很不方便, 所以需要将 StereoType 显示到表的外面来

打开[工具]->[显示属性](英文:Display Preferences) ->Content->Table->右边面板Columns框中 勾选: StereoType ,这样再在 StereoType中填入code字段相同内容就会显示在图形界面上了

使用说明: 在【Tools】-【Execute Commands】-【Edit/Run Script】 下。输入下面你要选择的语句即可,也可以保存起来,以便下次使用,后缀为.vbs。

需要注意的问题是:运行语句时必须在Module模式下,如果是导出报表时执行会出现错误提示。

1.Name转到Comment注释字段。一般情况下只填写NAME,COMMENT可以运行语句自动生成。

将该语句保存为name2comment.vbs

'把pd中那么name想自动添加到comment里面'如果comment为空,则填入name;如果不为空,则保留不变,这样可以避免已有的注释丢失.

Option ExplicitValidationMode= TrueInteractiveMode=im_BatchDim mdl 'the current model

'get the current active model

Set mdl =ActiveModelIf (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."

ElseProcessFolder mdlEnd If

'This routine copy name into comment for each table, each column and each view'of the current folder

Private subProcessFolder(folder)Dim Tab 'running table

for each Tab infolder.tablesif not tab.isShortcut then

if trim(ment)="" then'如果有表的注释,则不改变它.如果没有表注释.则把name添加到注释里面.

ment = tab.nameend if

Dim col 'running column

for each col in tab.columnsif trim(ment)="" then '如果col的comment为空,则填入name,如果已有注释,则不添加;这样可以避免已有注释丢失.

ment=col.nameend if

next

end if

next

Dim view 'running view

for each view infolder.Viewsif not view.isShortcut and trim(ment)="" ment=view.nameend if

next

'go into the sub-packages

Dim f 'running folder

For Each f Infolder.Packagesif not f.IsShortcut thenProcessFolder fend if

Next

end sub

2.将Comment内容保存到NAME中,comment2name.vbs 实习互换。语句为:

Option ExplicitValidationMode= TrueInteractiveMode=im_BatchDim mdl 'the current model

'get the current active model

Set mdl =ActiveModelIf (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."

ElseProcessFolder mdlEnd If

Private subProcessFolder(folder)On Error Resume Next

Dim Tab 'running table

for each Tab infolder.tablesif not tab.isShortcut then

tab.name = mentDim col 'running column

for each col in tab.columnsif ment="" then

elsecol.name=mentend if

next

end if

next

Dim view 'running view

for each view infolder.Viewsif not view.isShortcut thenview.name=mentend if

next

'go into the sub-packages

Dim f 'running folder

For Each f Infolder.Packagesif not f.IsShortcut thenProcessFolder fend if

Next

end sub

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。