標籤:
有關CDM、PDM、SQL之間轉換以及不同資料庫之間庫表Sql的移植,首先要瞭解的是它們各自的用途、這裡就簡單的描述一下,不做詳細的解釋了。
CDM:概念資料模型。CDM就是以其自身方式來描述E-R圖。它不考慮物理實現的細節,只表示資料庫的整體邏輯結構,獨立於任何軟體和資料存放區結構。
PDM:物理資料模型。考慮了資料庫的物理實現,包括軟體和資料存放區結構,即:PDM與具體的資料庫有關。
下面做了個簡單的例子,簡述了CDM與PDM與Sql之間的轉換,以及從MySql如何轉成Oracle
一、MySql_DB——>PDM——>CDM——>Oracle_DB
意思是要將MySql中的庫表指令碼轉成相應的Oracle指令碼;
所需要的過程是,首先將MySql中的Sql指令碼轉成其相應的MySql_PDM,然後由這個PDM再轉換成CDM,這時由於CDM是與具體的DBMS無關的、所以此時我們將CDM轉成Oracle_PDM,最後將這個Oracle_PDM導成OracleSQL檔案。
上面的流程強調的是必須轉成CDM先,因為CMD不同於PDM,它是與DBMS無關的、只表示資料庫的整體邏輯結構。
具體操作如下:
首先安裝PowerDesigner
安裝完成後、在資料庫中
建立好表(當然這裡測試用的MySql,這裡只簡述其中一個表了,比方說此時我們已經有了該資料庫表的Sql指令檔了,當然也可以在PowerDesigner進行串連的。)
開啟PowerDesigner然後依次選擇
File——>Reverse Engineer——>Database
選擇相應的資料庫類型(這裡測試用的是Mysql5.0):
然後選擇Using Script File
點擊確定後將產生相應的MySql_PDM:
然後選擇Tool——>Generate Conceptual Data Model
或者是快速鍵:Ctrl+Shift+C
PowerDesigner 中的快速鍵大致是:
PDM 即:Ctrl+Shift+P
CDM 即:Ctrl+Shift+C
OOM 即:Ctrl+Shift+O
即根據字母來產生;
SQL指令碼:Ctrl+G
得到CDM後我們就可以將CDM轉為相應DBMS的PDM,即:快速鍵Ctrl+Shift+P (這裡我們要產生的是Oracle,所以選擇了Oracle1g),
如所示
點擊確定後產生了Oracle_PDM
這時只要使用快速鍵Ctrl+G即可將Oracle_PDM轉成Oracle指令碼sql檔案。
產生成功後,唯一點不足是:預存程序、觸發器等這些的轉換,正在摸索中。暫時還沒實現。
以上內容簡述了CDM與PDM與Sql之間的簡單轉換,有關PowerDesigner串連資料庫以及OOM、Entity Class等將在後面的文章中分享!!!
PowerDesigner之CDM、PDM、SQL之間轉換