PowerDesigner 导出的SQL脚本不带字段注释,解决办法
Posted 皮豪
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PowerDesigner 导出的SQL脚本不带字段注释,解决办法相关的知识,希望对你有一定的参考价值。
问题
PowerDesigner默认导出来的SQL没有注解。这一点是因为你没有添加Comment。
新问题
如果每个表都需要添加一个重复的Comment,那样太麻烦了。
所以可以直接改他的模板,把Comment换成Name。
原理 类似于 comment $comment => comment $name
菜单栏:Database > Edit Current DBMS... >
找到图中的ADD,
默认的模板是
%20:COLUMN% [%National%?national ]%DATATYPE%[%Unsigned%? unsigned][%ZeroFill%? zerofill][ [.O:[character set][charset]] %CharSet%][.Z:[ %NOTNULL%][%R%?[%PRIMARY%]][%IDENTITY%? auto_increment:[ default %DEFAULT%]][ comment %.q:@OBJTLABL%]]
改成
%20:COLUMN% [%National%?national ]%DATATYPE%[%Unsigned%? unsigned][%ZeroFill%? zerofill][ [.O:[character set][charset]] %CharSet%][.Z:[ %NOTNULL%][%R%?[%PRIMARY%]][%IDENTITY%? auto_increment:[ default %DEFAULT%]][ comment %.q:COLNNAME%]]
其实就是把 %.q:@OBJTLABL% 改成了 %.q:COLNNAME%。
PowerDesigner 创建表格及导出SQL语句
目的:提高数据库创建表格效率
测试数据库:orcale
1.新建物理模型。
右键点击workplace,new一个物理模型并指定数据库。
2.创建表格
设置字段属性
新增字段属性(比如加字段注释)
3.导出sql语句及预览
初次使用会发现orcale的sql语句,带双引号、字母大写,后面有解决方案
也可在Options选项卡里,可以个性化选择和配置sql脚本,如取消外键,去除drop语句等。
4.去除双引号
选择Database->Edit Current DBMS菜单
选中General选项卡,依次打开Script->Sql->Fomat->CaseSensitivityUsingQuote
5.字母批量大写转换
直接跑脚本,找到Tools – Excute Commands – Edit/Run Script,或者直接按Ctrl+Shift+X调出脚本执行窗口,输入下边的代码就可以了。
转换到大写的VB代码
Option Explicit
ValidationMode = True
InteractiveMode = im_Batch
Dim mdl ‘ 当前模型
‘ 获取当前模型
Set mdl = ActiveModel
If (mdl Is Nothing) Then
MsgBox "没有打开一个模型"
ElseIf Not mdl.IsKindOf(PdPDM.cls_Model) Then
MsgBox "当前模型不是一个PDM"
Else
‘调用处理程序
ProcessFolder mdl
End If
‘调用的处理程序
Private sub ProcessFolder(folder)
Dim Tab ‘要处理的表
for each Tab in folder.Tables
‘ if not Tab.isShortcut then
‘ Tab.code = tab.name
‘表名处理,前边添加前缀,字母小写
Tab.name= UCase(Tab.name)
Tab.code= UCase(Tab.code)
Dim col ‘ 要处理的列
for each col in Tab.columns
‘列名称和code全部小写,大写诗UCase
col.code= UCase(col.code)
col.name= UCase(col.name)
next
‘end if
next
‘ 处理视图
‘ Dim view ‘running view
‘ for each view in folder.Views
‘ if not view.isShortcut then
‘ view.code = view.name
‘ end if
‘ next
‘ 递归进入 sub-packages
Dim f ‘ sub folder
For Each f In folder.Packages
if not f.IsShortcut then
ProcessFolder f
end if
Next
end sub
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
======================华丽的分割线====================
下面的都是有可能用的着的
6.不同数据库之间的转化
案列: orcal—》mysql
做法:Database→Change Current DBMS→选择要转换成的目标数据库
结果:
然后可以使用notepad++,将字母转换成小写就可以了。因为MySQL是区分大小写的。
7.Orcale 建立自增主键
双击表打开属性窗口→勾选P主键复选框→双击设置为主键的字段(在行的头部双击)或者单击上方的属性图标按钮→在打开的窗口下方(注意不同数据库不一样,sql server是identity复选框)选择sequence,如果没有则单击旁边的新建按钮创建一个sequence。
8.导入sql脚本生成相应的数据库表模型图
File→Reverse Engineer→Database…→修改模块名称并选择DBMS
Using script files→点击下方图标(Add Files)来添加sql脚本文件→确定
以上是关于PowerDesigner 导出的SQL脚本不带字段注释,解决办法的主要内容,如果未能解决你的问题,请参考以下文章