PowerDesigner反向生成数据库模型(MySql篇)
目录:
- 数据库的反向生成模型
- 模型的Cooment注释显示
步骤一:下载odbc驱动并进行安装:
(1)下载
mysql-connector-odbc-5.3.4-win32
注意:不管电脑是32位,还是64位,统一安装32位即可。
(2)安装
步骤二:odbcad32.exe添加数据源
找到C:\Windows\SysWOW64目录下找到odbcad32.exe这个文件
双击打开,弹出ODBC数据源管理界面
点击添加按钮,在弹出的窗口中选中,安装好的驱动:
点击完成,弹出数据库信息创建窗体:
点击后Ok后,即可以看到新增加了选项:
配置完成。
步骤三:数据库导出为Sql脚本文件
步骤四:打开PowerDesigner软件,进行导入生成模型
A、选择菜单,导入数据源
B.选择数据库版本
C.点击添加Sql文件
D.点击确定后,即可进行转换,生成想要的数据库模型
步骤五,设置显示备注信息:
A、双击表,进入编辑模式,注意:表和列记得添加注释,如下图所示:
点击下图按钮:
B、勾选Comment的多选框
C、打开执行脚本编辑窗口
D、执行以下VBS脚本:
Option Explicit
ValidationMode = True
InteractiveMode = im_Batch
Dim blankStr
blankStr = Space()
Dim mdl ' the current model<span style="color: #008000;">'</span><span style="color: #008000;"> get the current active model </span>
<span style="color: #0000ff;">Set</span> mdl =<span style="color: #000000;"> ActiveModel
</span><span style="color: #0000ff;">If</span> (mdl <span style="color: #0000ff;">Is</span> <span style="color: #0000ff;">Nothing</span>) <span style="color: #0000ff;">Then</span>
<span style="color: #0000ff;">MsgBox</span> <span style="color: #800000;">"</span><span style="color: #800000;">There is no current Model </span><span style="color: #800000;">"</span>
<span style="color: #0000ff;">ElseIf</span> <span style="color: #0000ff;">Not</span> mdl.IsKindOf(PdPDM.cls_Model) <span style="color: #0000ff;">Then</span>
<span style="color: #0000ff;">MsgBox</span> <span style="color: #800000;">"</span><span style="color: #800000;">The current model is not an Physical Data model. </span><span style="color: #800000;">"</span>
<span style="color: #0000ff;">Else</span><span style="color: #000000;">
ProcessFolder mdl
</span><span style="color: #0000ff;">End</span> <span style="color: #0000ff;">If</span> <span style="color: #0000ff;">Private</span> <span style="color: #0000ff;">sub</span><span style="color: #000000;"> ProcessFolder(folder)
</span><span style="color: #0000ff;">On</span> <span style="color: #0000ff;">Error</span> <span style="color: #0000ff;">Resume</span> <span style="color: #0000ff;">Next</span>
<span style="color: #0000ff;">Dim</span> <span style="color: #0000ff;">Tab</span> <span style="color: #008000;">'</span><span style="color: #008000;">running table </span>
<span style="color: #0000ff;">for</span> <span style="color: #0000ff;">each</span> <span style="color: #0000ff;">Tab</span> <span style="color: #0000ff;">in</span><span style="color: #000000;"> folder.tables
</span><span style="color: #0000ff;">if</span> <span style="color: #0000ff;">not</span> <span style="color: #0000ff;">tab</span>.isShortcut <span style="color: #0000ff;">then</span>
<span style="color: #0000ff;">tab</span>.name = <span style="color: #0000ff;">tab</span><span style="color: #000000;">.comment
</span><span style="color: #0000ff;">Dim</span> col <span style="color: #008000;">'</span><span style="color: #008000;"> running column </span>
<span style="color: #0000ff;">for</span> <span style="color: #0000ff;">each</span> col <span style="color: #0000ff;">in</span> <span style="color: #0000ff;">tab</span><span style="color: #000000;">.columns
</span><span style="color: #0000ff;">if</span> col.comment = <span style="color: #800000;">""</span> <span style="color: #0000ff;">or</span> <span style="color: #0000ff;">replace</span>(col.comment,<span style="color: #800000;">"</span> <span style="color: #800000;">"</span>, <span style="color: #800000;">""</span>)=<span style="color: #800000;">""</span> <span style="color: #0000ff;">Then</span><span style="color: #000000;">
col.name </span>=<span style="color: #000000;"> blankStr
blankStr </span>= blankStr & <span style="color: #0000ff;">Space</span>(<span style="color: #800080;">1</span><span style="color: #000000;">)
</span><span style="color: #0000ff;">else</span><span style="color: #000000;">
col.name </span>=<span style="color: #000000;"> col.comment
</span><span style="color: #0000ff;">end</span> <span style="color: #0000ff;">if</span>
<span style="color: #0000ff;">next</span>
<span style="color: #0000ff;">end</span> <span style="color: #0000ff;">if</span>
<span style="color: #0000ff;">next</span> <span style="color: #0000ff;">Dim</span> view <span style="color: #008000;">'</span><span style="color: #008000;">running view </span>
<span style="color: #0000ff;">for</span> <span style="color: #0000ff;">each</span> view <span style="color: #0000ff;">in</span><span style="color: #000000;"> folder.Views
</span><span style="color: #0000ff;">if</span> <span style="color: #0000ff;">not</span> view.isShortcut <span style="color: #0000ff;">then</span><span style="color: #000000;">
view.name </span>=<span style="color: #000000;"> view.comment
</span><span style="color: #0000ff;">end</span> <span style="color: #0000ff;">if</span>
<span style="color: #0000ff;">next</span> <span style="color: #008000;">'</span><span style="color: #008000;"> go into the sub-packages </span>
<span style="color: #0000ff;">Dim</span> f <span style="color: #008000;">'</span><span style="color: #008000;"> running folder </span>
<span style="color: #0000ff;">For</span> <span style="color: #0000ff;">Each</span> f <span style="color: #0000ff;">In</span><span style="color: #000000;"> folder.Packages
</span><span style="color: #0000ff;">if</span> <span style="color: #0000ff;">not</span> f.IsShortcut <span style="color: #0000ff;">then</span><span style="color: #000000;">
ProcessFolder f
</span><span style="color: #0000ff;">end</span> <span style="color: #0000ff;">if</span>
<span style="color: #0000ff;">Next</span>
<span style="color: #0000ff;">end</span> <span style="color: #0000ff;">sub</span> </pre>
E、执行后,即可发现注释已经正常现示:
步骤六:显示原字段名
点击Ok后,会弹出确认框,默认选择确定后即可看到效果:
步骤七:更改显示的顺序:
调整后效果:
数据库反向生成模型结束!
PowerDesigner反向生成数据库模型(MySql篇)的更多相关文章
- PowerDesigner反向生成Mysql数据原型
PowerDesigner反向生成Mysql数据原型 注意事项: (1)JVM 要32位的. (2)需配置JAVA_HOME环境变量指向所需JVM. (3)需配置CLASSPATH环境变量执行 MyS ...
- PowerDesigner反向生成物理数据模型
什么是PowerDesigner Power Designer 是Sybase公司的CASE工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程.利用Power De ...
- PowerDesigner反向生成PDM和name与注释互换
Option Explicit ValidationMode = True InteractiveMode = im_Batch Dim mdl 'the current model 'get the ...
- python反向生成数据库模型类
之前去的一家公司,去的时候项目已经好了,但是需要我根据数据库做一个后台管理系统,管理用户和其他的一些数据. 直接说方法 django框架 python manage.py inspectdb > ...
- 利用powerdesigner反向数据库结构,生成ER图
参考月下狼~图腾~:<利用powerdesigner反向数据库结构,生成ER图> https://www.zybuluo.com/Jpz/note/123582 首先新建一个"P ...
- PowerDesigner连接Oracle数据库(32位)反向生成物理数据模型
PowerDesigner可以连接Oracle数据库进行反向生成物理数据模型,本文演示操作过程. 环境说明: 1)Windows8.1,Oracle11R2 32位. 2)PowerDesigner1 ...
- PowerDesigner中SQL文件、数据库表反向生成PDM
1 反向生成PDM 1) 创建一个空的PDM模型(选择相应的DBMS): 2) 选择[Database]--[Update Model from Database ...
- MyEclipse 从数据库反向生成Hibernate实体类
第一个大步骤 window-->open Perspective-->MyEclipse Java Persistence 进行了上面的 操作后会出现一个视图DB Brower:MyEcl ...
- 数据库表反向生成(二) Django ORM inspectdb
在前一篇我们说了,mybatis-generator反向生成代码. 这里我们开始说如何在django中反向生成mysql model代码. 我们在展示django ORM反向生成之前,我们先说一下怎么 ...
随机推荐
- Mybatis自查询递归查找子
先看一下数据库 主键id,名称product_code,父parent,和kind 设计菜单类 setter,getter Dao public interface ProductMapper { L ...
- Angular2 Service获取json数据
在Angular2框架下一般交互解析json是要用到Service的,其实除了Service还是很多的,今天先写个最简单的前后端数据交互 嗯~~ 首先我先在app包下直接创建Service 好了 这里 ...
- Mysql占用内存过高的优化过程
一.环境说明: 操作系统:CentOS 6.5 x86_64 数据库:Mysql 5.6.22 服务器:阿里云VPS,32G Mem,0 swap 二.问题情况: 1.某日发现公司线上系统的Mysql ...
- 用jq给img添加error事件
<img src="xxxx.jpg" alt="" /> <script> $(document).ready(function(){ ...
- JZOJ 100029. 【NOIP2017提高A组模拟7.8】陪审团
100029. [NOIP2017提高A组模拟7.8]陪审团 Time Limits: 1000 ms Memory Limits: 131072 KB Detailed Limits Got ...
- 大道至简读后感——JAVA伪代码
import.java.Dadaozhijain public class YuGongYiShan { //愚公移山 愚公={项目管理人员}: 原始需求={惩山北之塞,出入之迂也}: 沟通方式={聚 ...
- 科学计算库Numpy——数组生成
等差数组 使用np.arange()或np.linspace()生成元素是等差数列的数组. 以10为底的数组 使用np.logspace()生成元素是以10为底的数组. 数组扩展 使用np.meshg ...
- kubernetes dashboard permission errors
kubernetes dashboard 的权限错误 warning configmaps is forbidden: User "system:serviceaccount:kube-sy ...
- Memory loss【记忆缺失】
Memory Loss Losing your ability to think and remember is pretty scary. We know the risk of dementia ...
- HDU 1506 Largest Rectangle in a Histogram(单调栈、笛卡尔树)
题意:给定n个连续排列的矩形的高,矩形的宽都为1.问最大矩形覆盖. 例如:n = 7,h[i] = (2 1 4 5 1 3 3),最大覆盖为8. Sample Input 7 2 1 4 5 1 3 ...