用PowerDesigner設計數據庫物理圖,包括多個對象,如表(Table)、字段(Column)、域(Domain)等。設計時主要在PowerDesigner的Dictionary和Database兩個菜單中。
表(Table)
表是數據存儲的一個邏輯對象,包括其它對象如字段(Column)、索引(Index)、觸發器(Trigger)、存儲過程(Procedure)等,表的優化設計有分割等技術,對于表的存儲,如果訪問數據量大,訪問頻率高則可考慮將表放在不同的存儲(Storage)上。
在設計表時,應該估算表的大小和增長量,便于創建數據庫時分配數據庫空鍵,這樣減少了磁盤碎片的產生。
在關系數據庫中設計主鍵時,采用有意義的主鍵是致命的錯誤。如果用戶決定改變字段的商業含義,則需要在所有使用到該信息的地方進行修改。主鍵的作用應是保持唯一性和作為外鍵使用。任何對主鍵的修改會導致巨大的數據庫維護工作量,顯然這是不合適宜的設計。就關系數據庫而言,設計主鍵策略采用的是代理主鍵的方法。
設計主鍵時應該避免“熱點”現象,但也需要分析具體的應用系統的并發用戶而定。
字段(Column)
定義一個字段主要有字段名、字段類型及長度、是否主外鍵、是否空、約束、默認值、域等。
變長和定長的數據類型在數據庫設計中討論比較多,作為一般原則,如果預期某列中的數據范圍變化很大,但變化并不頻繁,那末對這樣的列使用變長數據類型最為適宜。
決定行長時,既不能太浪費,又不能太吝惜?紤]到將來的需要,并且意識到,如果增加行長而沒有改變一頁中容納的行數,那末增加的空間就等于免費使用。
設計時,字段盡量使用域,方便維護字段的類型。每個字段最好將默認值加上,因為在數據庫查詢中,有NULL值會影響查詢的性能。
通過CHECK約束可限制字段的取值。
域(Domain)
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/