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反向生成之前,我们先说一下怎么 ...
随机推荐
- java基础面试题:try{}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
package com.swift; public class Try_Catch_Finally_Test { public static void main(String[] args) { /* ...
- HDU-3366-Count the string(KMP,DP)
Count the string Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tot ...
- Linux入门-第九周
1.判断UID是否大于等于500,如果为真就显示为普通用户,如果为假就显示为系统或管理用户 AWK简介:awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报 ...
- 微信公众帐号开发之一(java)
闲来没事,就记录一下微信公众平台的开发吧~ 其实微信公众平台开发没有想象中的那么困难,因为注册了微信公众平台帐号登录之后在开发者模式里有详细的文档,个人感觉介绍还是比较详细的. 微信公众平台订阅号和服 ...
- 初学Docker
1.基本概念Docker 包括三个基本概念镜像( Image )容器( Container )仓库( Repository )理解了这三个概念,就理解了 Docker 的整个生命周期. 2.Docke ...
- Fakeapp 入门教程(2):使用篇!
Fakeapp软件的使用主要分成了三个步骤, 使用之前请确保你的电脑配置还可以,推荐配置是:一张显存大于4G的N卡.Fakeapp是有支持CPU选项,但是用CPU跑非常慢. 获取脸部图片 训练模型 生 ...
- web前端的环境配置
1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源(如html 页 ...
- [译]The Python Tutorial#1. Whetting Your Appetite
[译]The Python Tutorial#Whetting Your Appetite 1. Whetting Your Appetite 如果你需要使用计算机做很多工作,最终会发现很多任务需要自 ...
- js中正则表达式与Python中正则表达式的区别
今天女票让我帮她写一个js中的正则,来提取电话号码,对于正则规则来说,js与python是基本没有区别的,重点的区别是在一些函数与方法中. python中的正则提取: import re str = ...
- android静默安装和智能安装(转)
Android 静默安装和智能安装的实现方法 http://blog.csdn.net/fuchaosz/article/details/51852442 Android静默安装实现方案,仿360手机 ...