1. 程式人生 > >PowerDesigner使用教程3

PowerDesigner使用教程3

我們 fun index convert 去除 exe mirror code 新的

from:http://www.cnblogs.com/langtianya/archive/2013/03/08/2949118.html

PowerDesigner是一款功能非常強大的建模工具軟件,足以與Rose比肩,同樣是當今最著名的建模軟件之一。Rose是專攻UML對象模型的建模工具,之後才向數據庫建模發展,而PowerDesigner則與其正好相反,它是以數據庫建模起家,後來才發展為一款綜合全面的Case工具。

PowerDesigner主要分為7種建模文件:

1. 概念數據模型 (CDM)

對數據和信息進行建模,利用實體-關系圖(E-R圖)的形式組織數據,檢驗數據設計的有效性和合理性。

2. 邏輯數據模型 (LDM)

PowerDesigner 15 新增的模型。邏輯模型是概念模型的延伸,表示概念之間的邏輯次序,是一個屬於方法層次的模型。具體來說,邏輯模型中一方面顯示了實體、實體的屬性和實體之間的關系,另一方面又將繼承、實體關系中的引用等在實體的屬性中進行展示。邏輯模型介於概念模型和物理模型之間,具有物理模型方面的特性,在概念模型中的多對多關系,在邏輯模型中將會以增加中間實體的一對多關系的方式來實現。

邏輯模型主要是使得整個概念模型更易於理解,同時又不依賴於具體的數據庫實現,使用邏輯模型可以生成針對具體數據庫管理系統的物理模型。邏輯模型並不是在整個步驟中必須的,可以直接通過概念模型來生成物理模型。

3. 物理數據模型 (PDM)

基於特定DBMS,在概念數據模型、邏輯數據模型的基礎上進行設計。由物理數據模型生成數據庫,或對數據庫進行逆向工程得到物理數據模型。

4. 面向對象模型 (OOM)

包含UML常見的所有的圖形:類圖、對象圖、包圖、用例圖、時序圖、協作圖、交互圖、活動圖、狀態圖、組件圖、復合結構圖、部署圖(配置圖)。OOM 本質上是軟件系統的一個靜態的概念模型。

5. 業務程序模型 (BPM)

BPM 描述業務的各種不同內在任務和內在流程,而且客戶如何以這些任務和流程互相影響。 BPM 是從業務合夥人的觀點來看業務邏輯和規則的概念模型,使用一個圖表描述程序,流程,信息和合作協議之間的交互作用。

6. 信息流模型(ILM)

ILM是一個高層的信息流模型,主要用於分布式數據庫之間的數據復制。

7. 企業架構模型(EAM):

從業務層、應用層以及技術層的對企業的體系架構進行全方面的描述。包括:組織結構圖、業務通信圖、進程圖、城市規劃圖、應用架構圖、面向服務圖、技術基礎框架圖。

正所謂“工欲善其事必先利其器”,PowerDesigner就是一把強大的“神器”,若能運用自如,再身懷“絕世武功”,那你基本就遇神殺神遇佛殺佛了!

關於PowerDesigner物理數據模型的基本使用,我這裏就不廢話了,給出個連接,地球人看完都知道:http://www.cnblogs.com/huangcong/archive/2010/06/14/1757957.html

下面就一些比較高級型的用法和技巧我著重說明下。

1. 生成sql腳本

Database→Generate Database

選擇要輸出的文件路徑,即文件存儲路徑,並根據需要修改文件名,單擊確定後便會生成sql腳本。

技術分享圖片

在Options選項卡裏,可以個性化選擇和配置sql腳本,如取消外鍵,去除drop語句等。

技術分享圖片

Selection選項卡中可以選擇哪些表要生成sql腳本。

在Preview選項卡可以預覽將要生成的sql腳本。

2. 將所有名詞轉化為大寫

tools→Model Options...→Naming Convention→Code→Uppercase。

技術分享圖片

3. 表字段設計窗口顯示comment來編寫註釋

雙擊表打開表的屬性窗口→Columns選項卡→單擊上排倒數第二個圖標(Customize Columns and Filter)→勾選comment

技術分享圖片

4. 修改表的字段Name的時候,Code不自動跟著變

tools→General Options...→Dialog→取消勾選Name to Code mirroring

技術分享圖片

5. 不同數據庫之間的轉化

