现在设计好数据库,生成sql的时候出现了问题(生成的sql无法把name转成commit)
因为使用mysql,勾选Generate name is empty comment选项无效,无法把name自动转换成commit。所以只好到网上查方法
'使用方法使用方法
'PowerDesigner->Tools->Execute Commands->Edit/Run Scripts
网上面的方法
Option Explicit
ValidationMode = True
InteractiveMode = im_Batch
Dim mdl
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)
Dim Tab
for each Tab in folder.tables
if not tab.isShortcut then
tab.comment=tab.name
Dim col
for each col in tab.columns
col.comment=col.name
next
end if
next
end sub
因为表和有些字段已经写了备注,所以使用这个方法的时候会被覆盖,所以只能自己修改逻辑,看了下vbscript语法,然后自己修改了下
Option Explicit
ValidationMode = True
InteractiveMode = im_Batch
Dim mdl
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)
Dim Tab
for each Tab in folder.tables
if not tab.isShortcut then
'去掉了表的注释覆盖'
Dim col
for each col in tab.columns
if col.comment = "" then '加入了判断'
col.comment=col.name
end if'结束'
next
end if
next
end sub
假如大家有自己的自定义需求的话可以在此模板上修改代码。
楼主参考地址 :https://blog.csdn.net/cpchengpeng/article/details/82184164 这里还有把commit转成name的vbscript代码,需要的朋友可以自取