第四章 數(shù)據(jù)庫概念設(shè)計及數(shù)據(jù)建模
4.1 數(shù)據(jù)庫概念設(shè)計概述
4.1.1 數(shù)據(jù)庫概念設(shè)計的任務(wù)
1、 定義和描述應(yīng)用領(lǐng)域涉及的數(shù)據(jù)范圍;
2、 獲取應(yīng)用領(lǐng)域或問題域的信息模型;
3、 描述清楚數(shù)據(jù)的屬性特征;
4、 描述清楚數(shù)據(jù)之間的關(guān)系;
5、 定義和描述數(shù)據(jù)的約束;
6、 說明數(shù)據(jù)的安全性要求;
7、 支持用戶的各種數(shù)據(jù)處理需求;
8、 保證信息模型方便地轉(zhuǎn)換成數(shù)據(jù)庫的邏輯結(jié)構(gòu),同時便于用戶理解。
4.1.2 概念設(shè)計過程
1、 概念設(shè)計的依據(jù):是需求分析階段的文檔,通過對這些文檔的分析理解,構(gòu)造出信息模型,編寫數(shù)據(jù)庫概念設(shè)計說明書,信息模型和數(shù)據(jù)庫概念設(shè)計說明書是數(shù)據(jù)庫邏輯設(shè)計的依據(jù);
2、 概念設(shè)計的基本步驟:
(1) 確定實體集;
(2) 確定聯(lián)系和聯(lián)系類型;
(3) 建立由信息模型表示的企業(yè)模型;
(4) 確定實體集屬性;
(5) 對信息模型優(yōu)化。
4.2 數(shù)據(jù)建模方法
1、 數(shù)據(jù)建模方法的共同特點是:
(1) 能夠真實客觀地描述現(xiàn)實世界中的數(shù)據(jù)及數(shù)據(jù)之間的關(guān)系;
(2) 組成模型的概念少,語義清楚,容易理解;
(3) 不同概念的語義不重疊,概念無多義性;
(4) 用圖形方式描述數(shù)據(jù),數(shù)據(jù)直觀易懂,有利于數(shù)據(jù)庫設(shè)計者和用戶交流;
(5) 這種數(shù)據(jù)模型容易轉(zhuǎn)換成數(shù)據(jù)庫邏輯設(shè)計階段需要的數(shù)據(jù)結(jié)構(gòu)。
4.3 ER建模方法
4.3.1 基本概念
1、 實體或?qū)嵗褐缚陀^存在并可相互區(qū)分的事物,可以是一個具體的人或物,也可以是抽象的事件或概念;
2、 實體集:表示一個現(xiàn)實的和抽象事物的集合,這些事物必須具有相同的屬性或特征。
3、 屬性:用于描述一個實體集的性質(zhì)和特征;
4、 碼:實體集中能惟一標(biāo)識每一個實例的屬性或?qū)傩越M;
5、 聯(lián)系:描述現(xiàn)實世界中實體之間的關(guān)系。(1)一對一聯(lián)系;(2)一對多聯(lián)系;(3)多對多聯(lián)系
4.3.2 ER方法語法
1、 ER方法中用矩形框表示實體集,矩形框內(nèi)寫上實體集的名稱;
2、 ER模型用菱形表示聯(lián)系,聯(lián)系名寫在菱形框內(nèi);
3、 ER模型中實體集的屬性用橢圓或圓角矩形框表示,屬性名字寫在其中。
4.4 IDEF1X 建模方法
4.4.1 IDEF1X概述
1、 IDEF0側(cè)重描述系統(tǒng)功能,被稱為功能建模方法;IDEF1X側(cè)重分析、抽象和概括應(yīng)用領(lǐng)域中的數(shù)據(jù),稱為數(shù)據(jù)建模方法;
2、 IDEF1X方法具有豐富的語法和語義;
3、 實體集分為(1)獨立標(biāo)識符實體集;(2)從屬標(biāo)識符實體集;
4、 實體集之間的聯(lián)系分為:(1)標(biāo)定型聯(lián)系;(2)非標(biāo)定型聯(lián)系;(3)分類聯(lián)系;(4)不確定聯(lián)系
4.4.2 IDEF1X模型元素
1、 實體集:
(1) 實體集語義:如果一個實體集的每一個實例都能被惟一地標(biāo)識,而不決定于它與其他實體的聯(lián)系,那么該實體集稱為獨立實體集;否則就叫從屬實體集;
(2) 實體集語法:IDEF1X用矩形框來表示獨立實體集,用圓角矩形框來表示從屬實體集;
2、 聯(lián)系:
(1) 聯(lián)系語義:
(A) 標(biāo)定型聯(lián)系:一個“確定型聯(lián)系”中,如果子女實體集中的每個實例都是由它與雙親的聯(lián)系而確定的,這個關(guān)系稱為“標(biāo)定型聯(lián)系”;
(B) 非標(biāo)定型聯(lián)系:一個“確定型聯(lián)系”中,如果子女實體集中的每一個實例都能被惟一地確認(rèn)而無需了解與之相聯(lián)系的雙親實體集的實例,這個問題關(guān)系叫“非標(biāo)定型聯(lián)系”。
(C) 分類聯(lián)系:是兩個或多個實體集之間的聯(lián)系,且在這些實體集中存在一個一般實體集,它的每一個實例都恰好與一個且僅一個分類實體集的一個實例相聯(lián)系。
(D) 不確定聯(lián)系:一個非確定聯(lián)系又稱為多對多聯(lián)系,這種聯(lián)系關(guān)聯(lián)的兩個實體集之間,任一實體集的一個實例都將對應(yīng)另一實體集的0個、1個或多個實例。
(2) 聯(lián)系的語法:
(A) 標(biāo)定聯(lián)系語法:在IDEF1X圖中,聯(lián)系的語法用直線表示,在一個標(biāo)定型聯(lián)系中,子女實體集總是一個從屬實體集,用圓角矩形框表示;
(B) 非標(biāo)定聯(lián)系語法:如果兩個實體集之間有關(guān)系,并且是一個非標(biāo)定聯(lián)系,就用一條虛線把它們連接起來。
(C) 分類聯(lián)系語法:一般實體集的一個實例只能與分類實體集的一個實例相對應(yīng);
(D) 不確定聯(lián)系m:n的語法:不確定聯(lián)系用一個兩端帶有實心圓的線段描述,表示多對多的連接關(guān)系。
3、 屬性
(1) 屬性的語義:用來描述一類現(xiàn)實或抽象事物的特征或性質(zhì)。一個屬性的具體取值叫屬性實例,它由屬性的類型和值來定義。
(2) 屬性的語法
(A) 主碼和非主碼屬性語法:在一個實體集中屬性要有惟一的名字,屬性名由名詞表示,主碼屬性名后加(PK)標(biāo)注,被列在屬性列表的頂端,并用水平線將主碼和其他屬性分開。
(B) 外碼語法:在外碼屬性后加“FK”來識別由聯(lián)系繼承得到的外來屬性。
4.4.3 建模過程
1、第一階段:建模規(guī)劃及準(zhǔn)備
(1) 建模目標(biāo):
(A) 目標(biāo)說明:回答將構(gòu)造的模型完成什么功能,涉及的問題和數(shù)據(jù)范圍,同時說明是一個當(dāng)前系統(tǒng)模型還是待建模型。
(B) 范圍說明:在建模初期要給出模型覆蓋的問題范圍;
(2) 建模計劃
(A) 項目說明;
(B) 收集數(shù)據(jù);
(C) 定義實體;
(D) 定義聯(lián)系;
(E) 定義碼屬性;
(F) 定義非碼屬性;
(G) 確認(rèn)模型;
(H) 評審驗收。
(3) 組織隊伍:包括項目負責(zé)人、建模者、信息源、課題專家、評審委員會
1、 第二階段:定義實體集
(1) 目標(biāo)是標(biāo)識和定義應(yīng)用領(lǐng)域中的實體集,方法是分類標(biāo)識原始材料中的所有名詞;
(2) 區(qū)別實體集名詞和非實體集名詞的方法,是否具有下列特征:
(A) 它能夠被描述或說明嗎?
(B) 有多少同類的實例嗎?
(C) 每個實例可以被標(biāo)識和區(qū)分嗎?
2、 第三階段:定義聯(lián)系
(1) 標(biāo)識實體集之間的聯(lián)系:建立聯(lián)系矩陣,聯(lián)系矩陣由一個二維數(shù)組表示。把實體集沿水平和垂直兩方向列出,分析兩個實體間的聯(lián)系,有聯(lián)系就用“X”表示,不存在聯(lián)系用“null”表示。聯(lián)系只標(biāo)識直接關(guān)系,不標(biāo)識間接關(guān)系。
(2) 定義聯(lián)系:包括表示依賴、命名聯(lián)系、關(guān)于聯(lián)系的說明;當(dāng)實體集之間的依賴關(guān)系建立后,就可以命名聯(lián)系了。聯(lián)系的名字可以動詞表示。原則必須是具體的、簡明的和有意義的。
(3) 構(gòu)造實體級數(shù):實體級圖的范圍和數(shù)目,依賴于建模的規(guī)模和建模問題涉及的實體集數(shù)目。
3、 第四階段:定義健
(1) 分解不確定的聯(lián)系:把實體級圖中不確定的關(guān)系轉(zhuǎn)換成確定的連接形式,把每一個不確定的聯(lián)系轉(zhuǎn)換成為兩個確定的聯(lián)系;
(2) 標(biāo)識碼屬性:碼屬性是那些能夠惟一識別實體集中每一個實例的屬性;
(3) 遷移主碼:把一個實體集的主碼復(fù)制到其他有關(guān)實體集的過程,但要遵守以下規(guī)則:
(A) 在一個聯(lián)系中,遷移總是從父到子或從一般實體集移向分類實體集;
(B) 主碼屬性才能被遷移,如主碼由多個屬性組成,則要全部遷移;
4、 第五階段:定義屬性
(1) 標(biāo)識和定義非主屬性;
(2) 建立屬性的所有者;
(3) 確認(rèn)屬性的定義;
(4) 繪制局部數(shù)據(jù)視圖;
(A) 實體集的名稱和編號寫在矩形框外的上面;
(B) 主碼屬性寫在矩形框內(nèi)水平線的上面并用“PK”標(biāo)注;
(C) 外碼屬性寫在矩形框內(nèi)水平線的下面并用“FK”標(biāo)注;
(D) 非主屬性也可以寫在矩形框內(nèi)水平線的下面;
相關(guān)推薦:2010年9月計算機等級考試精華備考資料匯總北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |