PowerDesigner 自動編號設為 int

  • 1110
  • 0

將 PowerDesigner 自動編號的資料型別預設轉為 numeric , 可以經修改 DBMS 檔案後轉為 int

在 PowerDesigner 設計 CDM 時,若選擇資料型別為 Serial 時,選擇 SQL Server 資料庫 產生 PDM ,其欄位型別會是 Numeric。若想將調整其型別為 int 的話,參考以下作法。

異動PDM,保留LDM

先說明這作法 0 分。

產生 PDM 後,直接在 PDM 上修改資料型別。
爾後從 CDM 轉 PDM 時,顯示 [Merge Models] 視窗時,不要勾選這個欄位。


image

就說這作法 0 分吧!

 

修改 DBMS (XDB)

PowerDesigner 從 CDM 轉 PDM 時,會參照所指定資料庫的 DBMS (副檔名 XDB),進行各種資料型別及相關邏輯的對應。

因此要將 Serial 轉為 int ,只需修改 SQL Server 的 DBMS 即可達成。

首先須以系統管理者身分開啟 PowerDesigner,從選單 [Tools] > [Resources] > [DBMS]

image

選擇 [Microsoft SQL Server 2008],點擊兩次

image

 

從 DBMS 視窗左側 > [Script] > [Data Type] > [AmcdDataType]

找到 Internal = NO 的資料列(如下圖第32筆),將其 Physical Model 的值從 numeric 修改為 int

image
修改後儲存。

再重新轉 PDM時,要選擇上述修改過的 DBMS

image

 

附註

1. 異動 DBMS 務必先做備份

image

DBMC 檔案儲存在 C:\Program Files (x86)\Sybase\PowerDesigner 16\Resource Files\DBMS

 

2. 參考資料