1. 程式人生 > 實用技巧 >使用PowerDesigner做資料庫設計(二)

使用PowerDesigner做資料庫設計(二)

使用PowerDesigner做資料庫設計(二)

CDM設計後續

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

img

圖-1

在圖中,點選滑鼠右鍵,選擇新增,在新增下選擇第一項Conceptual Diagram,這樣就可以根據業務邏輯來建立一個子CDM,在開啟的視窗中給子CDM命名,新增code和備註。

img

圖-2

如果想讓每一個子CDM排列有序,則可以在名稱前面增加數字來進行排序,如下圖所示:

img

圖-3

對於實體Entity,關聯關係Relationships,還有Association及Association Link也可以使用同樣的命名規則,根據業務邏輯在名字前新增數字,進行歸類存放,方便後續的稽核確認。

​ *PDM介紹*

PDM是PhysicalDataMode的英文簡稱,物理資料模型的意思。PDM可以直接建立,也可以從CDM之間生成,還可以從已有的PDM再次生成PDM。

在PDM中可以對CDM生成的表結構,做進一步的核對、確認一下,這是不是就是自己想要的資料結構,需要注意的是CDM中的關聯association會直接生成對應的表table,還有一點需要注意,如果一個表中有兩個來自同一個表的外來鍵,外來鍵的命名還需要人為的手動修改一下。

​ *CDM轉PDM,手把手實際操作*

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

img

圖-4

第二步,在開啟的視窗,進行PDM相關引數的設定,在第一個選項卡General,資料庫的選擇非常重要,要根據需要的資料型別,來選擇生成模型對應的資料庫型別。

img

圖-5

第三步,資料庫表字首的設定,在上圖中,點開第二個選項卡detail,可以看到一個table prefix,這個便是表字首的設定。

img

圖-6

第四步,切換到第四個選項卡Selection,對需要生成PDM的實體,做一個選擇,如果不需要,就去掉實體前複選框中的勾選,如果全部需要,這一步可以跳過。

img

圖-7

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

img

圖-8

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

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

img

圖-9

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

img

圖-10

回到CDM設計介面,在刪除的確認對話方塊中,有個選項需要注意一下

img

圖-11

在刪除對話方塊中,預設的選項Delete objects,會連帶刪除掉左邊列表中的關係或實體,下面的選項則只會刪除右邊的關係或實體。在操作實體時,如果不想刪除左邊選單欄中的實體,則選擇Delete symbols only選項。確定要刪除哪些專案後,按下OK按鈕確認刪除操作。

img

圖-12

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

img

圖-13

再把每個表中的列資訊核對一遍,這下,學生和課程關係表中的列資訊都是對的,課程id和學生id分別作為外來鍵,插入到這張表中,在此表中,課程id和學生id構成了聯合主鍵。

img

圖-14

在學生表中,班級也是作為外來鍵插入到學生表中的,如下圖所示:

img

圖-15

​ *PDM生成sql語句*

第一步,滑鼠焦點落在需要生成PDM的設計稿上,然後就可以在選單欄看到資料庫這個選項,點選資料庫,選擇Generate Database選項

img

圖-16

第二步,在開啟的Database Generation視窗中,設定檔案需要儲存的路徑,檔名稱,sql語句的組成。

img

圖-17

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

img

圖-18

最後點選確定按鈕,然後到檔案儲存的位置,檢視sql語句的文件即可,文件中的sql語句和預覽preview中的是一樣的。

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

​ *PDM生成word視覺化文件*

第一步,滑鼠焦點落在需要需要生成word視覺化文件的PDM設計稿上,然後點選工具欄中的報告,如果是第一次使用,則需要開啟Report Templates視窗,首先設計word匯出模板,如下圖所示:

img

圖-19

img

圖-20

第二步,在開啟的List of Report Templates模板中,點選新建模板圖表後,會出現下面視窗Report Template Type,通過這個視窗給模板命名,選擇生成的語言型別,選中的資料模板型別,如下圖所示,最後按OK按鈕確定。

img

圖-21

第三步,模板設計細節。點選確認按鈕後會出現下面操作視窗,模板內容的選擇。在這一步,需要確定將要輸出的word文件,都有哪些內容展示,table的列表清單,table表頭資訊,table下的每一列,每一列的資料型別及備註等等。

img

圖-22

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

img

圖-23

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

img

圖-24

這個步驟考驗拖拖拉拉的能力,需要多點耐心,Java程式設計師還真不習慣這樣拖拖拉拉的。

img

圖-25

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

img

圖-26

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

img

圖-27

第四步,模板驗證。滑鼠焦點落在要匯出word模板的PDM設計稿上,開啟圖-19的對話方塊,開啟Generate Report視窗,在開啟的視窗中,選擇剛剛設計的模板,匯出文件的字尾,語言型別及儲存路徑。

img

圖-28

第五步,確認輸出。按下OK按鈕確認後,會彈出對話方塊,點選是,開啟已經生成好的word文件,預覽一下格式

img

圖-29

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

img

圖-30

第六步,模板設計再確認。從模板儲存的路徑,開啟模板,選擇模板中的專案,點選滑鼠右鍵,分別對format和layout進行設計,format主要是對格式的設定,layout是對資料項展示的設定,根據需要進行設定,設定好後儲存。

img

圖-31

img

圖-32

img

圖-33

最後,再次生成word文件,開啟文件,是不是覺得很完美呢,感覺不完美繼續修改模板吧,哈哈。

img

圖-34

最後總結

CDM、PDM是PowerDeginer工具做資料庫設計時最常使用的,PowerDeginer裡面的功能還有很多,都待研究。

使用了PowerDeginer這款工具後,有沒有覺得做資料庫設計高效了很多呢,當然,做設計是細心活,粗心時還需要多review幾次。

哈哈。

[外鏈圖片轉存中…(img-BzVW7jMN-1603276881721)]

圖-34

最後總結

CDM、PDM是PowerDeginer工具做資料庫設計時最常使用的,PowerDeginer裡面的功能還有很多,都待研究。

使用了PowerDeginer這款工具後,有沒有覺得做資料庫設計高效了很多呢,當然,做設計是細心活,粗心時還需要多review幾次。