亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

powerdesigner逆向工程生成PDM時的列注釋解決方

系統 1879 0

在用powerdesigner逆向工程生成PDM時,列注釋(ColumnComment)始終無法生成,歷經數小時的探索,找到一個折衷的方法,現分享如下。并希望有高手指點更好的方法。

邀月使用的是Powerdesigner 15.2,數據庫為SQL Server 2008 r2

方法如下:

1、在PowerDesigner界面-File-Reverse Engineer-Database,然后選擇一個DBMS,我這里選取一個由系統默認的SQL Server 2008 DBMS修改而來的SQL_2008_MyDefine。

選好odbc,輸入正確的連接串,選擇數據庫及表。

生成效果:Name為英文,且Comment列為空。

而我們希望的是Name列為中文,Comment為中文。

查看了下在線幫助,發現在SQL_2008_MyDefine::Script/Objects/Column/SqlListQuery下的Value值如下:

注意該值中上面是PDM對應的列名,下面是從SQL數據庫中取到的相關屬性值。其中“

(select convert(varchar(8000), value) from ::fn_listextendedproperty(NULL, 'user', u.name, 'table', o.name, 'column', c.name) where name = 'MS_Description') as colnE,

”是可以取到Comment值的,可是生成的PDM為什么Comment列為空呢?嘗試修改該SQL語句,將語句提取出來,也可以獲取結果:

后來發現,直接用生成表的SQL,而不是用數據庫就可以生成注釋。如下圖:

但字段類型全亂了。

難道Powerdesigner真的這么弱嗎?google了一下,看到官方文檔:

http://manuals.sybase.com/onlinebooks/group-pd/pdd1100e/advanced/@Generic__BookTextView/1302;hf=0

里面有關于SqlListQuery的解釋。

再看看上面的SQL語句,突然想到,既然可以在SQL查詢出結果,那么出錯一定在生成PDM的時候,

在SQL_2008_MyDefine::Script/Objects/Column中看到這么一段:

將上面的Value值中上面的一行中“Comment”修改為“COLNNAME”會如何?即

{OWNER, TABLE, S, COLUMN, DTTPCODE, LENGTH, SIZE, PREC, COMPUTE, NOTNULL, IDENTITY, DOMAIN, DEFAULT, ExtIdentitySeedInc, COMMENT, ExtCollation, ExtIdtNotForReplication, ExtDeftConstName, Sparse, FileStream, ExtRowGuidCol}改為

{OWNER, TABLE, S, COLUMN, DTTPCODE, LENGTH, SIZE, PREC, COMPUTE, NOTNULL, IDENTITY, DOMAIN, DEFAULT, ExtIdentitySeedInc, COLNNAME , ExtCollation, ExtIdtNotForReplication, ExtDeftConstName, Sparse, FileStream, ExtRowGuidCol}

結果生成如下:

同理將SQL_2008_MyDefine::Script/Objects/Table/SqlListQuery下的Value的第一行中

{OWNER, TABLE, TABLE_TYPE, Comment }的Comment改為{OWNER, TABLE, TABLE_TYPE, TNAME }

生成結果,如下:

至此,我的基本目的,已經達到了,雖然沒有直接生成Comment列,但可以通過以下vbs腳本,從Name列生成Comment列:

'代碼一:將name生成comment的腳本

仔細思索:為什么從SQL生成的腳本有Comment,可是到生成PDM時為什么沒有轉化成功呢?是否Comment名稱不對應?

于是將 原來的 COMMENT 加上 COLNNAME ,同時在下面的SQL語句中增加一列與COMMENT相同的值:

(select convert(varchar(8000), value) from ::fn_listextendedproperty(NULL, 'user', u.name, 'table', o.name, 'column', c.name) where name = 'MS_Description') as colnF,

如下圖:

這樣,Name列和Comment同時生成,終于OK!

邀月注:本文版權由邀月和CSDN共同所有,轉載請注明出處。
助人等于自助! 3w@live.cn


powerdesigner逆向工程生成PDM時的列注釋解決方案


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲精品综合一区二区三区在线 | 久青草国产在线 | 台湾一级毛片免费播放 | 97影院午夜在线观看琪琪 | 四虎成人免费观看在线网址 | 99视频在线免费 | 久久成年人| 四虎欧美永久在线精品免费 | 九九99久久精品午夜剧场免费 | 一级特黄性色生活片一区二区 | 亚洲欧美综合图区官网 | 欧美日韩视频在线播放 | 四虎新地址| 99热久久国产精品 | 中国漂亮护士一级毛片 | 精产网红自拍在线 | 毛茸茸性毛茸茸大b | 久久久国产精品免费视频 | 日日摸夜夜夜夜夜添 | 欧美一级日韩在线观看 | 日韩毛片在线看 | 成人毛片免费免费 | 国产在线短视频 | 欧美亚洲一区二区三区在线 | 免费一级毛片在线播放欧美 | 久久香蕉国产线看观看乱码 | 欧美日本另类xxx乱大交 | 四虎影视国产精品亚洲精品hd | 中文字幕一区二区三区四区五区人 | 国产精品美女www爽爽爽视频 | 五月天婷婷激情网 | 亚洲国产成人久久一区二区三区 | 99久久精品国产交换 | 94在线 | 久久亚洲美女久久久久 | 国产小视频在线观看 | 久久精品视频18 | 欧美性视频在线 | 久久综合九色综合欧洲 | 老子午夜伦影理论片 | 久久久久久国产精品mv |