PowerDesigner 16.5對SQL Server 2012 產生資料庫時"不支援擴充屬性"問題

來源:互聯網
上載者:User

標籤:des   style   blog   color   os   使用   io   for   檔案   

團隊合作設計一套系統資料模型,建立了PDM後,Table、View、Store Procedure等都建立好了,且建立了多個Schema方便管理這些資料庫物件,但Table、view、Column等對象有Comment時(用來在團隊不同成員間共用描述資訊)

產生資料庫時會得到一個提示"不支援擴充屬性,或對象不存在",分析發現異常在類似以下語句:

if exists(select 1 from sys.extended_properties p where      p.major_id = object_id(‘Environment.Resource‘)  and p.minor_id = (select c.column_id from sys.columns c where c.object_id = p.major_id and c.name = ‘ResourceCode‘))begin   execute sp_dropextendedproperty ‘MS_Description‘,   ‘user‘, ‘Environment‘, ‘table‘, ‘Resource‘, ‘column‘, ‘ResourceCode‘endexecute sp_addextendedproperty ‘MS_Description‘,   ‘資源編碼‘,   ‘user‘, ‘Environment‘, ‘table‘, ‘Resource‘, ‘column‘, ‘ResourceCode‘go

分析原因,發現是由於採用了Schema(上述代碼中的Environment),所以sp_addextendedproperty預存程序的第三個參數就應該是SCHEMA而不是user。查詢相關資料發現以上SQL語句是基於Powerdesigner內建的對應的.xdb檔案產生的,如是Column注釋資訊的SQL代碼模板,對應的xdb模板檔案存放在powerdesigner安裝路徑的Sybase\PowerDesigner 16\Resource Files\DBMS\sqlsv2012.xdb

如,每個Column的Comment資訊均通過以上代碼模板產生,所以只需要修改代碼模板(將sp_addextendedproperty的第三個參數值由user修改為schema即可)即可讓所有對象的Comment產生語句得到修正。

註:在win7以上系統中需要使用管理員權限運行powerdesigner才能將修改後的模板檔案儲存。

 

PowerDesigner 16.5對SQL Server 2012 產生資料庫時"不支援擴充屬性"問題

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.