物理數據模型

物理數據模型

物理數據模型(Physical Data Model,PDM),提供了系統初始設計所需要的基礎元素,以及相關元素之間的關係。即用於存儲結構和訪問機制的更高層描述,描述數據是如何在計算機中存儲的,如何表達記錄結構、記錄順序和訪問路徑等信息。

模型介紹


物理數據模型(Physical Data Model)PDM,使用物理數據模型,可以在系統層實現資料庫。資料庫的物理設計階段必須在此基礎上進行詳細的後台設計,包括資料庫的存儲過程、操作、觸發、視圖和索引表等;至2013年,還沒有太多的物理數據模型,最常用的物理數據模型如下:
統一模型。
框架存儲模型。

優點


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

功能


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

PDM


包含事件

1) 表
2) 列
3) 視圖
4) 主鍵
5) 候選鍵
6) 外鍵
7) 存儲過程
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)表和列
主鍵、候選鍵
外鍵
索引
觸發器
(5)存儲過程
3)格式設置
4)選擇對象
(1)查看包
(2)全選/全部取消選擇
(3)使用圖中選中的對象

創建PDM

1)新建PDM
(1)選擇菜單項
(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.