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

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

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

然后選擇你的DBMS.

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

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

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

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

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