工具:
Sybase PowerDesigner 15.1
Microsoft SQL Server 2005
第一步概要設(shè)計:
打開PowerDesigner軟件,設(shè)計“概念數(shù)據(jù)模型”(Conceptual Data Model):
點擊workspace 右鍵---》New—>Conceptual Data Model,
彈出如下界面:

設(shè)計表、表結(jié)構(gòu):

在設(shè)計屬性(字段)的時候,三個字母(M、P、D)分別表示:
M:是否為空;(√表示不允許為空)
P:是否為主鍵;
D:是否在該軟件的視圖中顯示
第二步:物理設(shè)計
將“概念數(shù)據(jù)模型”設(shè)計的表轉(zhuǎn)換為“物理數(shù)據(jù)模型”(Physical Data Model),實際上是從“概要設(shè)計”轉(zhuǎn)換為“詳細(xì)設(shè)計”,即對表的具體實現(xiàn)。
將概要設(shè)計模板轉(zhuǎn)換為物理設(shè)計
選擇“Tools”-->“Generate Physical Data Model…”即可。

然后選擇你的DBMS.

點擊“確定”按鈕以后,就產(chǎn)生了對應(yīng)“SQL Server 2005”數(shù)據(jù)庫的表、屬性、關(guān)系的具體實現(xiàn)。
這時就會有一個物理設(shè)計的模板出現(xiàn),將你在概要設(shè)計時的實體都轉(zhuǎn)換成具體的表。
第三步:在SQL Server 2005中手動創(chuàng)建數(shù)據(jù)庫(也可以用SQL創(chuàng)建庫,pd可以將我們的表設(shè)計都轉(zhuǎn)換成SQL)
需手動在SQL SERVER 2005中創(chuàng)建您的數(shù)據(jù)!如:“Students“,此過程省略…
第四步:在數(shù)據(jù)源ODBC中配置用戶數(shù)據(jù)源

第五步:在SQL Server 2005中自動創(chuàng)建表結(jié)構(gòu)
首先:根據(jù)“物理數(shù)據(jù)模型”(Physical Data Model)自動建立相應(yīng)的SQL語句:

其次:執(zhí)行其創(chuàng)建的SQL語句文件,將數(shù)據(jù)表結(jié)構(gòu)自動創(chuàng)建到SQL Server 2005數(shù)據(jù)庫中:

完成以上步驟后,刷新SQL Server 2005數(shù)據(jù),將會看到你所創(chuàng)建的相關(guān)表結(jié)構(gòu)。
另外生成單張表SQL語句可以:
在物理設(shè)計模板中,選擇表--》右鍵—》SQL Perview…

生成SQL創(chuàng)建庫和表,我喜歡懶人式,或者說拿給客戶時,客戶用的爽。。。
建立表的主外鍵關(guān)系:
使用PowerDesigner物理模型為建的關(guān)系表添加外鍵,有個原則就是主表的主鍵名稱必須和副表的外鍵名稱一致。
測試(僅測試,不含技術(shù))
1.建主表user 2.建副表department
uid int primary key did int primary key
name varchar(32) uid int
2.對著模型右擊New->Reference
parent表為user表,child表為department
這樣就建立了關(guān)系,外建也自動建立了。
關(guān)于表關(guān)系的建立,本人也存疑,但有三種思路:
1、概要設(shè)計時設(shè)計好關(guān)系。(個人傾向于這種方式,有時間嘗試)
2、物理設(shè)計時設(shè)計好關(guān)系(筆者使用此方法,若表很多,關(guān)系復(fù)雜,此階段設(shè)計關(guān)系會很痛苦。偶深受其害!)
3、生產(chǎn)數(shù)據(jù)庫后,DBMS中建立關(guān)系(這種方式是筆者突發(fā)奇想,仔細(xì)思考,不建議采用這種方式,如果使用T-SQL重構(gòu)數(shù)據(jù)庫,又得重建關(guān)系)
仔細(xì)思考過后,個人認(rèn)為概要設(shè)計時,設(shè)計實體、實體必要屬性、實體與實體關(guān)系,然后在數(shù)據(jù)庫物理設(shè)計時詳細(xì)設(shè)計表屬性等內(nèi)容。
總有這樣那樣的途徑方便我們?nèi)プ瞿切┓爆嵉墓ぷ鳎ィ€未找到之前,只能靠自己去摸索了。。。。