Database→Change Current DBMS→選擇要轉換成的目標數據庫

技術分享圖片

6. 導入sql腳本生成相應的數據庫表模型圖

File→Reverse Engineer→Database...→修改模塊名稱並選擇DBMS

技術分享圖片

Using script files→點擊下方圖標(Add Files)來添加sql腳本文件→確定

技術分享圖片

7. 由物理模型生成對象模型,並生成相應的get、set方法

tools→Generate Object-Oriented Model...→選擇語言→修改Name和Code→(Selection選項卡→選擇要生成對象模型的表)→確定

技術分享圖片

雙擊生成的某張表的類圖打開屬性窗口→選中全部字段→將字段Visibility全部改為private→單擊下方Add...按鈕→選擇Get/Set Operations→確定

之後生成代碼即可:Language→Generate Java Code...

技術分享圖片

【註意:不同語言Add...按鈕下的內容有區別,如C#是Property】

6. 生成數據庫文檔

Report→Generate Report...→選擇Generate RTF→修改Repor namet→語言選擇Chinese→選擇文件存放位置→確定

技術分享圖片

PowerDesigner還提供了文檔編輯功能:Report→Reports...→點擊New Report圖標→修改Repor namet→語言選擇Chinese→Report template選擇Full Physical Report

之後即可打開文檔編輯窗口,不過限於篇幅這裏就不再詳細說明如何編輯了,大家自己看看吧。

8. 如何建立自增主鍵

雙擊表打開屬性窗口→勾選P主鍵復選框→雙擊設置為主鍵的字段(在行的頭部雙擊)或者單擊上方的屬性圖標按鈕→在打開的窗口下方(註意不同數據庫不一樣,sql server是identity復選框)選擇sequence,如果沒有則單擊旁邊的新建按鈕創建一個sequence。

技術分享圖片

9. 如何建立視圖

工具欄中單擊視圖(view)按鈕→創建視圖→雙擊視圖打開屬性窗口,其中Usage是表示視圖是只讀的還是可更新的。如果我們只創建一般的視圖,那麽選擇query only選項即可。

技術分享圖片

切換到SQL Query選項卡,在文本框中可以設置定義視圖的sql查詢語句,在定義視圖時最好不要使用*,而應該使用各個需要的列名,這樣在視圖屬性的Columns中才能看到每個列。單擊右下角Edit with SQL Editor按鈕,即可彈出SQL Editor編輯器,編寫SQL語句。也可采用其他sql語句生成器生成sql語句。

技術分享圖片

10. 如何建立索引

雙擊表打開屬性窗口→選擇Indexes選項卡→新建一索引→雙擊該索引打開屬性窗口

技術分享圖片

選擇Columns選項卡→單擊Add Columns圖標按鈕→選擇要建立索引的字段→確定

這裏Column definition就不要選了,會與主鍵沖突。

技術分享圖片

11. 如何建立存儲過程

工具欄中單擊Procedure按鈕→創建存儲過程→雙擊存儲過程打開屬性窗口→選擇Definition選項卡,其中在下拉列表框中,有Default Procedure、Default Function這兩個選項,前者是定義過程,後者是定語函數,系統會根據選擇的類型創建SQL語句的模板→編輯存儲過程腳本。

技術分享圖片

以上就是PowerDesigner物理模型的最主要內容了,其實這只是滄海一粟罷了,僅僅剛剛涉及到了一個模型,還有其他好多模型值得我們學習,這裏要想真的講全面的話,那一篇博文肯定容不下,需要連載了。

PowerDesigner真的非常強大,用它設計UML同樣很牛叉,大家有時間真應該好好學學這個工具怎麽使,如果可能,我可能會在今後的博文中介紹下如何用PowerDesigner設計對象模型UML,或者搞不好真的要連載了,呵呵。那麽小小期待下吧!

補充:

1、在pdm模型中,當建立兩個表的關系時,有如下的級聯關系:

雙擊2個表之間的關聯關系 彈出表信息窗口,選擇identity選項卡可看到 以下是幾個參數,含義如下: None:父表修改,子表不影響。 Restrict:父表修改,如果子表存在,則出錯。 Cascade:父表修改,如果子表存在,則相應的修改。 Set Null:父表修改,如果子表存在,則相應置空。 Set Default:父表修改,如果子表存在,則相應置默認值。

PowerDesigner使用教程3