使用PowerDesigner作數據庫設計(二)

使用PowerDesigner作數據庫設計(二)程序員

CDM設計後續sql

在上一篇文章中,有一點給忘記了,在CDM設計窗口中,若是在設計中,實體entity愈來愈多,實體entity間的關係也會愈來愈複雜,像蜘蛛網同樣難以分辨,從可視化和可維護性上面講,這是不利的,有沒有辦法解決這個問題呢。辦法是有的,請看下圖:數據庫

圖-1數據結構

在圖中,點擊鼠標右鍵,選擇新增,在新增下選擇第一項Conceptual Diagram,這樣就能夠根據業務邏輯來創建一個子CDM,在打開的窗口中給子CDM命名,添加code和備註。數據庫設計

圖-2ide

若是想讓每個子CDM排列有序,則能夠在名稱前面增長數字來進行排序,以下圖所示:工具

圖-3設計

對於實體Entity,關聯關係Relationships,還有Association及Association Link也能夠使用一樣的命名規則,根據業務邏輯在名字前添加數字,進行歸類存放,方便後續的審覈確認。code

*PDM介紹*

PDM是PhysicalDataMode的英文簡稱,物理數據模型的意思。PDM能夠直接建立,也能夠從CDM之間生成,還能夠從已有的PDM再次生成PDM。orm

在PDM中能夠對CDM生成的表結構,作進一步的核對、確認一下,這是否是就是本身想要的數據結構,須要注意的是CDM中的關聯association會直接生成對應的表table,還有一點須要注意,若是一個表中有兩個來自同一個表的外鍵,外鍵的命名還須要人爲的手動修改一下。

*CDM轉PDM,手把手實際操做*

第一步,選中即將轉化爲PDM的CDM設計稿上,在工具欄上,選擇Generate Physical Data Model,以下圖所示:

圖-4

第二步,在打開的窗口,進行PDM相關參數的設置,在第一個選項卡General,數據庫的選擇很是重要,要根據須要的數據類型,來選擇生成模型對應的數據庫類型。

圖-5

第三步,數據庫表前綴的設置,在上圖中,點開第二個選項卡detail,能夠看到一個table prefix,這個即是表前綴的設置。

圖-6

第四步,切換到第四個選項卡Selection,對須要生成PDM的實體,作一個選擇,若是不須要,就去掉實體前複選框中的勾選,若是所有須要,這一步能夠跳過。

圖-7

最後,點擊肯定按鈕,根據CDM的大小,等待個幾秒鐘,就能夠看到已生成PDM的樣子了,以下圖:

圖-8

只需三步,CDM就轉換成PDM了,很是簡單吧。

再來確認一下,學生和課程關係表,生成的對不對,打開Tables下的學生和課程關係表,表的前綴是有的,這個是對的。

圖-9

再確認一下,表中的列,喔,好吧,學生和課程關聯關係時,錯把班級和這張表關聯了,真是太粗心,怎麼辦,再回到CDM設計中,把上面的相關步驟再走一遍嘍!

圖-10

回到CDM設計界面,在刪除的確認對話框中,有個選項須要注意一下

圖-11

在刪除對話框中,默認的選項Delete objects,會連帶刪除掉左邊列表中的關係或實體,下面的選項則只會刪除右邊的關係或實體。在操做實體時,若是不想刪除左邊菜單欄中的實體,則選擇Delete symbols only選項。肯定要刪除哪些項目後,按下OK按鈕確認刪除操做。

圖-12

好吧,設計真是個細心活,最後再把PDM生成一下,生成的結果以下圖:

圖-13

再把每一個表中的列信息覈對一遍,這下,學生和課程關係表中的列信息都是對的,課程id和學生id分別做爲外鍵,插入到這張表中,在此表中,課程id和學生id構成了聯合主鍵。

圖-14

在學生表中,班級也是做爲外鍵插入到學生表中的,以下圖所示:

圖-15

*PDM生成sql語句*

第一步,鼠標焦點落在須要生成PDM的設計稿上,而後就能夠在菜單欄看到數據庫這個選項,點擊數據庫,選擇Generate Database選項

圖-16

第二步,在打開的Database Generation窗口中,設置文件須要保存的路徑,文件名稱,sql語句的組成。

圖-17

第三步,在後面幾個選項卡中,還有其餘的選項,在Preview選項卡中,還能夠預覽到sql語句的效果,以下圖所示:

圖-18

最後點擊肯定按鈕,而後到文件保存的位置,查看sql語句的文檔便可,文檔中的sql語句和預覽preview中的是同樣的。

從以上生成sql語句的過程來看,這一步還算是簡單的,只需三步走。下面的一步就比較複雜啦。

*PDM生成word可視化文檔*

第一步,鼠標焦點落在須要須要生成word可視化文檔的PDM設計稿上,而後點擊工具欄中的報告,若是是第一次使用,則須要打開Report Templates窗口,首先設計word導出模板,以下圖所示:

圖-19

圖-20

第二步,在打開的List of Report Templates模板中,點擊新建模板圖表後,會出現下面窗口Report Template Type,經過這個窗口給模板命名,選擇生成的語言類型,選中的數據模板類型,以下圖所示,最後按OK按鈕肯定。

圖-21

第三步,模板設計細節。點擊確認按鈕後會出現下面操做窗口,模板內容的選擇。在這一步,須要肯定將要輸出的word文檔,都有哪些內容展現,table的列表清單,table表頭信息,table下的每一列,每一列的數據類型及備註等等。

圖-22

拖兩個title到文檔下,第一個title下面展現table清單,把list of tables拖到第一個title下,這時已經完成了模板的頭部設計。

圖-23

接下來,在Available items列表下,找到Table文件夾,打開Table文件夾,把Table Card拖到第二個title下,再找到List of column,把這個也拖到第二個title下,見圖-25,把多餘的刪掉。

圖-24

這個步驟考驗拖拖拉拉的能力,須要多點耐心,Java程序員還真不習慣這樣拖拖拉拉的。

圖-25

最後按保存按鈕,在彈框裏選擇合適的保存路徑。

圖-26

行到此處,模板的設計就告一個段落了,點擊右上角的關閉按鈕,關閉這個設計模板的窗口,接下來檢驗這個模板是否是咱們想要的。

圖-27

第四步,模板驗證。鼠標焦點落在要導出word模板的PDM設計稿上,打開圖-19的對話框,打開Generate Report窗口,在打開的窗口中,選擇剛剛設計的模板,導出文檔的後綴,語言類型及存儲路徑。

圖-28

第五步,確認輸出。按下OK按鈕確認後,會彈出對話框,點擊是,打開已經生成好的word文檔,預覽一下格式

圖-29

這份看起來高大上的文檔,還有些不足,行之間缺乏下劃線,列表清單缺乏備註等等。

圖-30

第六步,模板設計再確認。從模板保存的路徑,打開模板,選擇模板中的項目,點擊鼠標右鍵,分別對format和layout進行設計,format主要是對格式的設置,layout是對數據項展現的設置,根據須要進行設置,設置好後保存。

圖-31

圖-32

圖-33

最後,再次生成word文檔,打開文檔,是否是以爲很完美呢,感受不完美繼續修改模板吧,哈哈。

圖-34

最後總結

CDM、PDM是PowerDeginer工具作數據庫設計時最常使用的,PowerDeginer裏面的功能還有不少,都待研究。

使用了PowerDeginer這款工具後,有沒有以爲作數據庫設計高效了不少呢,固然,作設計是細心活,粗心時還須要多review幾回。

相關文章
相關標籤/搜索