PowerDesiger16与MySQL操作互转

【1】PowerDesigner添加MySQL数据源

PowerDesigner版本:16.5。电脑系统64位,添加数据源时使用MySQL64位ODBC连接器不行,安装MySQL32位可以。下载mysql-connector-odbc-5.3.6-win32.msi,然后安装即可。

步骤如下:

① Database—Configure Connections…
在这里插入图片描述
② 使用管理员身份添加数据源
在这里插入图片描述
在这里插入图片描述
③ 选择MySQL ODBC 5.3 Unicode Driver(why not ANSI ?)
在这里插入图片描述
MYSQL Connector/ODBC 提供了两个版本,一个是 ANSI driver 和 Unicode driver 两个版本。

Unicode driver 版本提供了更多字符集的支持,也就是提供了多语言的支持。而ANSI driver 版本是只针对有限的字符集的范围。

④ 添加数据库连接信息进行测试
在这里插入图片描述
再次打开Database–Configure Connections…如下图所示:
在这里插入图片描述


【2】连接MySQL导出PDM文件

① 连接建立好的MySQL数据源
在这里插入图片描述
在这里插入图片描述


② 选择需要导出的数据库
在这里插入图片描述

默认为全选,一定要先将全选去掉!否则模型中将会有数据源下所有库所有表!
在这里插入图片描述
然后再选择需要逆向的数据库,默认是没有选择的(上一步Deselect All效果),手动将需要的表打√。
在这里插入图片描述
在这里插入图片描述
然后导出即可!
在这里插入图片描述


③ 执行脚本将name从英文转为中文,即将comment–name

在这里插入图片描述

Option   Explicit   
ValidationMode   =   True   
InteractiveMode   =   im_Batch  
  
Dim   mdl   '   the   current   model  
  
'   get   the   current   active   model   
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)   
On Error Resume Next  
      Dim   Tab   'running     table   
      for   each   Tab   in   folder.tables   
            if   not   tab.isShortcut   then   
                  tab.name   =   tab.comment  
                  Dim   col   '   running   column   
                  for   each   col   in   tab.columns   
                  if col.comment="" then  
                  else  
                        col.name=   col.comment   
                  end if  
                  next   
            end   if   
      next  
  
      Dim   view   'running   view   
      for   each   view   in   folder.Views   
            if   not   view.isShortcut   then   
                  view.name   =   view.comment   
            end   if   
      next  
  
      '   go   into   the   sub-packages   
      Dim   f   '   running   folder   
      For   Each   f   In   folder.Packages   
            if   not   f.IsShortcut   then   
                  ProcessFolder   f   
            end   if   
      Next   
end   sub  

在这里插入图片描述


④ 调整显示格式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
最终效果图如下:
在这里插入图片描述


【3】创建PDM并同步到MySQL数据库

① 创建物理数据模型

在这里插入图片描述

② 创建表

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
③ 添加列、主键等

表上面右键–columns或者在表模型上双击即可打开编辑界面。
在这里插入图片描述
④ 添加表外键引用

同前几步,添加表tb_log如下:
在这里插入图片描述
在这里插入图片描述


⑤ 同步到MySQL

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里选择目标数据库。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
同样可以在连接MySQL数据源情况下,修改MySQL数据库表结构,同步更新Model。
在这里插入图片描述


【4】PDM引用外部PDM的表并设置相对路径

① pdm引用外部pdm

项目用了多个库,每个库导出一个pdm,不同pdm的表之间有引用关系。

第一步,在powerdesigner中打开目标对象,如下所示:

在这里插入图片描述

其中pdm2的tb_login表中的login_name引用了pdm1中tb_user表的name字段。

第二步,从pdm1拷贝tb_user表以Paste as Shorcut的方式粘贴到pdm2,然后创建引用。
在这里插入图片描述
② 设置相对路径

在第一步中虽然创建了外部引用,但是target model路径是绝对路径。这样当在其他电脑打开或者上传到SVN时,就会出现找不到的情况。故而,需要将其设置为相对路径。

将①中的窗口关闭,单独打开pdm2,然后如下操作:
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流烟默

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值