建模的一些體會和總結

to_be_Dba發表於2013-08-03
在建模過程中,經常需要對概念模型、物理模型、資料庫結構進行微調。
這時應該注意到調整過程中的資訊損失問題,從資料量最多的概念模型改起是我認為最好的方法。
在模型中,我們可能將表按照功能劃分為不同的模組。如果通過資料庫反向生成模型的話,就不能將表劃分為模組了。
因為資料庫中不存在這些資訊。
從概念模型可以生成物理模型。
生成後,概念模型再修改,就無法再更新物理模型,而只能另外生成一個新的物理模型,和原物理模型進行比較。
在比較後,可以根據兩個物理模型的不同對其進行更新。
還需要注意,只有同一個邏輯模型生成的物理模型才能進行比較。
從資料庫更新物理模型時,如果資料庫或物理模型中的表名修改過,可能無法直接對應到。
在power designer中進行此操作時,可以通過merge models視窗中的選單項“Manually Synchronize two objects”來實現手工對應。
總的來說,能夠在模型上修改,就不要直接動資料庫。

模型的建立,應該具有預見性和回溯性。比如很多設計中,實體、屬性的名稱(name)是中文,而程式碼(code)是字母和符號組成的,
逐個去除錯獲取比較麻煩,如果能夠事先將名稱和程式碼進行彙總整理,然後建模前設定名稱和程式碼的對應關係(在選單“Tools”->“Model options”中),就顯得非常方便了。
類似地,在建模前首先想好外來鍵、主鍵的命名規則(比如,外來鍵名稱為FK__,索引名稱為IDX__),
這樣比建立好聯絡以後再去逐一修改要方便得多。
所謂回溯性,其實也是一個道理。如果不能預先確定好以上提到的基本規則,可以逐步細化。先建立簡單模型,再以此為基礎,定義規範。
使用建模工具的過程中,體會到其便捷性和功能強大,證明自己方法正確;如果總覺得模型是累贅、麻煩,可能就是自己方法不對。
使用工具比人工操作靈活,但也總是需要我們明確的指令。比如建立索引和外來鍵關係時,如果設定不合理,可能產生的語句會在同一列上建立兩次索引,因而報錯;將同類表劃分為模組,呼叫其他模組中的表時使用shortcut,如果兩個shortcut分別在兩個模組中出現一次,可能建立外來鍵的動作就重複了。這些操作都可以通過簡單的勾選、去除勾選,或生成時指定刪除,都需要我們注意。

建模時應該綜合考慮實體中屬性間的邏輯關係,完整性,效能問題和儲存問題。
一般按照主鍵、唯一鍵、外來鍵、不為空列、可為空列、大欄位列的順序儲存欄位。
常用列放前面,可為空的放後面,最後儲存大欄位列。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26451536/viewspace-767733/,如需轉載,請註明出處,否則將追究法律責任。

相關文章