要用powerdesigner做數據庫表設計, 最后發現導出sql腳本就出現了問題, 首先是字段都帶上了雙引號, 而且還總是報錯字段名過長。
另外還發現column屬性,Code才是最終產生的Table Name ,而Name就有點像是描述了。
在 Database里選擇你的數據庫然后在 DBMS里面選擇(注意看清楚PDM的引用模式是哪個數據庫)
Script->Sql->Format->EnableOwnerPrefix value=Yes;
Script->Sql->Format->CaseSensitivityUsingQuote=No;
這時再導出 表的名稱就正常了
PowerDesigner9 移植到 PowerDesigner12 的問題:
默認長度的問題,我在PowerDesigner9導出沒問題的數據庫腳本拿到PowerDesigner12導出出現如下問題:
Column constraint name maximum length is limited to 15 characters
在使用PD12時出現諸如以下錯誤:
Reference constraint name maximum length is limited to 7 characters
Key constraint name maximum length is limited to 7 characters
Table code maximum length
Column code maximum length
……
導致生成建表SQL時通不過,細究原因原來是默認設置的問題,改下就可以了:)
調整以下參數:
Database=>Edit current DBMS 數據庫類型::Script\Objects\MaxConstLen value=>255
Database=>Edit current DBMS 數據庫類型::Script\Objects\Table\Maxlen value=>255
Database=>Edit current DBMS 數據庫類型::Script\Objects\Column\Maxlen value=>255
再說說如何在 PowerDesigner12里創建帶導出分區的腳本
默認情況下分區設置是隱藏的 所以要選種該表 然后再點左下腳的More>>
選擇Physical Options 這個選項 這里可以添加表空間和索引空間 我習慣直接設置分區SQL語句 這樣避免了很多垃圾語句生成
選擇 SQL 然后創建分區
partition by list
( data_part )
( partition Pd00
values ( '0' ) )
就OK了 去Partitions選項里可以看到這一列分區效果
設置索引默認空間:
選擇KEY選項或者Index選項 直接雙擊該索引 然后設置Physical Options
直接輸入SQL創建默認索引指向表空間 using index tablespace index_emcspace
PowerDesigner功能強大 完全可以維護大部分的數據庫建模
現在在Oracle數據庫維護有些問題 創建數據庫的Package 或者 Types 、Directories、Jobs等 沒辦法維護進去。
------------------------------------------------------------------------------------------------------
因為我下載的pd11是試用版,功能受限, index導出總是報錯, 換用了pd12的破解版, 沒有問題了。
而且改object最大長度設置,只要設定一個全局的,方便一些:
PGSQL73::Script\Objects\MaxConstLen
value=>255
PGSQL73::Script\Objects\Table\Maxlen
value=>255
另外發現pd12也沒有表長度長一點就報錯的問題, 不用像前面那樣改長度了。