PDM與數據庫

pdm轉化爲數據庫實體
pdm做好後,最終是要將其轉化爲數據庫實體的。
1.確認當前Powerdesigner設置的dbms是否正確,即是否是我們要生成的數據庫類型,我在這裏使用的是sqlserver2000:
Powerdesigner->數據庫->更改當前dbms,選擇您的數據庫類型。

2.配置Powerdesigner與數據源的連接
Powerdesigner->數據庫->配置連接->用戶dsn(或系統dsn)->選擇、添加您的數據源
3.連接
Powerdesigner->數據庫->連接->設置好您剛纔建立的dsn確定。
OK,設置好連接後我們就可以將pdm生成sql語句了。
4.數據庫生成
Powerdesigner->數據庫->生成數據庫->配置好(默認就可以)後選擇確定就好了。
拿到sql腳本語句,大家都知道應當如何做了吧,放到sql查詢分析器裏執行吧。

Powerdesigner逆向工程從現有數據庫生成PDM

在數據建模過程中,我們建立概念數據模型,通過正向工程生成物理數據模型,生成數據庫建庫腳本,最後將物理數據模型生成關係數據庫,現在反過來,通過逆向工程將關係數據庫,生成物理數據模型。 
優點:

         在丟失數據模型或者數據庫模型同現有的數據庫不一致,可以通過該方法生成使用中數據庫的模型

缺點:

         還原回的模型中,可能會沒有中文註釋,沒有表外鍵對應關係(字段還有,索引關係沒了)

前提:

        1,確認要生成模型的數據庫是最新的,並且可以使用

        2,安裝Powerdesigner軟件

具體操作步驟:

一,建立ODBC數據源

        1, 打開系統ODBC數據源,位置“控制面板--管理工具--數據源(ODBC)

        2,選擇系統DSN,點擊添加按鈕,會彈出如下界面,選擇與數據庫相匹配的驅動程序

3,點擊完成,彈出數據源名稱(自定),和選擇你要連接的數據庫,如下圖所示

4,選擇確定後,該數據源建立成功,可以雙擊該數據源名稱進行連接測試,如下圖所示

5,至此數據源建立完成,當然這些也可以不用在這裏建立,在powerdesigner裏也可以建立,建立方法爲

選擇Database->configure connections,轉到system dsn標籤,點擊Add按鈕,選數據庫類型DB2,點擊完成。顯 示如下:輸入DataSource Name“PDMTest”;輸入ServerName“Database”, 配置完成。如下所示:

二,在Powerdesigner中逆向生成

      1,打開Powerdesigner工具,創建一個PDM文件,選擇與之匹配的數據庫類型“ibm db2 udb 8.x common server”。創建方法爲:右鍵點擊左側面板中的WorkSpace---->new------>physical data nodel ,在DBMS中選擇你要的數據類型,選擇好後點擊確定,則新建立了一個工作空間。

      2,選擇Database菜單下的Reverse Engineer Database,彈出Database Reverse Engineering對話框,選Using an ODBC data source選ODBC數據源“s2ms”,如下圖所示:


3,點擊確定後,顯示此數據庫中所有表、視圖、用戶(這個選擇一下該數據庫的用戶)。根據需要選擇後,轉換成pdm。圖示如下


4,選擇好後,點擊OK,則生成模型。


三,利用腳本生成模型

       如果你不光有個正在使有的數據庫,你還有一下建立庫的腳本,那你發財了!因爲用.sql的腳本生成的模型,就不存在用數據庫生成的缺點了,具體操作如下:

二、 通過SQL腳本逆向工程生成PDM

1、 數據庫SQL腳本文件crebas.sql。下爲腳本實例:
/*==============================================================*/
/* Database name: PhysicalDataModel_1 */
/* DBMS name: ORACLE Version 9i */
/* Created on: 2003-07-13 10:49:08 */
/*==============================================================*/
/*==============================================================*/
/* Table: "class" */
/*==============================================================*/
create table "class" (
"classID" NUMBER(2) not null,
"className" VARCHAR2(24),
constraint PK_CLASS primary key ("classID")
)
/
/*==============================================================*/
/* Table: "student" */
/*==============================================================*/
create table "student" (
"studentID" NUMBER(10) not null,
"studentName" VARCHAR2(4),
"classID" NUMBER(2),
constraint PK_STUDENT primary key ("studentID")
)
/
alter table "student"
add constraint FK_STUDENT_REFERENCE_CLASS foreign key ("classID")
references "class" ("classID")
/

2、 還是創建一個pdm,選擇Database--->Reverse Engineer Database,選擇Using files。


3、 看到由腳本自動生成相關的PDM如下所示:

四,生成模型後要導出數據庫建庫腳本

    導好的模型,當然是用來修改和導出建庫腳本的,操作方法如下

      1,選擇database--->generate database彈出如下窗口

在用戶的none中選擇數據庫用戶,同時可選要導出的表,最後點擊確定,如果不能正常生成腳本提示模型錯誤,則在上圖中的options中將check modle 的選項去掉,點擊確定,生成sql腳本,

這時生成的腳本不要着急去用,因爲可能是有問題,用記事本或其它工具打開這個腳本,你會發現在所屬名上也就是s2ms上都會加上""號,用Ctrl+H,將所有"替換爲空,就大功告成了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章