1、安裝PD v11.0版
2、由pdm產生建表指令碼時,欄位超過15字元就發生錯誤(oracle)
原因未知,解決辦法是開啟PDM後,會出現Database的功能表列,進入Database - Edit Current DBMS
-script-objects-column-maxlen,把value值調大(原為30),比如改成60。出現表或者其它對象的長度也有這種錯誤的
話都可以選擇對應的objects照此種方法更改!
或者使用下面的這種方法:
產生建表指令碼時會彈出Database generation提示框:把options - check model的小勾給去掉,就是不進行檢查(不推薦)!
或者可以修改C:Program FilesSybasePowerDesigner Trial 11Resource FilesDBMSoracl9i2.xdb檔案
修改好後,再cdm轉為pdm時,選擇“Copy the DBMS definition in model”把把這個資源檔拷貝到模型中。
3、產生的建表指令碼中如何把對象的雙引號去掉?
開啟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就可以!
4、建立一個表後,為何檢測出現Existence of index的警告
A table should contain at least one column, one index, one key, and one reference.
可以不檢查 Existence of index 這項,也就沒有這個警告錯誤了!
意思是說沒有給表建立索引,而一個表一般至少要有一個索引,這是一個警告,不用管也沒有關係!
5、建立一個表在修改欄位的時候,一修改name的內容,code也跟著變化,如何讓code不隨著name變化
Name和Code 的右側都有一個按鈕“=”,如果需要不同步的話,把這個按鈕彈起來就可以了。
Tools->General Options->Dialog->Name to Code Mirroring (去掉)
6、由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%表示是父欄位!
7、如何防止一對一的關係產生兩個引用(外鍵)
要定義關係的支配方向,占支配地位的實體(有D標誌)變為父表。
在cdm中雙擊一對一關聯性->Detail->Dominant role選擇支配關係
8、修改報告模板中一些術語的定義
即檔案:C:Program FilesSybasePowerDesigner Trial 11Resource FilesReport LanguagesChinese.xrl
Tools-Resources-Report Languages-選擇Chinese-單擊Properties或雙擊目標
修改某些對象的名稱:Object AttributesPhysical Data ModelColumn
ForeignKey:外鍵
Mandatory:為空白
Primary:主鍵
Table:表
用尋找替換,把“表格”替換成“表”
修改顯示的內容為別的:Values MappingListsStandard,添加TRUE的轉化列為是,FALSE的轉化列為空白
另外Report-Title Page裡可以設定標題資訊。
=======================================================================
PowerDesign的使用主要是DBMS的配置
1、修改建表指令碼建置規則。如果每個表格都有相同的欄位,可以如下修改:
Database -> Edit Current DBMS 展開 Script -> Object -> Table -> Create 見右下的Value值,可以直接修改如下:/* tablename: %TNAME% */
create table [%QUALIFIER%]%TABLE% (
%TABLDEFN%
ts char(19) null default convert(char(19),getdate(),20),
dr smallint null default 0
)
[%OPTIONS%]
其中的 ts、dr 兩列會在產生SQL指令碼的時候自動的插入每個表格中,其中的%TNAME% 變數是給每個表格的SQL添加一個該表的Name值注釋。
2、修改欄位建置規則。要給每個欄位都添加一個注釋的話,同一視窗中展開 Script -> Object -> Column -> Add 的 Value修改為:
%20:COLUMN% [%COMPUTE%?AS (%COMPUTE%):%20:DATATYPE% [%IDENTITY%?%IDENTITY%:[%NULL%][%NOTNULL%]][ default %DEFAULT%]
[[constraint %CONSTNAME%] check (%CONSTRAINT%)]]/*%COLNNAME%*/
其中的%COLNNAME%就是列的Name值(可以是中文)
3、修改外鍵命名規則。選擇Database—>Edit Current DBMS
選擇Scripts-》Objects-》Reference-》ConstName
可以發現右側的Value為:
FK_%.U8:CHILD%_%.U9:REFR%_%.U8:PARENT%
可見,該命名方法是:'FK_'+8位子表名+9位Reference名+8位父表名,你可以根據這中模式自訂為:
FK_%.U7:CHILD%_RELATIONS_%.U7:PARENT%,
可以使FK名稱變為FK_TABLE_2_RELATIONS_TABLE_1
掌握這種方法後就可以按照自己的想法修改了
產生建庫指令碼SQL檔案中的表頭注釋很討厭,可以在 Databse -> Generate Database (Ctrl+G)視窗中,選擇Options卡片,去掉Usage的Title鉤選項即可。
4、添加外鍵
Model -> References建立一條外鍵後,雙擊進入外鍵屬性,在“Joins”卡片中可以選擇子表的外鍵欄位
5、去掉產生的SQL指令碼雙引號的問題:ORACLE 8I2::Script/Sql/Format/CaseSensitivityUsingQuote改成No,預設是Yes所以會有雙引號。
在修改name的時候,code的值將跟著變動,很不方便。修改方法:PowerDesign中的選項菜單裡修改,在[Tool]-->
[General Options]->[Dialog]->[Operating modes]->[Name to Code
mirroring],這裡預設是讓名稱和代碼同步,將前面的複選框去掉就行了。
6、有關Powerdesgner資料模型設計中,屬性名稱同名問題的解決方案
PowerDesigner預設在CDM中不能存在相同名稱的實體屬性,這也是考慮到可能產生的一些如主鍵外鍵等名稱衝突問題,但當我們進行實際資料庫設
計時,可能會多次使用相同資料項目(DataItem)便於理解各實體。為此需要對更改PowerDesigner相關設定。軟體預設為DataItem不
能重複使用(重名),需要進行以下操作:
選擇Tools->Model Options,在Model Setting設定目錄中,將Data Item下的Unique Code取消選中即可,系統預設將Unique Code和Allow Reuse均選中。
=======================================================================
同時該設定均是面向特定模型的,即針對當前模型有效,若希望在其它模型中也有此命名設定,則需要重新進行設定。不過在Check
Model時,如果選擇全部Check,則依舊會報DataItem重名的錯誤資訊,這時需要我們在人為檢查確認資料項目無誤時,可以在選擇不對
DataItem不檢查,各種資料類型對應匹配(這裡只給出與SQL Server中的常用對應類型,其它DBMS可以使用類似處理)
1 如何在PowerDesigner下建索引
2 如何在PowerDesigner 下建自增列
3 如何在PowerDesigner 下檢查設計模型
1 如何在PowerDesigner下建索引
1 雙擊表設計圖,出來Table Properties,在Tab 頁中選擇 Indexes
2 單擊建立索引的屬性,出現Indexex Properties
3 增加一個索引包含的欄位
2 如何在PowerDesigner 下建自增列
使用SqlServer 資料庫中的下列語句來完成
建表語句中,在要做為自增列的欄位中,加上如下
IDENTITY(1,1)
還有可以使用下面語句,重設自增種子
dbcc checkident(ConfigSys,reseed,0);
3 如何在PowerDesigner 下檢查設計模型
1 在功能表列中選擇 Tools - Check Model, 如
2 選擇要檢查的每項設定
3 確定後,將出來檢查結果匯總資訊
文章來源:http://hi.baidu.com/3zrj/blog/item/d399652ff7738b574fc226f8.html