目的:提高数据库创建表格效率
测试数据库: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
======================华丽的分割线====================
下面的都是有可能用的着的
6.不同数据库之间的转化
案列: orcal—》mysql
做法:DatabaseChange Current DBMS选择要转换成的目标数据库
结果:
然后可以使用notepad++,将字母转换成小写就可以了。因为MySQL是区分大小写的。
7.Orcale 建立自增主键
双击表打开属性窗口勾选P主键复选框双击设置为主键的字段(在行的头部双击)或者单击上方的属性图标按钮在打开的窗口下方(注意不同数据库不一样,sql server是identity复选框)选择sequence,如果没有则单击旁边的新建按钮创建一个sequence。
8.导入sql脚本生成相应的数据库表模型图
FileReverse EngineerDatabase…修改模块名称并选择DBMS
Using script files点击下方图标(Add Files)来添加sql脚本文件确定
更多可参考别人的博客看看:https://blog.csdn.net/qq_39478853