教你mysql 如何生成pdm

[复制链接]

1275

主题

1275

帖子

1013

积分

金牌会员

Rank: 6Rank: 6

积分
1013
分享到:
发表于 2022-6-9 11:14:02 | 显示全部楼层 |阅读模式
下文给大家带来mysql" target="_blank" >mysql 如何生成pdm,希望能够给大家在实际运用中带来一定的帮助,MYSQL涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用Vecloud在行业内累计的经验来做一个解答。
1.条件
1.1 工具powerDesigner16.5
1.2 mysql数据库地址或脚本
1.3 mysql-connector-odbc-5.3.4-winx64.msi

2.操作步骤
2.1 database > change DBMS 选择Mysql5.0
2.2 打开powerDesigner16.5工具, file > reverse Engineer > database

确定,则生成对应的pdm.

3.图形列表中展示注释
'*File:comment2name.vbs'*Purpose:在PowerDesigner的PDM图形窗口中显示数据列的中文注释'*Title:将字段的comment赋值到字段的name中'*Category:打开物理模型,运行本脚本(Ctrl+Shift+X)'*Copyright:[email protected],2006/07/25.'*Author:foxzz'*Created:'*Modified:'*Version:1.0'*Comment:遍历物理模型中的所有表,将字段的comment赋值到字段的name中。'在将name置换为comment过程中,需要考虑的问题'1、name必须唯一,而comment有可能不唯一。'处理办法是如果字段的comment重复,则字段的name=comment+1、2、3...'2、comment值有可能为空,这种情况下对字段的name不处理。'针对Oracle数据库,将commentoncolumn字段名称is'';添加到C:/pdcomment.txt文件中。'在补充comment完毕后,便于在数据库中执行'******************************************************************************OptionExplicitValidationMode=TrueInteractiveMode=im_BatchDimsystem,fileSetsystem=CreateObject("Scripting.FileSystemObject")DimForReading,ForWriting,ForAppending'打开文件选项ForReading=1'只读ForWriting=2'可写ForAppending=8'可写并追加'打开文本文件Setfile=system.OpenTextFile("C:/pdcomment.txt",ForWriting,true)'判断当前model是否物理数据模型DimmdlSetmdl=ActiveModelIf(mdlIsNothing)ThenMsgBox"处理对象无模型"ElseIfNotmdl.IsKindOf(PdPDM.cls_Model)ThenMsgBox"当前模型不是物理数据模型"ElseProcessFoldermdl,fileEndIffile.Close'******************************************************************************PrivatesubProcessFolder(folder,file)Dimi,j,ki=0:j=0:k=0'列数组,记录字段里不重复的commentDimColumnComment()DimColumnCommentNumber()ReDimPreserveColumnComment(i)ReDimPreserveColumnCommentNumber(i)Dimtbl'当前表Dimcol'当前字段dimcurComment'当前字段comment'处理模型中的表foreachtblinfolder.tablesifnottbl.isShortcuttheniflen(trim(tbl.comment))<>0then'可以在这里显示table的comment'tbl.name=tbl.name+"("+trim(tbl.comment)+")"endif'处理表中的列foreachcolintbl.columnsk=0curComment=trim(col.comment)iflen(curComment)<>0then'遍历相异的comment数组forj=0toiifColumnComment(j)=curCommentthen'如果找到相同的comment,则相关计数器加1ColumnCommentNumber(j)=ColumnCommentNumber(j)+1k=jendifNext'如果没有相同的comment,则k=0,此时ColumnCommentNumber(0)也为0'否则ColumnCommentNumber(k)不为0ifColumnCommentNumber(k)<>0thencol.name=curComment&cstr(ColumnCommentNumber(k))elsecol.name=curComment'ColumnComment(0)、ColumnCommentNumber(0)永远为空'将相异的comment记录添加到数组中i=i+1ReDimPreserveColumnComment(i)ReDimPreserveColumnCommentNumber(i)ColumnComment(i)=curCommentColumnCommentNumber(i)=0endifelse'写入文件中file.WriteLine"commentoncolumn"+tbl.name+"."+col.code+"is'';"endifnextendif'由于不同表的name允许相同,因此此时重新初始化。'因为ColumnComment(0)、ColumnCommentNumber(0)为空,可以保留ReDimPreserveColumnComment(0)ReDimPreserveColumnCommentNumber(0)i=0:j=0:k=0nextDimview'当前视图foreachviewinfolder.Viewsifnotview.isShortcutthen'可以在这里显示view的comment'view.name=view.commentendifnext'对子目录进行递归Dimsubpackage'folderForEachsubpackageInfolder.Packagesifnotsubpackage.IsShortcutthenProcessFoldersubpackage,fileendifNextendsub

tools > excute commands > Edit/Run scripts

使用高级回帖 (可批量传图、插入视频等)快速回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表