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