PowerDesiner設置錦集

powerdesiner的自增長列

  1.如果dbms是MsSql,則選定表後,database-> edit current dbms-> 出現DBMS properties對話框,選擇General頁,左側的樹選擇SQL 2000-> Profile-> Column-> Extended Attributes 下面的ExtIdentityIncrement是步進值,ExtIdentitySeed是起始值,分別設定默認值,後返回。
  2.在表的屬性對話框裏面,選擇Clumns頁,按Ctrl+U,在Idenitity前面打上鉤。如有必要,也可以將
ExtIdentityIncrement和ExtIdentitySeed也打上勾,這樣在設定Idenitity時也可以直接指定起始值和步進值了。
btw:我用的是PD11,剛剛開始學PD,關於Identity的設定也是找了好久。

  3.對於ql server ,在表的屬性對話框裏面,選擇Clumns頁,按Alt+enter進入列的屬性頁面,在右下角勾選Idenitity屬性即可.



sql語句中表名與字段名前的引號去除:

   打開cdm的情況下,進入Tools-Model Options-Naming Convention,把Name和Code的標籤的Charcter case選項設置成Uppercase或者Lowercase,只要不是Mixed Case就行!
或者選擇Database->Edit current database->Script->Sql->Format,有一項CaseSensitivityUsingQuote,它的 comment爲“Determines if the case sensitivity for identifiers is managed using double quotes”,表示是否適用雙引號來規定標識符的大小寫,可以看到右邊的values默認值爲“YES”,改爲“No”即可!
或者在打開pdm的情況下,進入Tools-Model Options-Naming Convention,把Name和Code的標籤的Charcter case選項設置成Uppercase就可以!


在修改name的時候,code的值將跟着變動,很不方便
   修改方法:PowerDesign中的選項菜單裏修改,在[Tool]-->[General Options]->[Dialog]->[Operating modes]->[Name to Code mirroring],這裏默認是讓名稱和代碼同步,將前面的複選框去掉就行了。


由pdm生成建表腳本時,字段超過15字符就發生錯誤(oracle)
   原因未知,解決辦法是打開PDM後,會出現Database的菜單欄,進入Database - Edit Current DBMS -script-objects-column-maxlen,把value值調大(原爲30),比如改成60。出現表或者其它對象的長度也有這種錯誤的話都可以選擇對應的objects照此種方法更改!
或者使用下面的這種方法:
     生成建表腳本時會彈出Database generation提示框:把options - check model的小勾給去掉,就是不進行檢查(不推薦)!
    或者可以修改C:/Program Files/Sybase/PowerDesigner Trial 11/Resource Files/DBMS/oracl9i2.xdb文件
     修改好後,再cdm轉爲pdm時,選擇“Copy the DBMS definition in model”把把這個資源文件拷貝到模型中。


由CDM生成PDM時,自動生成的外鍵的重命名
   PDM Generation Options->Detail->FK index names默認是%REFR%_FK,改爲FK_%REFRCODE%,其中%REFRCODE%指的就是CDM中Relationship的code!另外自動生成的父字段的規則是PDM Generation Options->Detail->FK column name template中設置的,默認是%.3:PARENT%_%COLUMN%,可以改爲Par%COLUMN%表示是父字段!


建立一個表後,爲何檢測出現Existence of index的警告  
    A table should contain at least one column, one index, one key, and one reference.
可以不檢查 Existence of index 這項,也就沒有這個警告錯誤了!
意思是說沒有給表建立索引,而一個表一般至少要有一個索引,這是一個警告,不用管也沒有關係!

如何防止一對一的關係生成兩個引用(外鍵)
   要定義關係的支配方向,佔支配地位的實體(有D標誌)變爲父表。
在cdm中雙擊一對一關係->Detail->Dominant role選擇支配關係

修改報表模板中一些術語的定義
   即文件:C:/Program Files/Sybase/PowerDesigner Trial 11/Resource Files/Report Languages/Chinese.xrl
Tools-Resources-Report Languages-選擇Chinese-單擊Properties或雙擊目標
修改某些對象的名稱:Object Attributes/Physical Data Model/Column/
        ForeignKey:外鍵
        Mandatory:爲空
        Primary:主鍵
        Table:表

用查找替換,把“表格”替換成“表”

   修改顯示的內容爲別的:Values Mapping/Lists/Standard,添加TRUE的轉化列爲是,FALSE的轉化列爲空
另外Report-Title Page裏可以設置標題信息

PowerDesigner 生成SQL的Existence of refernce錯誤問題
現象:用PowerDesigner生成SQL語句時,提示Existence of refernce錯誤。
原因:該表沒有與其他表的關聯(如外鍵等),而PowerDesigner需要存在一個refernce才能生成SQL.
解決方法:
    在工具欄空白處右鍵打開Palette面板,選中Link/Extended Dependency 按鈕,然後在提示出錯的表上添加到自己的Dependency。
    重新生成SQL,你將發現剛纔提示的錯誤沒有了,問題解決。
  
利用PowerDesigner批量生成測試數據
主要解決方法:
A:在PowerDesigner 建表
B:然後給每一個表的字段建立相應的摘要文件
步驟如下:
Model->Test Data Profiles配置每一個字段摘要文件General:輸入Name、Code、
選擇Class(數字、字符、時間)類型
選擇Generation Source: Automatic、List、ODBC、File Detail:配置字段相關信息
所有字段摘要文件配置完成後雙擊該表->選擇字段->Detail->選擇Test Data Parameters 摘要文件如果字段值與其它字段有關係在: Computed Expression 中輸入計算列--生成測試數據:
DataBase->Generation Test Data->
選擇:Genration 類型(Sript、ODBC)
     Selection(選擇要生成的表)
     Test Data Genration(Default number of rows 生成記錄行數)

 

1.使用PD12時出現以下錯誤:

Reference constraint name maximum

length is limited to 30 characters

Key constraint name maximum length

is limited to 30 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

但是要注意的是,表名、列名、主鍵等不要超過30個字符,否則Oracle不認。

2.附:生成數據庫腳本

Database=>Generate database

-----------------------------

-----------------------------

默認生成的SQL語句(表名、字段名等)都帶雙引號,導致用SQLPlus插入Oracle數據庫時表名與表列都帶""號,要解決這個問題,在數據庫中做如下設置:

Database-> Edit Current DBMS...-> Script-> Sql->

Format-> CaseSensitivityUsingQuote 改爲No

      3.如何在powerDesigner中給字段賦默認值

雙擊表,出現column列表,雙擊要設置的列的左邊的灰色框,應該會彈出新的窗口,然後在新窗口上選擇standard checks ,裏面有default的

發佈了43 篇原創文章 · 獲贊 1 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章