版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、數(shù)據(jù)庫(kù)原理數(shù)據(jù)庫(kù)原理 孫大為孫大為中國(guó)地質(zhì)大學(xué)中國(guó)地質(zhì)大學(xué) 信息工程學(xué)院信息工程學(xué)院課程內(nèi)容安排數(shù)據(jù)庫(kù)編程數(shù)據(jù)庫(kù)編程數(shù)據(jù)庫(kù)安全性數(shù)據(jù)庫(kù)安全性關(guān)系數(shù)據(jù)庫(kù)標(biāo)關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語言準(zhǔn)語言SQLSQL數(shù)據(jù)庫(kù)完整性數(shù)據(jù)庫(kù)完整性關(guān)系數(shù)據(jù)庫(kù)關(guān)系數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)關(guān)系數(shù)據(jù)理論關(guān)系數(shù)據(jù)理論緒緒 論論關(guān)系查詢處理關(guān)系查詢處理和查詢優(yōu)化和查詢優(yōu)化數(shù)據(jù)庫(kù)恢復(fù)技數(shù)據(jù)庫(kù)恢復(fù)技術(shù)術(shù)并發(fā)控制并發(fā)控制第七講數(shù)據(jù)庫(kù)設(shè)計(jì)本講目標(biāo)7.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述7.2 需求分析7.3 概念結(jié)構(gòu)設(shè)計(jì)7.4 邏輯結(jié)構(gòu)設(shè)計(jì)7.5 物理結(jié)構(gòu)設(shè)計(jì)7.6 數(shù)據(jù)庫(kù)的實(shí)施和維護(hù)7.7 小結(jié)7.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述u 數(shù)據(jù)庫(kù)設(shè)計(jì)n數(shù)據(jù)庫(kù)設(shè)計(jì)是指對(duì)于一個(gè)給定的
2、應(yīng)用環(huán)境,構(gòu)造(設(shè)數(shù)據(jù)庫(kù)設(shè)計(jì)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造(設(shè)計(jì))優(yōu)化的數(shù)據(jù)庫(kù)計(jì))優(yōu)化的數(shù)據(jù)庫(kù)邏輯模式邏輯模式和和物理結(jié)構(gòu)物理結(jié)構(gòu),并據(jù)此建立并據(jù)此建立數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng)數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)和管理數(shù),使之能夠有效地存儲(chǔ)和管理數(shù)據(jù),滿足各種用戶的應(yīng)用需求,包括信息管理要求和據(jù),滿足各種用戶的應(yīng)用需求,包括信息管理要求和數(shù)據(jù)操作要求。數(shù)據(jù)操作要求。n信息管理要求:在數(shù)據(jù)庫(kù)中應(yīng)該存儲(chǔ)和管理哪些數(shù)據(jù)信息管理要求:在數(shù)據(jù)庫(kù)中應(yīng)該存儲(chǔ)和管理哪些數(shù)據(jù)對(duì)象對(duì)象 。n數(shù)據(jù)操作要求:對(duì)數(shù)據(jù)對(duì)象需要進(jìn)行哪些操作,如查數(shù)據(jù)操作要求:對(duì)數(shù)據(jù)對(duì)象需要進(jìn)行哪些操作,如查詢、增、刪、改、統(tǒng)計(jì)等操作。詢、增
3、、刪、改、統(tǒng)計(jì)等操作。 數(shù)據(jù)庫(kù)設(shè)計(jì)概述(續(xù))u 數(shù)據(jù)庫(kù)設(shè)計(jì)n數(shù)據(jù)庫(kù)設(shè)計(jì)的目標(biāo)是為用戶和各種應(yīng)用系統(tǒng)提供一個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的目標(biāo)是為用戶和各種應(yīng)用系統(tǒng)提供一個(gè)信息基礎(chǔ)設(shè)施信息基礎(chǔ)設(shè)施和高效率的和高效率的運(yùn)行環(huán)境運(yùn)行環(huán)境 。n高效率的運(yùn)行環(huán)境高效率的運(yùn)行環(huán)境l數(shù)據(jù)庫(kù)數(shù)據(jù)的存取效率高數(shù)據(jù)庫(kù)數(shù)據(jù)的存取效率高l數(shù)據(jù)庫(kù)存儲(chǔ)空間的利用率高數(shù)據(jù)庫(kù)存儲(chǔ)空間的利用率高l數(shù)據(jù)庫(kù)系統(tǒng)運(yùn)行管理的效率高數(shù)據(jù)庫(kù)系統(tǒng)運(yùn)行管理的效率高7.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述7.1.1 數(shù)據(jù)庫(kù)設(shè)計(jì)的特點(diǎn)7.1.2 數(shù)據(jù)庫(kù)設(shè)計(jì)方法7.1.3 數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟7.1.4 數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的各級(jí)模式7.1.1 數(shù)據(jù)庫(kù)設(shè)計(jì)的特點(diǎn)1. 數(shù)據(jù)庫(kù)建設(shè)的基本規(guī)律
4、n三分技術(shù),七分管理,十二分基礎(chǔ)數(shù)據(jù)三分技術(shù),七分管理,十二分基礎(chǔ)數(shù)據(jù) n管理管理 l數(shù)據(jù)庫(kù)建設(shè)項(xiàng)目管理數(shù)據(jù)庫(kù)建設(shè)項(xiàng)目管理 l企業(yè)(即應(yīng)用部門)的業(yè)務(wù)管理企業(yè)(即應(yīng)用部門)的業(yè)務(wù)管理 n基礎(chǔ)數(shù)據(jù)基礎(chǔ)數(shù)據(jù) l數(shù)據(jù)的收集、整理、組織和不斷更新數(shù)據(jù)的收集、整理、組織和不斷更新數(shù)據(jù)庫(kù)設(shè)計(jì)的特點(diǎn)(續(xù))2. 結(jié)構(gòu)(數(shù)據(jù))設(shè)計(jì)和行為(處理)設(shè)計(jì)相結(jié)合 n將數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)處理設(shè)計(jì)密切結(jié)合將數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)處理設(shè)計(jì)密切結(jié)合u結(jié)構(gòu)和行為分離的設(shè)計(jì)n傳統(tǒng)的軟件工程:重傳統(tǒng)的軟件工程:重 行為設(shè)計(jì)行為設(shè)計(jì)l忽視對(duì)應(yīng)用中數(shù)據(jù)語義的分析和抽象,只要有可能就盡忽視對(duì)應(yīng)用中數(shù)據(jù)語義的分析和抽象,只要有可能就盡量推遲
5、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)的決策量推遲數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)的決策n早期的數(shù)據(jù)庫(kù)設(shè)計(jì):重早期的數(shù)據(jù)庫(kù)設(shè)計(jì):重 結(jié)構(gòu)設(shè)計(jì)結(jié)構(gòu)設(shè)計(jì)l致力于數(shù)據(jù)模型和數(shù)據(jù)庫(kù)建模方法研究,忽視了行為設(shè)致力于數(shù)據(jù)模型和數(shù)據(jù)庫(kù)建模方法研究,忽視了行為設(shè)計(jì)對(duì)結(jié)構(gòu)設(shè)計(jì)的影響計(jì)對(duì)結(jié)構(gòu)設(shè)計(jì)的影響數(shù)據(jù)庫(kù)設(shè)計(jì)的特點(diǎn)(續(xù))結(jié)構(gòu)和行為分離的設(shè)計(jì)結(jié)構(gòu)和行為分離的設(shè)計(jì) 現(xiàn)實(shí)世界現(xiàn)實(shí)世界概念模型設(shè)計(jì)概念模型設(shè)計(jì)子模式設(shè)計(jì)子模式設(shè)計(jì)物理數(shù)據(jù)庫(kù)設(shè)計(jì)物理數(shù)據(jù)庫(kù)設(shè)計(jì)邏輯數(shù)據(jù)庫(kù)設(shè)計(jì)邏輯數(shù)據(jù)庫(kù)設(shè)計(jì)建立數(shù)據(jù)庫(kù)建立數(shù)據(jù)庫(kù)數(shù)據(jù)分析數(shù)據(jù)分析功能分析功能分析功能模型功能模型功能說明功能說明事務(wù)設(shè)計(jì)事務(wù)設(shè)計(jì)應(yīng)用設(shè)計(jì)應(yīng)用設(shè)計(jì)應(yīng)用開發(fā)應(yīng)用開發(fā)系統(tǒng)調(diào)試系統(tǒng)調(diào)試數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)應(yīng)用系統(tǒng)設(shè)計(jì)應(yīng)用
6、系統(tǒng)設(shè)計(jì)7.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述7.1.1 數(shù)據(jù)庫(kù)設(shè)計(jì)的特點(diǎn)7.1.2 數(shù)據(jù)庫(kù)設(shè)計(jì)方法7.1.3 數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟7.1.4 數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的各級(jí)模式7.1.2 數(shù)據(jù)庫(kù)設(shè)計(jì)方法u大型數(shù)據(jù)庫(kù)設(shè)計(jì)是涉及多學(xué)科的綜合性技術(shù),又是一項(xiàng)龐大的工程項(xiàng)目。u它要求多方面的知識(shí)和技術(shù)。主要包括:n計(jì)算機(jī)的基礎(chǔ)知識(shí)計(jì)算機(jī)的基礎(chǔ)知識(shí)n軟件工程的原理和方法軟件工程的原理和方法n程序設(shè)計(jì)的方法和技巧程序設(shè)計(jì)的方法和技巧n數(shù)據(jù)庫(kù)的基本知識(shí)數(shù)據(jù)庫(kù)的基本知識(shí)n數(shù)據(jù)庫(kù)設(shè)計(jì)技術(shù)數(shù)據(jù)庫(kù)設(shè)計(jì)技術(shù)n應(yīng)用領(lǐng)域的知識(shí)應(yīng)用領(lǐng)域的知識(shí)數(shù)據(jù)庫(kù)設(shè)計(jì)方法(續(xù))u手工試湊法n設(shè)計(jì)質(zhì)量與設(shè)計(jì)人員的經(jīng)驗(yàn)和水平有直接關(guān)系設(shè)計(jì)質(zhì)量與設(shè)計(jì)人員的經(jīng)驗(yàn)和水平
7、有直接關(guān)系n缺乏科學(xué)理論和工程方法的支持,工程的質(zhì)量難以保缺乏科學(xué)理論和工程方法的支持,工程的質(zhì)量難以保證證n數(shù)據(jù)庫(kù)運(yùn)行一段時(shí)間后常常又不同程度地發(fā)現(xiàn)各種問數(shù)據(jù)庫(kù)運(yùn)行一段時(shí)間后常常又不同程度地發(fā)現(xiàn)各種問題,增加了維護(hù)代價(jià)題,增加了維護(hù)代價(jià)數(shù)據(jù)庫(kù)設(shè)計(jì)方法(續(xù))u規(guī)范設(shè)計(jì)法n手工設(shè)計(jì)方法手工設(shè)計(jì)方法n基本思想基本思想l過程迭代和逐步求精過程迭代和逐步求精n典型方法典型方法l新奧爾良(新奧爾良(New Orleans)方法)方法l基于基于E-R模型的數(shù)據(jù)庫(kù)設(shè)計(jì)方法模型的數(shù)據(jù)庫(kù)設(shè)計(jì)方法l3NF(第三范式)的設(shè)計(jì)方法(第三范式)的設(shè)計(jì)方法l面向?qū)ο蟮臄?shù)據(jù)庫(kù)設(shè)計(jì)方法面向?qū)ο蟮臄?shù)據(jù)庫(kù)設(shè)計(jì)方法l統(tǒng)一建模語言(
8、統(tǒng)一建模語言(UML)方法)方法7.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述7.1.1 數(shù)據(jù)庫(kù)設(shè)計(jì)的特點(diǎn)7.1.2 數(shù)據(jù)庫(kù)設(shè)計(jì)方法7.1.3 數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟7.1.4 數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的各級(jí)模式7.1.3 數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟u數(shù)據(jù)庫(kù)設(shè)計(jì)分6個(gè)階段n需求分析需求分析n概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì)n邏輯結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)n物理結(jié)構(gòu)設(shè)計(jì)物理結(jié)構(gòu)設(shè)計(jì)n數(shù)據(jù)庫(kù)實(shí)施數(shù)據(jù)庫(kù)實(shí)施n數(shù)據(jù)庫(kù)運(yùn)行和維護(hù)數(shù)據(jù)庫(kù)運(yùn)行和維護(hù) u需求分析和概念設(shè)計(jì)獨(dú)立于任何數(shù)據(jù)庫(kù)管理系統(tǒng) u邏輯設(shè)計(jì)和物理設(shè)計(jì)與選用的數(shù)據(jù)庫(kù)管理系統(tǒng)密切相關(guān)數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟(續(xù))數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟(續(xù))u參加數(shù)據(jù)庫(kù)設(shè)計(jì)的人員n系統(tǒng)分析人員系統(tǒng)分析人員和和數(shù)據(jù)庫(kù)設(shè)計(jì)人員
9、數(shù)據(jù)庫(kù)設(shè)計(jì)人員l自始至終參與數(shù)據(jù)庫(kù)設(shè)計(jì),其水平?jīng)Q定了數(shù)據(jù)庫(kù)系統(tǒng)的自始至終參與數(shù)據(jù)庫(kù)設(shè)計(jì),其水平?jīng)Q定了數(shù)據(jù)庫(kù)系統(tǒng)的質(zhì)量質(zhì)量n數(shù)據(jù)庫(kù)管理員和用戶代表數(shù)據(jù)庫(kù)管理員和用戶代表l主要參加需求分析與數(shù)據(jù)庫(kù)的運(yùn)行和維護(hù)主要參加需求分析與數(shù)據(jù)庫(kù)的運(yùn)行和維護(hù)n應(yīng)用開發(fā)人員應(yīng)用開發(fā)人員l包括程序員和操作員包括程序員和操作員l在實(shí)施階段參與進(jìn)來,分別負(fù)責(zé)編制程序和準(zhǔn)備軟硬件在實(shí)施階段參與進(jìn)來,分別負(fù)責(zé)編制程序和準(zhǔn)備軟硬件環(huán)境環(huán)境數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟(續(xù))1. 需求分析階段n是否做得充分與準(zhǔn)確,決定了構(gòu)建數(shù)據(jù)庫(kù)的速度和質(zhì)是否做得充分與準(zhǔn)確,決定了構(gòu)建數(shù)據(jù)庫(kù)的速度和質(zhì)量量2. 概念結(jié)構(gòu)設(shè)計(jì)階段n通過對(duì)用戶需求進(jìn)行綜合、
10、歸納與抽象,形成一個(gè)獨(dú)通過對(duì)用戶需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于具體數(shù)據(jù)庫(kù)管理系統(tǒng)的概念模型立于具體數(shù)據(jù)庫(kù)管理系統(tǒng)的概念模型3. 邏輯結(jié)構(gòu)設(shè)計(jì)階段n將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)所支持的數(shù)據(jù)將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)所支持的數(shù)據(jù)模型,并對(duì)其進(jìn)行優(yōu)化模型,并對(duì)其進(jìn)行優(yōu)化數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟(續(xù))4. 物理結(jié)構(gòu)設(shè)計(jì)階段n為邏輯數(shù)據(jù)結(jié)構(gòu)選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)為邏輯數(shù)據(jù)結(jié)構(gòu)選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)n包括存儲(chǔ)結(jié)構(gòu)和存取方法包括存儲(chǔ)結(jié)構(gòu)和存取方法5. 數(shù)據(jù)庫(kù)實(shí)施階段n根據(jù)邏輯設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果構(gòu)建數(shù)據(jù)庫(kù)根據(jù)邏輯設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果構(gòu)建數(shù)據(jù)庫(kù)n編寫與調(diào)試應(yīng)用程序編寫與
11、調(diào)試應(yīng)用程序n組織數(shù)據(jù)入庫(kù)并進(jìn)行試運(yùn)行組織數(shù)據(jù)入庫(kù)并進(jìn)行試運(yùn)行6. 數(shù)據(jù)庫(kù)運(yùn)行和維護(hù)階段n經(jīng)過試運(yùn)行后即可投入正式運(yùn)行經(jīng)過試運(yùn)行后即可投入正式運(yùn)行n在運(yùn)行過程中必須不斷對(duì)其進(jìn)行評(píng)估、調(diào)整與修改在運(yùn)行過程中必須不斷對(duì)其進(jìn)行評(píng)估、調(diào)整與修改數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟(續(xù))u設(shè)計(jì)一個(gè)完善的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng) 往往是上述6個(gè)階段的不斷反復(fù)u這個(gè)設(shè)計(jì)步驟既是數(shù)據(jù)庫(kù)設(shè)計(jì)的過程,也包括了數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的設(shè)計(jì)過程u把數(shù)據(jù)庫(kù)的設(shè)計(jì)和對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)處理的設(shè)計(jì)緊密結(jié)合起來,將這兩個(gè)方面的需求分析、抽象、設(shè)計(jì)、實(shí)現(xiàn)在各個(gè)階段同時(shí)進(jìn)行,相互參照,相互補(bǔ)充,以完善兩方面的設(shè)計(jì)圖圖7.3 數(shù)據(jù)庫(kù)設(shè)計(jì)各個(gè)階段的數(shù)據(jù)設(shè)計(jì)描述數(shù)據(jù)庫(kù)設(shè)計(jì)各
12、個(gè)階段的數(shù)據(jù)設(shè)計(jì)描述數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟(續(xù))7.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述7.1.1 數(shù)據(jù)庫(kù)設(shè)計(jì)的特點(diǎn)7.1.2 數(shù)據(jù)庫(kù)設(shè)計(jì)方法7.1.3 數(shù)據(jù)庫(kù)設(shè)計(jì)的基本步驟7.1.4 數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的各級(jí)模式7.1.4 數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的各級(jí)模式u數(shù)據(jù)庫(kù)設(shè)計(jì)不同階段形成的數(shù)據(jù)庫(kù)各級(jí)模式數(shù)據(jù)庫(kù)的各級(jí)模式數(shù)據(jù)庫(kù)的各級(jí)模式 數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的各級(jí)模式(續(xù))u數(shù)據(jù)庫(kù)設(shè)計(jì)不同階段形成的數(shù)據(jù)庫(kù)各級(jí)模式需求分析階段:需求分析階段:綜合各個(gè)用戶的應(yīng)用需求綜合各個(gè)用戶的應(yīng)用需求數(shù)據(jù)庫(kù)的各級(jí)模式數(shù)據(jù)庫(kù)的各級(jí)模式 數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的各級(jí)模式(續(xù))u數(shù)據(jù)庫(kù)設(shè)計(jì)不同階段形成的數(shù)據(jù)庫(kù)各級(jí)模式概念設(shè)計(jì)階段:概念設(shè)計(jì)階段: 形成獨(dú)立于機(jī)器特
13、點(diǎn),獨(dú)形成獨(dú)立于機(jī)器特點(diǎn),獨(dú)立于各個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)產(chǎn)立于各個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)產(chǎn)品的品的概念模式概念模式(E-R圖)圖)數(shù)據(jù)庫(kù)的各級(jí)模式數(shù)據(jù)庫(kù)的各級(jí)模式 數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的各級(jí)模式(續(xù))u數(shù)據(jù)庫(kù)設(shè)計(jì)不同階段形成的數(shù)據(jù)庫(kù)各級(jí)模式邏輯設(shè)計(jì)階段:邏輯設(shè)計(jì)階段:1. 首先將首先將E-R圖轉(zhuǎn)換成具體的數(shù)據(jù)庫(kù)產(chǎn)品支持的數(shù)據(jù)模型,如關(guān)系模型,圖轉(zhuǎn)換成具體的數(shù)據(jù)庫(kù)產(chǎn)品支持的數(shù)據(jù)模型,如關(guān)系模型,形成數(shù)據(jù)庫(kù)形成數(shù)據(jù)庫(kù)邏輯模式邏輯模式2. 然后根據(jù)用戶處理的要求、安全性的考慮,在基本表的基礎(chǔ)上再建立然后根據(jù)用戶處理的要求、安全性的考慮,在基本表的基礎(chǔ)上再建立必要的視圖(必要的視圖(View),形成數(shù)據(jù)的),形成數(shù)據(jù)的
14、外模式外模式數(shù)據(jù)庫(kù)設(shè)計(jì)過程中的各級(jí)模式(續(xù))u數(shù)據(jù)庫(kù)設(shè)計(jì)不同階段形成的數(shù)據(jù)庫(kù)各級(jí)模式物理設(shè)計(jì)階段:物理設(shè)計(jì)階段:根據(jù)數(shù)據(jù)庫(kù)管理系統(tǒng)特點(diǎn)和處理的需要,根據(jù)數(shù)據(jù)庫(kù)管理系統(tǒng)特點(diǎn)和處理的需要,進(jìn)行物理存儲(chǔ)安排,建立索引,形成數(shù)進(jìn)行物理存儲(chǔ)安排,建立索引,形成數(shù)據(jù)庫(kù)據(jù)庫(kù)內(nèi)模式內(nèi)模式數(shù)據(jù)庫(kù)的各級(jí)模式數(shù)據(jù)庫(kù)的各級(jí)模式 第七章 數(shù)據(jù)庫(kù)設(shè)計(jì)7.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述7.2 需求分析7.3 概念結(jié)構(gòu)設(shè)計(jì)7.4 邏輯結(jié)構(gòu)設(shè)計(jì)7.5 物理結(jié)構(gòu)設(shè)計(jì)7.6 數(shù)據(jù)庫(kù)的實(shí)施和維護(hù)7.7 小結(jié)7.2 需求分析7.2.1 需求分析的任務(wù)7.2.2 需求分析的方法7.2.3 數(shù)據(jù)字典需求分析(續(xù))u需求分析就是分析用戶的要求n是設(shè)計(jì)數(shù)
15、據(jù)庫(kù)的起點(diǎn)是設(shè)計(jì)數(shù)據(jù)庫(kù)的起點(diǎn)n結(jié)果是否準(zhǔn)確地反映了用戶的實(shí)際要求,將直接影響結(jié)果是否準(zhǔn)確地反映了用戶的實(shí)際要求,將直接影響到后面各個(gè)階段的設(shè)計(jì),并影響到設(shè)計(jì)結(jié)果是否合理到后面各個(gè)階段的設(shè)計(jì),并影響到設(shè)計(jì)結(jié)果是否合理和實(shí)用和實(shí)用7.2.1 需求分析的任務(wù)u詳細(xì)調(diào)查現(xiàn)實(shí)世界要處理的對(duì)象(組織、部門、企業(yè)等)u充分了解原系統(tǒng)(手工系統(tǒng)或計(jì)算機(jī)系統(tǒng))工作概況u明確用戶的各種需求u在此基礎(chǔ)上確定新系統(tǒng)的功能u新系統(tǒng)必須充分考慮今后可能的擴(kuò)充和改變需求分析的任務(wù)(續(xù))u調(diào)查的重點(diǎn)是“數(shù)據(jù)”和“處理”,獲得用戶對(duì)數(shù)據(jù)庫(kù)的要求(1)信息要求)信息要求l用戶需要從數(shù)據(jù)庫(kù)中獲得信息的內(nèi)容與性質(zhì)用戶需要從數(shù)據(jù)庫(kù)中獲
16、得信息的內(nèi)容與性質(zhì)l由信息要求可以導(dǎo)出數(shù)據(jù)要求,即在數(shù)據(jù)庫(kù)中需要存儲(chǔ)由信息要求可以導(dǎo)出數(shù)據(jù)要求,即在數(shù)據(jù)庫(kù)中需要存儲(chǔ)哪些數(shù)據(jù)哪些數(shù)據(jù)(2)處理要求)處理要求l用戶要完成的處理功能用戶要完成的處理功能l對(duì)處理性能的要求對(duì)處理性能的要求(3)安全性與完整性要求)安全性與完整性要求需求分析的任務(wù)(續(xù))u確定用戶最終需求的難點(diǎn)n用戶缺少計(jì)算機(jī)知識(shí),不能準(zhǔn)確地表達(dá)自己的需求,用戶缺少計(jì)算機(jī)知識(shí),不能準(zhǔn)確地表達(dá)自己的需求,他們所提出的需求往往不斷地變化。他們所提出的需求往往不斷地變化。n設(shè)計(jì)人員缺少用戶的專業(yè)知識(shí),不易理解用戶的真正設(shè)計(jì)人員缺少用戶的專業(yè)知識(shí),不易理解用戶的真正需求,甚至誤解用戶的需求需求
17、,甚至誤解用戶的需求u解決方法n設(shè)計(jì)人員必須不斷深入地與用戶進(jìn)行交流,才能逐步設(shè)計(jì)人員必須不斷深入地與用戶進(jìn)行交流,才能逐步確定用戶的實(shí)際需求確定用戶的實(shí)際需求7.2 需求分析7.2.1 需求分析的任務(wù)7.2.2 需求分析的方法7.2.3 數(shù)據(jù)字典7.2.2 需求分析的方法u調(diào)查清楚用戶的實(shí)際需求并進(jìn)行初步分析u與用戶達(dá)成共識(shí)u分析與表達(dá)這些需求調(diào)查用戶需求的步驟(1)調(diào)查組織機(jī)構(gòu)情況(2)調(diào)查各部門的業(yè)務(wù)活動(dòng)情況(3)協(xié)助用戶明確對(duì)新系統(tǒng)的各種要求,包括信 息要求、處理要求、完全性與完整性要求(4)確定新系統(tǒng)的邊界常用調(diào)查方法(1)跟班作業(yè)n通過親身參加業(yè)務(wù)工作了解業(yè)務(wù)活動(dòng)的情況通過親身參加
18、業(yè)務(wù)工作了解業(yè)務(wù)活動(dòng)的情況(2)開調(diào)查會(huì)n通過與用戶座談來了解業(yè)務(wù)活動(dòng)情況及用戶需求通過與用戶座談來了解業(yè)務(wù)活動(dòng)情況及用戶需求(3)請(qǐng)專人介紹(4)詢問n對(duì)某些調(diào)查中的問題,可以找專人詢問對(duì)某些調(diào)查中的問題,可以找專人詢問(5)設(shè)計(jì)調(diào)查表請(qǐng)用戶填寫n調(diào)查表設(shè)計(jì)合理,則很有效調(diào)查表設(shè)計(jì)合理,則很有效(6)查閱記錄n查閱與原系統(tǒng)有關(guān)的數(shù)據(jù)記錄查閱與原系統(tǒng)有關(guān)的數(shù)據(jù)記錄進(jìn)一步分析和表達(dá)用戶需求u分析方法n結(jié)構(gòu)化分析方法(結(jié)構(gòu)化分析方法(Structured Analysis,簡(jiǎn)稱,簡(jiǎn)稱SA方法)方法)lSA方法從最上層的系統(tǒng)組織機(jī)構(gòu)入手方法從最上層的系統(tǒng)組織機(jī)構(gòu)入手l采用自頂向下、逐層分解的方式分析
19、系統(tǒng)采用自頂向下、逐層分解的方式分析系統(tǒng)u對(duì)用戶需求進(jìn)行分析與表達(dá)后,需求分析報(bào)告必須提交給用戶,征得用戶的認(rèn)可需求分析過程需求分析過程需求分析過程 7.2 需求分析7.2.1 需求分析的任務(wù)7.2.2 需求分析的方法7.2.3 數(shù)據(jù)字典7.2.3 數(shù)據(jù)字典u數(shù)據(jù)字典是關(guān)于數(shù)據(jù)庫(kù)中數(shù)據(jù)的描述,即元數(shù)據(jù),不是數(shù)據(jù)本身u數(shù)據(jù)字典在需求分析階段建立,在數(shù)據(jù)庫(kù)設(shè)計(jì)過程中不斷修改、充實(shí)、完善u數(shù)據(jù)字典是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要結(jié)果注意:和關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)中數(shù)據(jù)字典的區(qū)別和聯(lián)系數(shù)據(jù)字典(續(xù))u數(shù)據(jù)字典的內(nèi)容n數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)n數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)n數(shù)據(jù)流數(shù)據(jù)流n數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)n處理過程處理過程
20、u 數(shù)據(jù)項(xiàng)是數(shù)據(jù)的最小組成單位u 若干個(gè)數(shù)據(jù)項(xiàng)可以組成一個(gè)數(shù)據(jù)結(jié)構(gòu)u 數(shù)據(jù)字典通過對(duì)數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)的定義來描述數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)的邏輯內(nèi)容1. 數(shù)據(jù)項(xiàng)u 數(shù)據(jù)項(xiàng)是不可再分的數(shù)據(jù)單位u 對(duì)數(shù)據(jù)項(xiàng)的描述數(shù)據(jù)項(xiàng)描述=數(shù)據(jù)項(xiàng)名,數(shù)據(jù)項(xiàng)含義說明,別名, 數(shù)據(jù)類型,長(zhǎng)度,取值范圍,取值含義, 與其他數(shù)據(jù)項(xiàng)的邏輯關(guān)系, 數(shù)據(jù)項(xiàng)之間的聯(lián)系n“取值范圍取值范圍”、“與其他數(shù)據(jù)項(xiàng)的邏輯關(guān)系與其他數(shù)據(jù)項(xiàng)的邏輯關(guān)系”定義了數(shù)定義了數(shù)據(jù)的完整性約束條件,是設(shè)計(jì)據(jù)的完整性約束條件,是設(shè)計(jì) 數(shù)據(jù)檢驗(yàn)功能的依據(jù)數(shù)據(jù)檢驗(yàn)功能的依據(jù)n可以用關(guān)系規(guī)范化理論為指導(dǎo),用數(shù)據(jù)依賴的概念分析可以用關(guān)系規(guī)范化理論為指導(dǎo),用數(shù)據(jù)依賴的概念分析
21、和表示數(shù)據(jù)項(xiàng)之間的聯(lián)系和表示數(shù)據(jù)項(xiàng)之間的聯(lián)系 2. 數(shù)據(jù)結(jié)構(gòu)u數(shù)據(jù)結(jié)構(gòu)反映了數(shù)據(jù)之間的組合關(guān)系。u 一個(gè)數(shù)據(jù)結(jié)構(gòu)可以由若干個(gè)數(shù)據(jù)項(xiàng)組成,也可以由若干個(gè)數(shù)據(jù)結(jié)構(gòu)組成,或由若干個(gè)數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)混合組成。u 對(duì)數(shù)據(jù)結(jié)構(gòu)的描述數(shù)據(jù)結(jié)構(gòu)描述=數(shù)據(jù)結(jié)構(gòu)名,含義說明,組成:數(shù)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu)3. 數(shù)據(jù)流u 數(shù)據(jù)流是數(shù)據(jù)結(jié)構(gòu)在系統(tǒng)內(nèi)傳輸?shù)穆窂?。u 對(duì)數(shù)據(jù)流的描述 數(shù)據(jù)流描述=數(shù)據(jù)流名,說明,數(shù)據(jù)流來源, 數(shù)據(jù)流去向,組成:數(shù)據(jù)結(jié)構(gòu), 平均流量,高峰期流量n數(shù)據(jù)流來源:說明該數(shù)據(jù)流來自哪個(gè)過程數(shù)據(jù)流來源:說明該數(shù)據(jù)流來自哪個(gè)過程n數(shù)據(jù)流去向:說明該數(shù)據(jù)流將到哪個(gè)過程去數(shù)據(jù)流去向:說明該數(shù)據(jù)流將到哪個(gè)過程去n平均
22、流量:在單位時(shí)間(每天、每周、每月等)里的傳平均流量:在單位時(shí)間(每天、每周、每月等)里的傳輸次數(shù)輸次數(shù)n高峰期流量:在高峰時(shí)期的數(shù)據(jù)流量高峰期流量:在高峰時(shí)期的數(shù)據(jù)流量4. 數(shù)據(jù)存儲(chǔ)u數(shù)據(jù)存儲(chǔ)是數(shù)據(jù)結(jié)構(gòu)停留或保存的地方,也是數(shù)據(jù)流的來源和去向之一。u對(duì)數(shù)據(jù)存儲(chǔ)的描述數(shù)據(jù)存儲(chǔ)描述=數(shù)據(jù)存儲(chǔ)名,說明,編號(hào),輸 入的數(shù)據(jù)流 ,輸出的數(shù)據(jù)流, 組成:數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)量, 存取頻度,存取方式n存取頻度:每小時(shí)、每天或每周存取次數(shù),每次存取的存取頻度:每小時(shí)、每天或每周存取次數(shù),每次存取的數(shù)據(jù)量等信息數(shù)據(jù)量等信息 n存取方法:批處理存取方法:批處理 / 聯(lián)機(jī)處理;檢索聯(lián)機(jī)處理;檢索 / 更新;順序檢索更新
23、;順序檢索 / 隨機(jī)檢索隨機(jī)檢索n輸入的數(shù)據(jù)流:數(shù)據(jù)來源輸入的數(shù)據(jù)流:數(shù)據(jù)來源n輸出的數(shù)據(jù)流:數(shù)據(jù)去向輸出的數(shù)據(jù)流:數(shù)據(jù)去向5. 處理過程u處理過程的具體處理邏輯一般用判定表或判定樹來描述。數(shù)據(jù)字典中只需要描述處理過程的說明性信息u處理過程說明性信息的描述 處理過程描述=處理過程名,說明,輸入:數(shù)據(jù)流, 輸出:數(shù)據(jù)流,處理:簡(jiǎn)要說明n簡(jiǎn)要說明:說明該處理過程的功能及處理要求簡(jiǎn)要說明:說明該處理過程的功能及處理要求l功能:該處理過程用來做什么功能:該處理過程用來做什么l處理要求:處理頻度要求,如單位時(shí)間里處理多少事務(wù),多處理要求:處理頻度要求,如單位時(shí)間里處理多少事務(wù),多少數(shù)據(jù)量、響應(yīng)時(shí)間要求等
24、少數(shù)據(jù)量、響應(yīng)時(shí)間要求等l處理要求是后面物理設(shè)計(jì)的輸入及性能評(píng)價(jià)的標(biāo)準(zhǔn)處理要求是后面物理設(shè)計(jì)的輸入及性能評(píng)價(jià)的標(biāo)準(zhǔn)需求分析小結(jié)u把需求收集和分析作為數(shù)據(jù)庫(kù)設(shè)計(jì)的第一階段是十分重要的。u第一階段收集的基礎(chǔ)數(shù)據(jù)(用數(shù)據(jù)字典來表達(dá))是下一步進(jìn)行概念設(shè)計(jì)的基礎(chǔ)。u強(qiáng)調(diào)兩點(diǎn) (1)設(shè)計(jì)人員應(yīng)充分考慮到可能的擴(kuò)充和改變,使設(shè)計(jì))設(shè)計(jì)人員應(yīng)充分考慮到可能的擴(kuò)充和改變,使設(shè)計(jì)易于更改,系統(tǒng)易于擴(kuò)充易于更改,系統(tǒng)易于擴(kuò)充 (2)必須強(qiáng)調(diào)用戶的參與)必須強(qiáng)調(diào)用戶的參與第七章 數(shù)據(jù)庫(kù)設(shè)計(jì)7.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述7.2 需求分析7.3 概念結(jié)構(gòu)設(shè)計(jì)7.4 邏輯結(jié)構(gòu)設(shè)計(jì)7.5 物理結(jié)構(gòu)設(shè)計(jì)7.6 數(shù)據(jù)庫(kù)的實(shí)施和維護(hù)7.7
25、 小結(jié)7.3 概念結(jié)構(gòu)設(shè)計(jì)7.3.1 概念模型7.3.2 E-R模型*7.3.3 擴(kuò)展的E-R模型*7.3.4 UML7.3.5 概念結(jié)構(gòu)設(shè)計(jì)7.3.1 概念模型u將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)(即概念模型)的過程就是概念結(jié)構(gòu)設(shè)計(jì)u概念模型的特點(diǎn)(1)能真實(shí)、充分地反映現(xiàn)實(shí)世界,是現(xiàn)實(shí)世界的一個(gè)真)能真實(shí)、充分地反映現(xiàn)實(shí)世界,是現(xiàn)實(shí)世界的一個(gè)真 實(shí)模型。實(shí)模型。(2)易于理解,從而可以用它和不熟悉計(jì)算機(jī)的用戶交換)易于理解,從而可以用它和不熟悉計(jì)算機(jī)的用戶交換 意見。意見。(3)易于更改,當(dāng)應(yīng)用環(huán)境和應(yīng)用要求改變時(shí),容易對(duì)概)易于更改,當(dāng)應(yīng)用環(huán)境和應(yīng)用要求改變時(shí),容易對(duì)概 念模型修改和
26、擴(kuò)充。念模型修改和擴(kuò)充。(4)易于向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換)易于向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換u描述概念模型的工具nE-R模型模型7.3 概念結(jié)構(gòu)設(shè)計(jì)7.3.1 概念結(jié)構(gòu)7.3.2 E-R模型*7.3.3 擴(kuò)展的E-R模型*7.3.4 UML7.3.5 概念結(jié)構(gòu)設(shè)計(jì)7.3.2 E-R模型1. 實(shí)體之間的聯(lián)系(1)兩個(gè)實(shí)體型之間的聯(lián)系:)兩個(gè)實(shí)體型之間的聯(lián)系:一對(duì)一聯(lián)系(一對(duì)一聯(lián)系(1 1)一對(duì)多聯(lián)系(一對(duì)多聯(lián)系(1 n)多對(duì)多聯(lián)系(多對(duì)多聯(lián)系(m n)E-R模型(續(xù))一對(duì)一聯(lián)系(一對(duì)一聯(lián)系(1 1)如果對(duì)于實(shí)體集如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集中的每一個(gè)實(shí)體,實(shí)體集B中
27、至多有中至多有一個(gè)(也可以沒有)實(shí)體與之聯(lián)系,反之亦然,則稱一個(gè)(也可以沒有)實(shí)體與之聯(lián)系,反之亦然,則稱實(shí)體集實(shí)體集A與實(shí)體集與實(shí)體集B具有一對(duì)一聯(lián)系,記為具有一對(duì)一聯(lián)系,記為1 1。例如,學(xué)校里一個(gè)班級(jí)只有一個(gè)正班長(zhǎng),而一個(gè)班長(zhǎng)例如,學(xué)校里一個(gè)班級(jí)只有一個(gè)正班長(zhǎng),而一個(gè)班長(zhǎng)只在一個(gè)班中任職,則班級(jí)與班長(zhǎng)之間具有一對(duì)一聯(lián)只在一個(gè)班中任職,則班級(jí)與班長(zhǎng)之間具有一對(duì)一聯(lián)系。系。E-R模型(續(xù))一對(duì)多聯(lián)系(一對(duì)多聯(lián)系(1 n)如果對(duì)于實(shí)體集如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集中的每一個(gè)實(shí)體,實(shí)體集B中有中有n個(gè)實(shí)個(gè)實(shí)體(體(n0)與之聯(lián)系,反之,對(duì)于實(shí)體集)與之聯(lián)系,反之,對(duì)于實(shí)體集B中的每一個(gè)
28、中的每一個(gè)實(shí)體,實(shí)體集實(shí)體,實(shí)體集A中至多只有一個(gè)實(shí)體與之聯(lián)系,則稱實(shí)中至多只有一個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集體集A與實(shí)體集與實(shí)體集B有一對(duì)多聯(lián)系,記為有一對(duì)多聯(lián)系,記為1 n。例如,一個(gè)班級(jí)中有若干名學(xué)生,而每個(gè)學(xué)生只在一個(gè)例如,一個(gè)班級(jí)中有若干名學(xué)生,而每個(gè)學(xué)生只在一個(gè)班級(jí)中學(xué)習(xí),則班級(jí)與學(xué)生之間具有一對(duì)多聯(lián)系。班級(jí)中學(xué)習(xí),則班級(jí)與學(xué)生之間具有一對(duì)多聯(lián)系。多對(duì)多聯(lián)系(多對(duì)多聯(lián)系(m n)如果對(duì)于實(shí)體集如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集中的每一個(gè)實(shí)體,實(shí)體集B中有中有n個(gè)實(shí)體(個(gè)實(shí)體(n0)與之聯(lián)系,反之,對(duì)于實(shí)體集)與之聯(lián)系,反之,對(duì)于實(shí)體集B中的中的每一個(gè)實(shí)體,實(shí)體集每一個(gè)實(shí)體,實(shí)體集
29、A中也有中也有m個(gè)實(shí)體(個(gè)實(shí)體(m0)與之)與之聯(lián)系,則稱實(shí)體集聯(lián)系,則稱實(shí)體集A與實(shí)體集與實(shí)體集B具有多對(duì)多聯(lián)系,記具有多對(duì)多聯(lián)系,記為為m n。例如,一門課程同時(shí)有若干個(gè)學(xué)生選修,而一個(gè)學(xué)例如,一門課程同時(shí)有若干個(gè)學(xué)生選修,而一個(gè)學(xué)生可以同時(shí)選修多門課程,則課程與學(xué)生之間具有生可以同時(shí)選修多門課程,則課程與學(xué)生之間具有多對(duì)多聯(lián)系。多對(duì)多聯(lián)系。E-R模型(續(xù))E-R模型(續(xù))圖圖7.6 兩個(gè)實(shí)體型之間的三類聯(lián)系兩個(gè)實(shí)體型之間的三類聯(lián)系E-R模型(續(xù))(2)兩個(gè)以上的實(shí)體型之間的聯(lián)系)兩個(gè)以上的實(shí)體型之間的聯(lián)系l一般地,兩個(gè)以上的實(shí)體型之間也存在著一對(duì)一、一對(duì)一般地,兩個(gè)以上的實(shí)體型之間也存在
30、著一對(duì)一、一對(duì)多、多對(duì)多聯(lián)系。多、多對(duì)多聯(lián)系。l對(duì)于課程、教師與參考書對(duì)于課程、教師與參考書3個(gè)實(shí)體型,如果一門課程可以個(gè)實(shí)體型,如果一門課程可以有若干個(gè)教師講授,使用若干本參考書,而每一個(gè)教師有若干個(gè)教師講授,使用若干本參考書,而每一個(gè)教師只講授一門課程,每一本參考書只供一門課程使用,則只講授一門課程,每一本參考書只供一門課程使用,則課程與教師、參考書之間的聯(lián)系是一對(duì)多的,如圖課程與教師、參考書之間的聯(lián)系是一對(duì)多的,如圖7.7(a)所示。所示。E-R模型(續(xù))圖圖7.7 三個(gè)實(shí)體型之間的聯(lián)系示例三個(gè)實(shí)體型之間的聯(lián)系示例E-R模型(續(xù))(3)單個(gè)實(shí)體型內(nèi)的聯(lián)系)單個(gè)實(shí)體型內(nèi)的聯(lián)系l同一個(gè)實(shí)體集
31、內(nèi)的各實(shí)體之間也可以存在一對(duì)一、一對(duì)同一個(gè)實(shí)體集內(nèi)的各實(shí)體之間也可以存在一對(duì)一、一對(duì)多、多對(duì)多的聯(lián)系。多、多對(duì)多的聯(lián)系。l例如,職工實(shí)體型內(nèi)部具有領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)的聯(lián)系,即某例如,職工實(shí)體型內(nèi)部具有領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)的聯(lián)系,即某一職工(干部)一職工(干部)“領(lǐng)導(dǎo)領(lǐng)導(dǎo)”若干名職工,而一個(gè)職工僅被若干名職工,而一個(gè)職工僅被另外一個(gè)職工直接領(lǐng)導(dǎo),因此這是一對(duì)多的聯(lián)系,如圖另外一個(gè)職工直接領(lǐng)導(dǎo),因此這是一對(duì)多的聯(lián)系,如圖7.8所示。所示。E-R模型(續(xù))圖圖7.8 單個(gè)實(shí)體型內(nèi)的一對(duì)多聯(lián)系示例單個(gè)實(shí)體型內(nèi)的一對(duì)多聯(lián)系示例n聯(lián)系的度:聯(lián)系的度:參與聯(lián)系的實(shí)體型的數(shù)目參與聯(lián)系的實(shí)體型的數(shù)目l2個(gè)實(shí)體型之間的聯(lián)系度為
32、個(gè)實(shí)體型之間的聯(lián)系度為2,也稱為二元聯(lián)系;,也稱為二元聯(lián)系;l3個(gè)實(shí)體型之間的聯(lián)系度為個(gè)實(shí)體型之間的聯(lián)系度為3,稱為,稱為三三元聯(lián)系;元聯(lián)系;lN個(gè)實(shí)體型之間的聯(lián)系度為個(gè)實(shí)體型之間的聯(lián)系度為N,也稱為,也稱為N元聯(lián)系元聯(lián)系E-R模型(續(xù))2. E-R圖nE-R圖提供了表示實(shí)體型、屬性和聯(lián)系的方法:圖提供了表示實(shí)體型、屬性和聯(lián)系的方法:l實(shí)體型:用矩形表示,矩形框內(nèi)寫明實(shí)體名。實(shí)體型:用矩形表示,矩形框內(nèi)寫明實(shí)體名。l屬性:用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體型連屬性:用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體型連接起來。接起來。例如,學(xué)生實(shí)體具有學(xué)號(hào)、姓名、性別、出生年份、例如,學(xué)生實(shí)體具有
33、學(xué)號(hào)、姓名、性別、出生年份、系、入學(xué)時(shí)間等屬性,用系、入學(xué)時(shí)間等屬性,用E-R圖表示如圖圖表示如圖7.9所示所示圖圖7.9 學(xué)生實(shí)體及屬性學(xué)生實(shí)體及屬性E-R模型(續(xù))l聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體型連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系分別與有關(guān)實(shí)體型連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(的類型(1 1,1 n或或m n)。)。l聯(lián)系可以具有屬性聯(lián)系可以具有屬性圖圖7.10 聯(lián)系的屬性聯(lián)系的屬性E-R模型(續(xù))u3. 一個(gè)實(shí)例n某個(gè)工廠物資管理的概念模型。物資管理涉及的實(shí)體有:某個(gè)工廠物資管理的概念模型。物資管理涉
34、及的實(shí)體有:l倉(cāng)庫(kù):屬性有倉(cāng)庫(kù)號(hào)、面積、電話號(hào)碼倉(cāng)庫(kù):屬性有倉(cāng)庫(kù)號(hào)、面積、電話號(hào)碼l零件:屬性有零件號(hào)、名稱、規(guī)格、單價(jià)、描述零件:屬性有零件號(hào)、名稱、規(guī)格、單價(jià)、描述l供應(yīng)商:屬性有供應(yīng)商號(hào)、姓名、地址、電話號(hào)碼、賬號(hào)供應(yīng)商:屬性有供應(yīng)商號(hào)、姓名、地址、電話號(hào)碼、賬號(hào)l項(xiàng)目:屬性有項(xiàng)目號(hào)、預(yù)算、開工日期項(xiàng)目:屬性有項(xiàng)目號(hào)、預(yù)算、開工日期l職工:屬性有職工號(hào)、姓名、年齡、職稱職工:屬性有職工號(hào)、姓名、年齡、職稱E-R模型(續(xù))n這些實(shí)體之間的聯(lián)系如下:這些實(shí)體之間的聯(lián)系如下: (1) 一個(gè)倉(cāng)庫(kù)可以存放多種零件,一種零件可以存放在多個(gè)一個(gè)倉(cāng)庫(kù)可以存放多種零件,一種零件可以存放在多個(gè) 倉(cāng)庫(kù)中,因此
35、倉(cāng)庫(kù)和零件具有多對(duì)多的聯(lián)系。用倉(cāng)庫(kù)中,因此倉(cāng)庫(kù)和零件具有多對(duì)多的聯(lián)系。用庫(kù)存量庫(kù)存量 來表示某種零件在某個(gè)倉(cāng)庫(kù)中的數(shù)量。來表示某種零件在某個(gè)倉(cāng)庫(kù)中的數(shù)量。(2) 一個(gè)倉(cāng)庫(kù)有多個(gè)職工當(dāng)倉(cāng)庫(kù)保管員,一個(gè)職工只能在一一個(gè)倉(cāng)庫(kù)有多個(gè)職工當(dāng)倉(cāng)庫(kù)保管員,一個(gè)職工只能在一 個(gè)倉(cāng)庫(kù)工作,因此倉(cāng)庫(kù)和職工之間是一對(duì)多的聯(lián)系。個(gè)倉(cāng)庫(kù)工作,因此倉(cāng)庫(kù)和職工之間是一對(duì)多的聯(lián)系。E-R模型(續(xù))n這些實(shí)體之間的聯(lián)系如下(續(xù)):這些實(shí)體之間的聯(lián)系如下(續(xù)): (3) 職工之間具有領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)關(guān)系。即倉(cāng)庫(kù)主任領(lǐng)導(dǎo)若職工之間具有領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)關(guān)系。即倉(cāng)庫(kù)主任領(lǐng)導(dǎo)若 干保管員,因此職工實(shí)體型中具有一對(duì)多的聯(lián)系。干保管員,因此職工實(shí)體
36、型中具有一對(duì)多的聯(lián)系。(4) 供應(yīng)商、項(xiàng)目和零件三者之間具有多對(duì)多的聯(lián)系。即一供應(yīng)商、項(xiàng)目和零件三者之間具有多對(duì)多的聯(lián)系。即一 個(gè)供應(yīng)商可以供給若干項(xiàng)目多種零件,每個(gè)項(xiàng)目可以使個(gè)供應(yīng)商可以供給若干項(xiàng)目多種零件,每個(gè)項(xiàng)目可以使 用不同供應(yīng)商供應(yīng)的零件,每種零件可由不同供應(yīng)商供用不同供應(yīng)商供應(yīng)的零件,每種零件可由不同供應(yīng)商供 給。給。E-R模型(續(xù))E-R模型(續(xù))E-R模型(續(xù))7.3 概念結(jié)構(gòu)設(shè)計(jì)7.3.1 概念結(jié)構(gòu)7.3.2 E-R模型*7.3.3 擴(kuò)展的E-R模型*7.3.4 UML7.3.5 概念結(jié)構(gòu)設(shè)計(jì)7.3.5 概念結(jié)構(gòu)設(shè)計(jì)1. 實(shí)體與屬性的劃分原則n為了簡(jiǎn)化為了簡(jiǎn)化E-R圖的處置,
37、現(xiàn)實(shí)世界的事物能作為屬性對(duì)圖的處置,現(xiàn)實(shí)世界的事物能作為屬性對(duì)待的,盡量作為屬性對(duì)待待的,盡量作為屬性對(duì)待。n兩條準(zhǔn)則:兩條準(zhǔn)則:(1)作為屬性,不能再具有需要描述的性質(zhì)。屬性必須)作為屬性,不能再具有需要描述的性質(zhì)。屬性必須是不可分的數(shù)據(jù)項(xiàng),不能包含其他屬性。是不可分的數(shù)據(jù)項(xiàng),不能包含其他屬性。 (2)屬性不能與其他實(shí)體具有聯(lián)系,即)屬性不能與其他實(shí)體具有聯(lián)系,即E-R圖中所表示圖中所表示的聯(lián)系是實(shí)體之間的聯(lián)系。的聯(lián)系是實(shí)體之間的聯(lián)系。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))例1 職工是一個(gè)實(shí)體,職工號(hào)、姓名、年齡是職工的屬性。n 職稱如果沒有與工資、福利掛鉤,根據(jù)準(zhǔn)則(職稱如果沒有與工資、福利掛鉤,根據(jù)準(zhǔn)則(1
38、)可以作為職工實(shí)體)可以作為職工實(shí)體的屬性的屬性n 如果不同的職稱有不同的工資、住房標(biāo)準(zhǔn)和不同的附加福利,則職如果不同的職稱有不同的工資、住房標(biāo)準(zhǔn)和不同的附加福利,則職稱作為一個(gè)實(shí)體更恰當(dāng)稱作為一個(gè)實(shí)體更恰當(dāng)概念結(jié)構(gòu)設(shè)計(jì)(續(xù))例2 在醫(yī)院中,一個(gè)病人只能住在一個(gè)病房,病房號(hào)可以作為病人實(shí)體的一個(gè)屬性; 如果病房還要與醫(yī)生實(shí)體發(fā)生聯(lián)系,即一個(gè)醫(yī)生負(fù)責(zé)幾個(gè)病房的病人的醫(yī)療工作,則根據(jù)準(zhǔn)則(2) 病房應(yīng)作為一個(gè)實(shí)體。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))例3 如果一種貨物只存放在一個(gè)倉(cāng)庫(kù),那么就可以把存放貨物的倉(cāng)庫(kù)的倉(cāng)庫(kù)號(hào)作為描述貨物存放地點(diǎn)的屬性。 如果一種貨物可以存放在多個(gè)倉(cāng)庫(kù)中,或者倉(cāng)庫(kù)本身又用面積作為屬性,或者
39、倉(cāng)庫(kù)與職工發(fā)生管理上的聯(lián)系,那么就應(yīng)把倉(cāng)庫(kù)作為一個(gè)實(shí)體。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))u例7.1 銷售管理子系統(tǒng)E-R圖的設(shè)計(jì)。n該子系統(tǒng)的主要功能是:該子系統(tǒng)的主要功能是:l處理顧客和銷售員送來的訂單處理顧客和銷售員送來的訂單l工廠是根據(jù)訂貨安排生產(chǎn)的工廠是根據(jù)訂貨安排生產(chǎn)的l交出貨物同時(shí)開出發(fā)票交出貨物同時(shí)開出發(fā)票l收到顧客付款后,根據(jù)發(fā)票存根和信貸情況進(jìn)行應(yīng)收款收到顧客付款后,根據(jù)發(fā)票存根和信貸情況進(jìn)行應(yīng)收款處理處理概念結(jié)構(gòu)設(shè)計(jì)(續(xù))u 參照需求分析和數(shù)據(jù)字典中的詳盡描述,遵循前面給出的兩個(gè)準(zhǔn)則,進(jìn)行了如下調(diào)整:(1)每張訂單由訂單號(hào)、若干頭信息和訂單細(xì)節(jié)組成。訂單細(xì)節(jié)又每張訂單由訂單號(hào)、若干頭信息
40、和訂單細(xì)節(jié)組成。訂單細(xì)節(jié)又有訂貨的零件號(hào)、數(shù)量等來描述。按照準(zhǔn)則(有訂貨的零件號(hào)、數(shù)量等來描述。按照準(zhǔn)則(2),訂單細(xì)節(jié)就不),訂單細(xì)節(jié)就不能作訂單的屬性處理而應(yīng)該上升為實(shí)體。一張訂單可以訂若干產(chǎn)能作訂單的屬性處理而應(yīng)該上升為實(shí)體。一張訂單可以訂若干產(chǎn)品,所以訂單與訂單細(xì)節(jié)兩個(gè)實(shí)體之間是品,所以訂單與訂單細(xì)節(jié)兩個(gè)實(shí)體之間是1 n的聯(lián)系。的聯(lián)系。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))(2)原訂單和產(chǎn)品的聯(lián)系實(shí)際上是訂單細(xì)節(jié)和產(chǎn)品的聯(lián)原訂單和產(chǎn)品的聯(lián)系實(shí)際上是訂單細(xì)節(jié)和產(chǎn)品的聯(lián)系。每條訂貨細(xì)節(jié)對(duì)應(yīng)一個(gè)產(chǎn)品描述,訂單處理時(shí)從系。每條訂貨細(xì)節(jié)對(duì)應(yīng)一個(gè)產(chǎn)品描述,訂單處理時(shí)從中獲得當(dāng)前單價(jià)、產(chǎn)品重量等信息。中獲得當(dāng)前單價(jià)、產(chǎn)
41、品重量等信息。(3)工廠對(duì)大宗訂貨給予優(yōu)惠。每種產(chǎn)品都規(guī)定了不同工廠對(duì)大宗訂貨給予優(yōu)惠。每種產(chǎn)品都規(guī)定了不同訂貨數(shù)量的折扣,應(yīng)增加一個(gè)訂貨數(shù)量的折扣,應(yīng)增加一個(gè)“折扣規(guī)則折扣規(guī)則”實(shí)體存放實(shí)體存放這些信息,而不應(yīng)把它們放在產(chǎn)品實(shí)體中。這些信息,而不應(yīng)把它們放在產(chǎn)品實(shí)體中。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))u最后得到銷售管理子系統(tǒng)E-R圖如圖7.23所示。圖圖7.23 銷售管理子系統(tǒng)的銷售管理子系統(tǒng)的E-R圖圖概念結(jié)構(gòu)設(shè)計(jì)(續(xù))u對(duì)每個(gè)實(shí)體定義的屬性如下:n 顧客:顧客:顧客號(hào)顧客號(hào),顧客名,地址,電話,信貸狀況,賬目余額,顧客名,地址,電話,信貸狀況,賬目余額n 訂單:訂單:訂單號(hào)訂單號(hào),顧客號(hào),訂貨項(xiàng)數(shù),訂
42、貨日期,交貨日期,工,顧客號(hào),訂貨項(xiàng)數(shù),訂貨日期,交貨日期,工種號(hào),生產(chǎn)地點(diǎn)種號(hào),生產(chǎn)地點(diǎn)n 訂單細(xì)則:訂單細(xì)則:訂單號(hào),細(xì)則號(hào)訂單號(hào),細(xì)則號(hào),零件號(hào),訂貨數(shù),金額,零件號(hào),訂貨數(shù),金額n 應(yīng)收賬款:應(yīng)收賬款:顧客號(hào),訂單號(hào)顧客號(hào),訂單號(hào),發(fā)票號(hào),應(yīng)收金額,支付日期,發(fā)票號(hào),應(yīng)收金額,支付日期,支付金額,當(dāng)前余額,貨款限額支付金額,當(dāng)前余額,貨款限額n 產(chǎn)品:產(chǎn)品:產(chǎn)品號(hào)產(chǎn)品號(hào),產(chǎn)品名,單價(jià),重量,產(chǎn)品名,單價(jià),重量n 折扣規(guī)則:折扣規(guī)則:產(chǎn)品號(hào),訂貨量產(chǎn)品號(hào),訂貨量,折扣,折扣概念結(jié)構(gòu)設(shè)計(jì)(續(xù))2. E-R圖的集成nE-R圖的集成一般需要分兩步圖的集成一般需要分兩步l 合并。解決各分合并。解
43、決各分E-R圖之間的沖突,將分圖之間的沖突,將分E-R圖合并起圖合并起來生成初步來生成初步E-R圖。圖。l 修改和重構(gòu)。消除不必要的冗余,生成基本修改和重構(gòu)。消除不必要的冗余,生成基本E-R圖。圖。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))(1)合并)合并E-R圖,生成初步圖,生成初步E-R圖圖l各個(gè)局部應(yīng)用所面向的問題不同,各個(gè)子系統(tǒng)的各個(gè)局部應(yīng)用所面向的問題不同,各個(gè)子系統(tǒng)的E-R圖圖之間必定會(huì)存在許多不一致的地方,稱之為沖突。之間必定會(huì)存在許多不一致的地方,稱之為沖突。l子系統(tǒng)子系統(tǒng)E-R圖之間的沖突主要有三類:圖之間的沖突主要有三類:屬性沖突屬性沖突命名沖突命名沖突結(jié)構(gòu)沖突結(jié)構(gòu)沖突概念結(jié)構(gòu)設(shè)計(jì)(續(xù))屬性沖突屬
44、性沖突l屬性域沖突,即屬性值的類型、取值范圍或取值集合不屬性域沖突,即屬性值的類型、取值范圍或取值集合不同。同。例如零件號(hào),有的部門把它定義為整數(shù),有的部門例如零件號(hào),有的部門把它定義為整數(shù),有的部門把它定義為字符型。把它定義為字符型。年齡,某些部門以出生日期形式表示職工的年齡,年齡,某些部門以出生日期形式表示職工的年齡,而另一些部門用整數(shù)表示職工的年齡。而另一些部門用整數(shù)表示職工的年齡。l屬性取值單位沖突。屬性取值單位沖突。例如,零件的重量有的以公斤為單位,有的以斤為例如,零件的重量有的以公斤為單位,有的以斤為單位,有的以克為單位。單位,有的以克為單位。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))命名沖突命名沖突l同
45、名異義,即不同意義的對(duì)象在不同的局部應(yīng)用中具有相同名異義,即不同意義的對(duì)象在不同的局部應(yīng)用中具有相同的名字。同的名字。l異名同義(一義多名),即同一意義的對(duì)象在不同的局部異名同義(一義多名),即同一意義的對(duì)象在不同的局部應(yīng)用中具有不同的名字。應(yīng)用中具有不同的名字。如對(duì)科研項(xiàng)目,財(cái)務(wù)科稱為項(xiàng)目,科研處稱為課題,如對(duì)科研項(xiàng)目,財(cái)務(wù)科稱為項(xiàng)目,科研處稱為課題,生產(chǎn)管理處稱為工程。生產(chǎn)管理處稱為工程。l命名沖突命名沖突可能發(fā)生在實(shí)體、聯(lián)系一級(jí)上可能發(fā)生在實(shí)體、聯(lián)系一級(jí)上也可能發(fā)生在屬性一級(jí)上也可能發(fā)生在屬性一級(jí)上通過討論、協(xié)商等行政手段加以解決通過討論、協(xié)商等行政手段加以解決概念結(jié)構(gòu)設(shè)計(jì)(續(xù))結(jié)構(gòu)沖突
46、結(jié)構(gòu)沖突l同一對(duì)象在不同應(yīng)用中具有不同的抽象。同一對(duì)象在不同應(yīng)用中具有不同的抽象。例如,職工在某一局部應(yīng)用中被當(dāng)作實(shí)體,而在另一局例如,職工在某一局部應(yīng)用中被當(dāng)作實(shí)體,而在另一局部應(yīng)用中則被當(dāng)作屬性。部應(yīng)用中則被當(dāng)作屬性。解決方法:把屬性變換為實(shí)體或把實(shí)體變換為屬性,使解決方法:把屬性變換為實(shí)體或把實(shí)體變換為屬性,使同一對(duì)象具有相同的抽象。同一對(duì)象具有相同的抽象。l同一實(shí)體在不同子系統(tǒng)的同一實(shí)體在不同子系統(tǒng)的E-R圖中所包含的屬性個(gè)數(shù)和屬性圖中所包含的屬性個(gè)數(shù)和屬性排列次序不完全相同。排列次序不完全相同。解決方法:使該實(shí)體的屬性取各子系統(tǒng)的解決方法:使該實(shí)體的屬性取各子系統(tǒng)的E-R圖中屬性圖中
47、屬性的并集,再適當(dāng)調(diào)整屬性的次序。的并集,再適當(dāng)調(diào)整屬性的次序。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))結(jié)構(gòu)沖突(續(xù))結(jié)構(gòu)沖突(續(xù))l實(shí)體間的聯(lián)系在不同的實(shí)體間的聯(lián)系在不同的E-R圖中為不同的類型。圖中為不同的類型。實(shí)體實(shí)體E1與與E2在一個(gè)在一個(gè)E-R圖中是多對(duì)多聯(lián)系,在另一個(gè)圖中是多對(duì)多聯(lián)系,在另一個(gè)E-R圖中是一對(duì)多聯(lián)系圖中是一對(duì)多聯(lián)系解決方法是根據(jù)應(yīng)用的語義對(duì)實(shí)體聯(lián)系的類型進(jìn)行綜合解決方法是根據(jù)應(yīng)用的語義對(duì)實(shí)體聯(lián)系的類型進(jìn)行綜合或調(diào)整?;蛘{(diào)整。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))圖圖7.25(a)中零件與產(chǎn)品之間中零件與產(chǎn)品之間存在多對(duì)多的聯(lián)系存在多對(duì)多的聯(lián)系“構(gòu)成構(gòu)成”圖圖7.25(b)中產(chǎn)品、零件與供中產(chǎn)品、零件與供應(yīng)商
48、三者之間還存在多對(duì)多應(yīng)商三者之間還存在多對(duì)多的聯(lián)系的聯(lián)系“供應(yīng)供應(yīng)”合并兩個(gè)合并兩個(gè)E-R圖,圖,如圖如圖7.25(c)概念結(jié)構(gòu)設(shè)計(jì)(續(xù))(2)消除不必要的冗余,設(shè)計(jì)基本)消除不必要的冗余,設(shè)計(jì)基本E-R圖圖l所謂冗余的數(shù)據(jù)是指可由基本數(shù)據(jù)導(dǎo)出的數(shù)據(jù),冗余的所謂冗余的數(shù)據(jù)是指可由基本數(shù)據(jù)導(dǎo)出的數(shù)據(jù),冗余的聯(lián)系是指可由其他聯(lián)系導(dǎo)出的聯(lián)系。聯(lián)系是指可由其他聯(lián)系導(dǎo)出的聯(lián)系。l消除冗余主要采用分析方法,即以數(shù)據(jù)字典和數(shù)據(jù)流圖消除冗余主要采用分析方法,即以數(shù)據(jù)字典和數(shù)據(jù)流圖為依據(jù),根據(jù)數(shù)據(jù)字典中關(guān)于數(shù)據(jù)項(xiàng)之間邏輯關(guān)系的說為依據(jù),根據(jù)數(shù)據(jù)字典中關(guān)于數(shù)據(jù)項(xiàng)之間邏輯關(guān)系的說明來消除冗余。明來消除冗余。概念結(jié)構(gòu)
49、設(shè)計(jì)(續(xù))l如圖如圖7.26中,中,Q3=Q1Q2,Q4=Q5。所以。所以Q3和和Q4是冗是冗余數(shù)據(jù),可以消去。并且由于余數(shù)據(jù),可以消去。并且由于Q3消去,產(chǎn)品與材料間消去,產(chǎn)品與材料間m:n的冗余聯(lián)系也應(yīng)消去。的冗余聯(lián)系也應(yīng)消去。并不是所有的冗余數(shù)據(jù)與冗余聯(lián)系都必須加以消除,有時(shí)為了提高效率,不得并不是所有的冗余數(shù)據(jù)與冗余聯(lián)系都必須加以消除,有時(shí)為了提高效率,不得不以冗余信息作為代價(jià)。不以冗余信息作為代價(jià)。圖圖7.26 消除冗余消除冗余概念結(jié)構(gòu)設(shè)計(jì)(續(xù))u用規(guī)范化理論來消除冗余確定分確定分E-R圖實(shí)體之間的數(shù)據(jù)依賴。圖實(shí)體之間的數(shù)據(jù)依賴。l實(shí)體之間一對(duì)一、一對(duì)多、多對(duì)多的聯(lián)系可以用實(shí)體碼實(shí)體
50、之間一對(duì)一、一對(duì)多、多對(duì)多的聯(lián)系可以用實(shí)體碼之間的函數(shù)依賴來表示。于是有函數(shù)依賴集之間的函數(shù)依賴來表示。于是有函數(shù)依賴集FL。l如圖如圖7.27中:中: 部門和職工之間一對(duì)多的聯(lián)系可表示為職工號(hào)部門和職工之間一對(duì)多的聯(lián)系可表示為職工號(hào)部門號(hào)部門號(hào) 職工和產(chǎn)品之間多對(duì)多的聯(lián)系可表示為職工和產(chǎn)品之間多對(duì)多的聯(lián)系可表示為 (職工號(hào),產(chǎn)品號(hào))(職工號(hào),產(chǎn)品號(hào))工作天數(shù)等。工作天數(shù)等。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))圖圖7.27 勞動(dòng)人事管理的分勞動(dòng)人事管理的分E-R圖圖求求FL的最小覆蓋的最小覆蓋GL,差集為,差集為 D=FL-GL。l逐一考察逐一考察D中的函數(shù)依賴,確定是否是冗余的中的函數(shù)依賴,確定是否是冗余的聯(lián)
51、系,若是,就把它去掉。聯(lián)系,若是,就把它去掉。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))n由于規(guī)范化理論受到泛關(guān)系假設(shè)的限制,應(yīng)注意下面由于規(guī)范化理論受到泛關(guān)系假設(shè)的限制,應(yīng)注意下面兩個(gè)問題:兩個(gè)問題:l冗余的聯(lián)系一定在冗余的聯(lián)系一定在D中,而中,而D中的聯(lián)系不一定是冗余的;中的聯(lián)系不一定是冗余的;l當(dāng)實(shí)體之間存在多種聯(lián)系時(shí),要將實(shí)體之間的聯(lián)系在形當(dāng)實(shí)體之間存在多種聯(lián)系時(shí),要將實(shí)體之間的聯(lián)系在形式上加以區(qū)分。式上加以區(qū)分。概念結(jié)構(gòu)設(shè)計(jì)(續(xù))u例7.2 某工廠管理信息系統(tǒng)的視圖集成。圖圖7.11 工廠物資管理工廠物資管理E-R圖圖概念結(jié)構(gòu)設(shè)計(jì)(續(xù))u例7.2 某工廠管理信息系統(tǒng)的視圖集成。圖圖7.27 勞動(dòng)勞動(dòng)人事管理
52、人事管理的分的分E-R圖圖圖圖7.23 銷售銷售管理管理子系統(tǒng)的子系統(tǒng)的E-R圖圖概念結(jié)構(gòu)設(shè)計(jì)(續(xù))u例7.2 某工廠管理信息系統(tǒng)的視圖集成。圖圖7.28 某工廠管理信息系統(tǒng)的基本某工廠管理信息系統(tǒng)的基本E-R圖圖異名同義,項(xiàng)目和產(chǎn)品含義相同。某個(gè)項(xiàng)目實(shí)質(zhì)上是指某個(gè)產(chǎn)異名同義,項(xiàng)目和產(chǎn)品含義相同。某個(gè)項(xiàng)目實(shí)質(zhì)上是指某個(gè)產(chǎn)品的生產(chǎn)。統(tǒng)一用產(chǎn)品作實(shí)體名。品的生產(chǎn)。統(tǒng)一用產(chǎn)品作實(shí)體名。庫(kù)存管理中職工與倉(cāng)庫(kù)的工作關(guān)系已包含在勞動(dòng)人事管理的部門與庫(kù)存管理中職工與倉(cāng)庫(kù)的工作關(guān)系已包含在勞動(dòng)人事管理的部門與職工之間的聯(lián)系之中,所以可以取消。職工之間領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)關(guān)系職工之間的聯(lián)系之中,所以可以取消。職工之間領(lǐng)
53、導(dǎo)與被領(lǐng)導(dǎo)關(guān)系可由部門與職工(經(jīng)理)之間的領(lǐng)導(dǎo)關(guān)系、部門與職工之間的從屬可由部門與職工(經(jīng)理)之間的領(lǐng)導(dǎo)關(guān)系、部門與職工之間的從屬關(guān)系兩者導(dǎo)出,所以也可以取消。關(guān)系兩者導(dǎo)出,所以也可以取消。7.4 邏輯結(jié)構(gòu)設(shè)計(jì)u邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)n把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)換為與選用圖轉(zhuǎn)換為與選用數(shù)據(jù)庫(kù)管理系統(tǒng)產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯數(shù)據(jù)庫(kù)管理系統(tǒng)產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)結(jié)構(gòu)7.4 邏輯結(jié)構(gòu)設(shè)計(jì)7.4.1 E-R圖向關(guān)系模型的轉(zhuǎn)換7.4.2 數(shù)據(jù)模型的優(yōu)化7.4.3 設(shè)計(jì)用戶子模式E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))u轉(zhuǎn)換內(nèi)容nE-R圖由實(shí)體型、實(shí)體的
54、屬性和實(shí)體型之間的聯(lián)系三個(gè)圖由實(shí)體型、實(shí)體的屬性和實(shí)體型之間的聯(lián)系三個(gè)要素組成要素組成n關(guān)系模型的邏輯結(jié)構(gòu)是一組關(guān)系模式的集合關(guān)系模型的邏輯結(jié)構(gòu)是一組關(guān)系模式的集合n將將E-R圖轉(zhuǎn)換為關(guān)系模型:將實(shí)體型、實(shí)體的屬性和實(shí)圖轉(zhuǎn)換為關(guān)系模型:將實(shí)體型、實(shí)體的屬性和實(shí)體型之間的聯(lián)系轉(zhuǎn)化為關(guān)系模式體型之間的聯(lián)系轉(zhuǎn)化為關(guān)系模式E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))轉(zhuǎn)換原則 1. 一個(gè)實(shí)體型轉(zhuǎn)換為一個(gè)關(guān)系模式。n關(guān)系的屬性:實(shí)體的屬性關(guān)系的屬性:實(shí)體的屬性n關(guān)系的碼:實(shí)體的碼關(guān)系的碼:實(shí)體的碼E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))2. 實(shí)體型間的聯(lián)系有以下不同情況(1) 一個(gè)一個(gè)1:1聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也聯(lián)
55、系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與任意一端對(duì)應(yīng)的關(guān)系模式合并??梢耘c任意一端對(duì)應(yīng)的關(guān)系模式合并。 轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式關(guān)系的屬性:與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系關(guān)系的屬性:與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性本身的屬性關(guān)系的候選碼:每個(gè)實(shí)體的碼均是該關(guān)系的候選碼關(guān)系的候選碼:每個(gè)實(shí)體的碼均是該關(guān)系的候選碼E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))(1)一個(gè))一個(gè)1:1聯(lián)系的轉(zhuǎn)換(續(xù))聯(lián)系的轉(zhuǎn)換(續(xù))與某一端實(shí)體對(duì)應(yīng)的關(guān)系模式合并與某一端實(shí)體對(duì)應(yīng)的關(guān)系模式合并合并后關(guān)系的屬性:加入對(duì)應(yīng)關(guān)系的碼和聯(lián)系本身合并后關(guān)系的屬性:加入對(duì)應(yīng)關(guān)系的碼和聯(lián)系本身的屬性的屬性合并后關(guān)
56、系的碼:不變合并后關(guān)系的碼:不變E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))(2)一個(gè))一個(gè)1:n聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與以與n端對(duì)應(yīng)的關(guān)系模式合并。端對(duì)應(yīng)的關(guān)系模式合并。轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式關(guān)系的屬性:與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本關(guān)系的屬性:與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性身的屬性關(guān)系的碼:關(guān)系的碼:n端實(shí)體的碼端實(shí)體的碼E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))(2)一個(gè))一個(gè)1:n聯(lián)系的轉(zhuǎn)換(續(xù))聯(lián)系的轉(zhuǎn)換(續(xù))與與n端對(duì)應(yīng)的關(guān)系模式合并端對(duì)應(yīng)的關(guān)系模式合并合并后關(guān)系的屬性:在合并后關(guān)系的屬性:在n端關(guān)系中加入端關(guān)
57、系中加入1端關(guān)系的碼端關(guān)系的碼和聯(lián)系本身的屬性和聯(lián)系本身的屬性合并后關(guān)系的碼:不變合并后關(guān)系的碼:不變可以減少系統(tǒng)中的關(guān)系個(gè)數(shù),一般情況下更傾向于可以減少系統(tǒng)中的關(guān)系個(gè)數(shù),一般情況下更傾向于采用這種方法采用這種方法E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))(3)一個(gè))一個(gè)m:n聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式l關(guān)系的屬性:與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身關(guān)系的屬性:與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性的屬性l關(guān)系的碼:各實(shí)體碼的組合關(guān)系的碼:各實(shí)體碼的組合例例“選修選修”聯(lián)系是一個(gè)聯(lián)系是一個(gè)m:n聯(lián)系,可以將它轉(zhuǎn)換為如下聯(lián)系,可以將它轉(zhuǎn)換為如下關(guān)系模式,其中學(xué)號(hào)與課程號(hào)為關(guān)系的組合碼
58、:關(guān)系模式,其中學(xué)號(hào)與課程號(hào)為關(guān)系的組合碼: 選修(學(xué)號(hào),課程號(hào),成績(jī))E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))(4)三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系轉(zhuǎn)換為一個(gè))三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。關(guān)系模式。l關(guān)系的屬性:與該多元聯(lián)系相連的各實(shí)體的碼以及聯(lián)系關(guān)系的屬性:與該多元聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性本身的屬性l關(guān)系的碼:各實(shí)體碼的組合關(guān)系的碼:各實(shí)體碼的組合E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))(5)具有相同碼的關(guān)系模式可合并)具有相同碼的關(guān)系模式可合并l目的:減少系統(tǒng)中的關(guān)系個(gè)數(shù)目的:減少系統(tǒng)中的關(guān)系個(gè)數(shù)l合并方法:合并方法: 將其中一個(gè)關(guān)系模式的全部屬性加入到另一個(gè)關(guān)將其
59、中一個(gè)關(guān)系模式的全部屬性加入到另一個(gè)關(guān)系模式中系模式中 然后去掉其中的同義屬性(可能同名也可能不同然后去掉其中的同義屬性(可能同名也可能不同名)名) 適當(dāng)調(diào)整屬性的次序適當(dāng)調(diào)整屬性的次序E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))圖圖7.28中虛線上部的中虛線上部的E-R圖轉(zhuǎn)換為關(guān)系模型。圖轉(zhuǎn)換為關(guān)系模型。關(guān)系的碼用下橫線標(biāo)出。關(guān)系的碼用下橫線標(biāo)出。E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))n部門(部門號(hào),部門名,經(jīng)理的職工號(hào),)n職工(職工號(hào)、部門號(hào),職工名,職務(wù),)n產(chǎn)品(產(chǎn)品號(hào),產(chǎn)品名,產(chǎn)品組長(zhǎng)的職工號(hào),)n供應(yīng)商(供應(yīng)商號(hào),姓名,)n零件(零件號(hào),零件名,)n職工工作(職工號(hào),產(chǎn)品號(hào),工作天數(shù),)n供應(yīng)(產(chǎn)品號(hào)
60、,供應(yīng)商號(hào),零件號(hào),供應(yīng)量)7.4 邏輯結(jié)構(gòu)設(shè)計(jì)7.4.1 E-R圖向關(guān)系模型的轉(zhuǎn)換7.4.2 數(shù)據(jù)模型的優(yōu)化7.4.3 設(shè)計(jì)用戶子模式7.4.2 數(shù)據(jù)模型的優(yōu)化u一般的數(shù)據(jù)模型還需要向特定數(shù)據(jù)庫(kù)管理系統(tǒng)規(guī)定的模型進(jìn)行轉(zhuǎn)換。u轉(zhuǎn)換的主要依據(jù)是所選用的數(shù)據(jù)庫(kù)管理系統(tǒng)的功能及限制。沒有通用規(guī)則。u對(duì)于關(guān)系模型來說,這種轉(zhuǎn)換通常都比較簡(jiǎn)單。數(shù)據(jù)模型的優(yōu)化(續(xù))u數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的結(jié)果不是唯一的。u得到初步數(shù)據(jù)模型后,還應(yīng)該適當(dāng)?shù)匦薷?、調(diào)整數(shù)據(jù)模型的結(jié)構(gòu),以進(jìn)一步提高數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的性能,這就是數(shù)據(jù)模型的優(yōu)化。u關(guān)系數(shù)據(jù)模型的優(yōu)化通常以規(guī)范化理論為指導(dǎo)。數(shù)據(jù)模型的優(yōu)化(續(xù))優(yōu)化數(shù)據(jù)模型的方法:(1)確定
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 焦作新材料職業(yè)學(xué)院《GNSS測(cè)量原理及應(yīng)用》2023-2024學(xué)年第一學(xué)期期末試卷
- 湖北理工學(xué)院《精準(zhǔn)協(xié)作》2023-2024學(xué)年第一學(xué)期期末試卷
- 河源職業(yè)技術(shù)學(xué)院《多聲部音樂基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 浙江藝術(shù)職業(yè)學(xué)院《建筑設(shè)計(jì)基礎(chǔ)A1》2023-2024學(xué)年第一學(xué)期期末試卷
- 浙江工商職業(yè)技術(shù)學(xué)院《工程預(yù)算課程設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 中山火炬職業(yè)技術(shù)學(xué)院《電子工藝技術(shù)基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 鄭州職業(yè)技術(shù)學(xué)院《功能性食品概況》2023-2024學(xué)年第一學(xué)期期末試卷
- 小學(xué)黨員活動(dòng)量化積分制度
- 長(zhǎng)沙衛(wèi)生職業(yè)學(xué)院《民族民間音樂》2023-2024學(xué)年第一學(xué)期期末試卷
- 云南農(nóng)業(yè)職業(yè)技術(shù)學(xué)院《現(xiàn)代生物技術(shù)綜合實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 朝韓關(guān)系相關(guān)分析
- 校園熱水方案
- 跟蹤服務(wù)項(xiàng)目活動(dòng)實(shí)施方案
- 新能源汽車產(chǎn)業(yè)鏈中的區(qū)域發(fā)展不均衡分析與對(duì)策
- 財(cái)務(wù)機(jī)器人技術(shù)在會(huì)計(jì)工作中的應(yīng)用
- 《保單檢視專題》課件
- 建筑保溫隔熱構(gòu)造
- 智慧財(cái)務(wù)綜合實(shí)訓(xùn)
- 安徽省合肥市2021-2022學(xué)年七年級(jí)上學(xué)期期末數(shù)學(xué)試題(含答案)3
- 教育專家報(bào)告合集:年度得到:沈祖蕓全球教育報(bào)告(2023-2024)
- 肝臟腫瘤護(hù)理查房
評(píng)論
0/150
提交評(píng)論