建模的一些體會和總結
在建模過程中,經常需要對概念模型、物理模型、資料庫結構進行微調。
這時應該注意到調整過程中的資訊損失問題,從資料量最多的概念模型改起是我認為最好的方法。
這時應該注意到調整過程中的資訊損失問題,從資料量最多的概念模型改起是我認為最好的方法。
在模型中,我們可能將表按照功能劃分為不同的模組。如果通過資料庫反向生成模型的話,就不能將表劃分為模組了。
因為資料庫中不存在這些資訊。
因為資料庫中不存在這些資訊。
從概念模型可以生成物理模型。
生成後,概念模型再修改,就無法再更新物理模型,而只能另外生成一個新的物理模型,和原物理模型進行比較。
在比較後,可以根據兩個物理模型的不同對其進行更新。
還需要注意,只有同一個邏輯模型生成的物理模型才能進行比較。
生成後,概念模型再修改,就無法再更新物理模型,而只能另外生成一個新的物理模型,和原物理模型進行比較。
在比較後,可以根據兩個物理模型的不同對其進行更新。
還需要注意,只有同一個邏輯模型生成的物理模型才能進行比較。
從資料庫更新物理模型時,如果資料庫或物理模型中的表名修改過,可能無法直接對應到。
在power designer中進行此操作時,可以通過merge models視窗中的選單項“Manually Synchronize two objects”來實現手工對應。
在power designer中進行此操作時,可以通過merge models視窗中的選單項“Manually Synchronize two objects”來實現手工對應。
總的來說,能夠在模型上修改,就不要直接動資料庫。
模型的建立,應該具有預見性和回溯性。比如很多設計中,實體、屬性的名稱(name)是中文,而程式碼(code)是字母和符號組成的,
逐個去除錯獲取比較麻煩,如果能夠事先將名稱和程式碼進行彙總整理,然後建模前設定名稱和程式碼的對應關係(在選單“Tools”->“Model options”中),就顯得非常方便了。
類似地,在建模前首先想好外來鍵、主鍵的命名規則(比如,外來鍵名稱為FK_
這樣比建立好聯絡以後再去逐一修改要方便得多。
所謂回溯性,其實也是一個道理。如果不能預先確定好以上提到的基本規則,可以逐步細化。先建立簡單模型,再以此為基礎,定義規範。
使用建模工具的過程中,體會到其便捷性和功能強大,證明自己方法正確;如果總覺得模型是累贅、麻煩,可能就是自己方法不對。
使用工具比人工操作靈活,但也總是需要我們明確的指令。比如建立索引和外來鍵關係時,如果設定不合理,可能產生的語句會在同一列上建立兩次索引,因而報錯;將同類表劃分為模組,呼叫其他模組中的表時使用shortcut,如果兩個shortcut分別在兩個模組中出現一次,可能建立外來鍵的動作就重複了。這些操作都可以通過簡單的勾選、去除勾選,或生成時指定刪除,都需要我們注意。
建模時應該綜合考慮實體中屬性間的邏輯關係,完整性,效能問題和儲存問題。
一般按照主鍵、唯一鍵、外來鍵、不為空列、可為空列、大欄位列的順序儲存欄位。
常用列放前面,可為空的放後面,最後儲存大欄位列。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26451536/viewspace-767733/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- APK體積優化的一些總結APK優化
- iphone 記憶體管理的一些總結iPhone記憶體
- redo log 和 binlog 的一些總結
- 關於DDD和COLA的一些總結和思考
- 樹的遍歷和迭代的一些總結
- 學會總結和積累
- 什麼是軟體開發業務建模分析和結構化建模分析
- Redux的一些總結Redux
- mysql的一些總結MySql
- 關於使用者體驗的一些總結
- 集團年終總結的幾點體會薦
- 幾次面試後,我的一些思考和總結面試
- 寫java程式碼的一些個人感受和總結Java
- 2020年的一些思考和總結
- MySQL高可用方案MHA的一些總結和思考MySql
- 做產品經理的一些總結和反省
- 【process】一些常見file和process的作用總結
- java學習總結及心得體會Java
- oracle聚合函式rank()的用法和一些體會Oracle函式
- Flash安全的一些總結
- 正則的一些總結
- 小程式的一些總結:畫canvas和內嵌webviewCanvasWebView
- 關於程式和執行緒 自我的一些總結執行緒
- 對於api管理系統的一些總結和思考API
- 一些總結而已
- Promise一些小總結Promise
- 工作週會的總結
- 使用K8s的一些經驗和體會K8S
- VMServer安裝RAC簡單總結體會Server
- android 關於記憶體優化的一些總結Android記憶體優化
- 軟體標書中一些常用的技術描述總結
- MariaDB ColumnStore一些限制和BUG總結薦
- android 開源和一些部落格總結Android
- 資料建模與框架設計的暫時總結框架
- Oracle 體系結構 SGA 和PGA 總結Oracle
- Ajax技術的一些總結
- LevelDB的一些簡單總結
- 外連線的一些總結