複製鏈接
請複製以下鏈接發送給好友

物理數據模型

鎖定
物理數據模型(Physical Data Model,PDM),是指提供系統初始設計所需要的基礎元素,以及相關元素之間的關係。
中文名
物理數據模型
外文名
Physical Data Model
簡    稱
PDM
模    型
統一模型
優    點
提供數據庫結構的可視化提取

物理數據模型模型介紹

即用於存儲結構和訪問機制的更高層描述,描述數據是如何在計算機中存儲的,如何表達記錄結構、記錄順序和訪問路徑等信息。使用物理數據模型,可以在系統層實現數據庫。數據庫的物理設計階段必須在此基礎上進行詳細的後台設計,包括數據庫的存儲過程、操作、觸發、視圖和索引表等;至2013年,還沒有太多的物理數據模型,最常用的物理數據模型如下:
統一模型。
框架存儲模型。

物理數據模型優點

除了提供數據庫結構的可視化提取,定義物理數據模型的一個重要的好處是您可以自動從模型中導出數據庫的架構。
這是可能因為物理數據模型捕獲的元數據非常豐富,並且它密切映射數據庫架構,如表、 列、 主鍵和外鍵等方面。

物理數據模型功能

1、可以將數據庫的物理設計結果從一種數據庫移植到另一種數據庫;
2、可以通過反向工程將已經存在的數據庫物理結構重新生成物理模型或概念模型;
3、可以定製生成標準的模型報告;
4、可以轉換為OOM;
5、完成多種數據庫的詳細物理設計(涵蓋常用的各種數據庫的DBMS),並生成數據庫對象的.sql腳本;

物理數據模型PDM

物理數據模型包含事件

(1) 表
(2) 列
(3) 視圖
(4) 主鍵
(6) 外鍵
(8) 觸發器
(9) 索引
(10)完整性檢查約束

物理數據模型創建對象

(1) 創建表
(2) 創建列
(3) 創建創建域
(4) 創建視圖
(5) 創建主鍵
(6) 創建候選鍵
(7) 創建外鍵
(8) 創建索引
(9) 創建完整性檢查約束
(10)創建存儲過程
(11)創建觸發器

物理數據模型管理對象

(1) 創建用户
(2) 設置表的用户
(3) 設置表的物理屬性

物理數據模型檢查PDM

(1)檢查選項設置
(1)Package(包)
(2)Table(表)
(3)Column(列)
(4)Index(索引)
(5)Key(鍵)
(6)Domain(域)
(7)View(視圖)
(8)Reference(參照)
(9)Trigger(觸發器)
(10) Procedure(存儲過程
(11) User(用户)
(12) File(文件)
(2)更正錯誤/警告

物理數據模型函數

(1)創建觸發器
設定觸發器類型(Insert、Update、Delete)
(2)創建存儲過程/函數

物理數據模型生成數據庫

(1)選擇Database→GenerateDatabase菜單項
(2)選項設置
(1)數據庫
(2)用户
(3)域
(4)表和列
主鍵、候選鍵
索引
觸發器
(3)格式設置
(4)選擇對象
(1)查看包
(2)全選/全部取消選擇
(3)使用圖中選中的對象

物理數據模型創建PDM

(1)新建PDM
(1)選擇File→New Model菜單項
(2)在左側模型類型列表中選擇Physical Data Model
(3)在右側輸入模型名稱、在DBMS下拉列表中選擇DBMS類型、在First diagram下拉列表中選擇Physical Diagram
(2)正向工程:從CDM/LDM生成PDM
(3)逆向工程:從現有DB 逆向生成PDM

物理數據模型生成腳本

PDM我們最終是需要導入我們的數據庫中去。 PDM 可以生成不同數據庫對應的sql語句,或者直接講腳本部署到數據庫中,這個在generate database 的時候可以進行選擇。
一般是先生成sql 腳本,然後到數據庫裏執行sql腳本

物理數據模型sql腳本

一般來説都是先畫出CDM的E-R,然後將CDM 轉成PDM。 PDM 中的對象與我們庫中的對象一致。
對於PDM 的部署有兩種方法:
(1) 生成SQL 腳本
(2) 直接將腳本部署到數據庫上,即直接在庫上把我們的對象創建好
Database --> Generate Database, 彈出如下窗口:
Script generation: 是生成SQL 腳本,one file on是否需要按照
表生成許多個sql(默認選上,即不需要)
Direct generation: 是直接在數據庫中執行腳本,這2者只能選一個。 一般直接生成SQL 腳本。
Automatic archive: 生成sql同時生成apm文件。
Check model:powerdesigner有定義每種數據庫的表名、字段名等名字的最大長度的,該長度用於powerdesigner作check model的,但是該定義的長度和數據庫實際允許的長度不一定相同,如果你希望能通過pd的檢查,可以修改pd中的設置(pd對不同數據庫的這種約定實際是在保存在一個xml文件中,擴展名為.xdb)!或者你可以直接在生成數據庫時選擇不check model. [1] 
參考資料