版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第第1章章 關(guān)系數(shù)據(jù)庫管理系統(tǒng)基礎(chǔ)知識關(guān)系數(shù)據(jù)庫管理系統(tǒng)基礎(chǔ)知識 1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述 1.2 數(shù)據(jù)模型數(shù)據(jù)模型 1.3 關(guān)系數(shù)據(jù)庫及其設(shè)計過程關(guān)系數(shù)據(jù)庫及其設(shè)計過程 1.4 關(guān)系數(shù)據(jù)庫的規(guī)范化關(guān)系數(shù)據(jù)庫的規(guī)范化 1.5 數(shù)據(jù)表的關(guān)聯(lián)與數(shù)據(jù)的完整性數(shù)據(jù)表的關(guān)聯(lián)與數(shù)據(jù)的完整性 1.6 關(guān)系數(shù)據(jù)庫應(yīng)用實例關(guān)系數(shù)據(jù)庫應(yīng)用實例電腦器材銷售電腦器材銷售管理管理 1.7 實訓(xùn)要求與習(xí)題實訓(xùn)要求與習(xí)題第第1章章 關(guān)系數(shù)據(jù)庫管理系統(tǒng)基礎(chǔ)知識關(guān)系數(shù)據(jù)庫管理系統(tǒng)基礎(chǔ)知識 學(xué)習(xí)目的與要求學(xué)習(xí)目的與要求 數(shù)據(jù)庫系統(tǒng)的基本概念數(shù)據(jù)庫系統(tǒng)的基本概念 數(shù)據(jù)模型的基本概念數(shù)據(jù)模型的基本概念 實體聯(lián)系模型實體聯(lián)
2、系模型 關(guān)系模型的概念和性質(zhì)關(guān)系模型的概念和性質(zhì) 數(shù)據(jù)庫系統(tǒng)的規(guī)范化理論等內(nèi)容數(shù)據(jù)庫系統(tǒng)的規(guī)范化理論等內(nèi)容 設(shè)計創(chuàng)建一個設(shè)計創(chuàng)建一個電腦器材銷售管理電腦器材銷售管理數(shù)據(jù)庫模型數(shù)據(jù)庫模型1.1 數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)概述 計算機(jī)應(yīng)用從科學(xué)計算進(jìn)入數(shù)據(jù)處理是一個重大轉(zhuǎn)計算機(jī)應(yīng)用從科學(xué)計算進(jìn)入數(shù)據(jù)處理是一個重大轉(zhuǎn)折,數(shù)據(jù)處理是指對各種形式的數(shù)據(jù)進(jìn)行收集、儲存、折,數(shù)據(jù)處理是指對各種形式的數(shù)據(jù)進(jìn)行收集、儲存、加工和傳播的一系列活動,其基本環(huán)節(jié)是數(shù)據(jù)管理。數(shù)加工和傳播的一系列活動,其基本環(huán)節(jié)是數(shù)據(jù)管理。數(shù)據(jù)管理指的是對數(shù)據(jù)的分類、組織、編碼、儲存、檢索據(jù)管理指的是對數(shù)據(jù)的分類、組織、編碼、儲存、檢索和
3、維護(hù)。數(shù)據(jù)管理方式多種多樣,其中數(shù)據(jù)庫技術(shù)是在和維護(hù)。數(shù)據(jù)管理方式多種多樣,其中數(shù)據(jù)庫技術(shù)是在應(yīng)用需求的推動下,在計算機(jī)硬件、軟件高速發(fā)展的基應(yīng)用需求的推動下,在計算機(jī)硬件、軟件高速發(fā)展的基礎(chǔ)上出現(xiàn)的高效數(shù)據(jù)管理技術(shù)。數(shù)據(jù)庫系統(tǒng)在計算機(jī)應(yīng)礎(chǔ)上出現(xiàn)的高效數(shù)據(jù)管理技術(shù)。數(shù)據(jù)庫系統(tǒng)在計算機(jī)應(yīng)用中起著越來越重要的作用,從小型單項事務(wù)處理系統(tǒng)用中起著越來越重要的作用,從小型單項事務(wù)處理系統(tǒng)到大型信息系統(tǒng),從聯(lián)機(jī)事務(wù)處理到大型信息系統(tǒng),從聯(lián)機(jī)事務(wù)處理(OLTP)到聯(lián)機(jī)分析處到聯(lián)機(jī)分析處理理(OLAP),從傳統(tǒng)的企業(yè)管理到計算機(jī)輔助設(shè)計與制造,從傳統(tǒng)的企業(yè)管理到計算機(jī)輔助設(shè)計與制造(CAD/CAM)、現(xiàn)代集
4、成制造系統(tǒng)、現(xiàn)代集成制造系統(tǒng)(CIMS)、辦公信息系、辦公信息系統(tǒng)統(tǒng)(OIS)、地理信息系統(tǒng)、地理信息系統(tǒng)(GIS)等,都離不開數(shù)據(jù)庫管理等,都離不開數(shù)據(jù)庫管理系統(tǒng)。正是這些不斷涌現(xiàn)的應(yīng)用要求,又不斷地推動了系統(tǒng)。正是這些不斷涌現(xiàn)的應(yīng)用要求,又不斷地推動了數(shù)據(jù)庫技術(shù)的更新?lián)Q代。數(shù)據(jù)庫技術(shù)的更新?lián)Q代。1.1.1 數(shù)據(jù)庫技術(shù)的產(chǎn)生與發(fā)展 1. 數(shù)據(jù)庫技術(shù)的產(chǎn)生數(shù)據(jù)庫技術(shù)的產(chǎn)生 從從20世紀(jì)世紀(jì)60年代后期開始,計算機(jī)技術(shù)從科學(xué)計算迅年代后期開始,計算機(jī)技術(shù)從科學(xué)計算迅速擴(kuò)展到數(shù)據(jù)處理領(lǐng)域,隨著數(shù)據(jù)處理的不斷深入,數(shù)速擴(kuò)展到數(shù)據(jù)處理領(lǐng)域,隨著數(shù)據(jù)處理的不斷深入,數(shù)據(jù)處理的規(guī)模越來越大,數(shù)據(jù)量也越來越
5、多,數(shù)據(jù)處理據(jù)處理的規(guī)模越來越大,數(shù)據(jù)量也越來越多,數(shù)據(jù)處理成為最大的計算機(jī)應(yīng)用領(lǐng)域。數(shù)據(jù)處理技術(shù)也不斷地完成為最大的計算機(jī)應(yīng)用領(lǐng)域。數(shù)據(jù)處理技術(shù)也不斷地完善,經(jīng)歷了人工管理、文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)三個階段。善,經(jīng)歷了人工管理、文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)三個階段。 (1) 人工管理階段人工管理階段 計算機(jī)在其誕生初期,人們還是把它當(dāng)作計算機(jī)在其誕生初期,人們還是把它當(dāng)作種計算工具,種計算工具,主要用于科學(xué)計算。通常是在編寫的應(yīng)用程序中給出自主要用于科學(xué)計算。通常是在編寫的應(yīng)用程序中給出自帶的相關(guān)數(shù)據(jù),將程序和相關(guān)數(shù)據(jù)同時輸入計算機(jī)。不帶的相關(guān)數(shù)據(jù),將程序和相關(guān)數(shù)據(jù)同時輸入計算機(jī)。不同用戶針對不同問題編
6、制各自的程序,整理各自程序所同用戶針對不同問題編制各自的程序,整理各自程序所需要的數(shù)據(jù)。數(shù)據(jù)的管理完全由用戶自己負(fù)責(zé)。需要的數(shù)據(jù)。數(shù)據(jù)的管理完全由用戶自己負(fù)責(zé)。人工管理階段程序與數(shù)據(jù)的關(guān)系人工管理階段程序與數(shù)據(jù)的關(guān)系特點:特點: 數(shù)據(jù)不能單獨保存。 數(shù)據(jù)無獨立性。 數(shù)據(jù)冗余不能共享。(2) 文件系統(tǒng)階段文件系統(tǒng)階段在文件系統(tǒng)中,把數(shù)據(jù)組織成相互獨立的數(shù)據(jù)文在文件系統(tǒng)中,把數(shù)據(jù)組織成相互獨立的數(shù)據(jù)文件,利用件,利用“按文件名訪問,按記錄存取按文件名訪問,按記錄存取”的管理技術(shù),的管理技術(shù),程序和數(shù)據(jù)分別存儲為程序文件和數(shù)據(jù)文件。數(shù)據(jù)文程序和數(shù)據(jù)分別存儲為程序文件和數(shù)據(jù)文件。數(shù)據(jù)文件是獨立的,可以
7、長期保存在外存儲器上多次存取。件是獨立的,可以長期保存在外存儲器上多次存取。數(shù)據(jù)的存取以記錄為基本單位,并出現(xiàn)了多種文件組數(shù)據(jù)的存取以記錄為基本單位,并出現(xiàn)了多種文件組織形式,如順序文件、索引文件、隨機(jī)文件等??椥问剑珥樞蛭募?、索引文件、隨機(jī)文件等。文件系統(tǒng)階段程序與數(shù)據(jù)的關(guān)系文件系統(tǒng)階段程序與數(shù)據(jù)的關(guān)系 數(shù)據(jù)與程序缺乏獨立性。 數(shù)據(jù)的冗余和不一致性。 數(shù)據(jù)的無結(jié)構(gòu)性。特點:特點:(3) 數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)階段為了從根本上解決數(shù)據(jù)與程序的相關(guān)性,把數(shù)為了從根本上解決數(shù)據(jù)與程序的相關(guān)性,把數(shù)據(jù)作為一種共享的資源進(jìn)行集中管理,為各種應(yīng)用據(jù)作為一種共享的資源進(jìn)行集中管理,為各種應(yīng)用系統(tǒng)提供共
8、享服務(wù),數(shù)據(jù)庫技術(shù)應(yīng)運而生,使信息系統(tǒng)提供共享服務(wù),數(shù)據(jù)庫技術(shù)應(yīng)運而生,使信息管理系統(tǒng)的重心從以加工數(shù)據(jù)的程序為中心轉(zhuǎn)向以管理系統(tǒng)的重心從以加工數(shù)據(jù)的程序為中心轉(zhuǎn)向以數(shù)據(jù)共享、統(tǒng)一管理為核心。數(shù)據(jù)共享、統(tǒng)一管理為核心。數(shù)據(jù)庫系統(tǒng)階段程序與數(shù)據(jù)的關(guān)系數(shù)據(jù)庫系統(tǒng)階段程序與數(shù)據(jù)的關(guān)系 數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)結(jié)構(gòu)化 數(shù)據(jù)能夠共享數(shù)據(jù)能夠共享 數(shù)據(jù)冗余度小,易擴(kuò)充數(shù)據(jù)冗余度小,易擴(kuò)充 數(shù)據(jù)與程序的獨立性較高數(shù)據(jù)與程序的獨立性較高 對數(shù)據(jù)實行集中統(tǒng)對數(shù)據(jù)實行集中統(tǒng)控制控制優(yōu)點:2. 數(shù)據(jù)庫技術(shù)的發(fā)展數(shù)據(jù)庫技術(shù)的發(fā)展隨著計算機(jī)科學(xué)的不斷發(fā)展,數(shù)據(jù)庫技術(shù)大致上隨著計算機(jī)科學(xué)的不斷發(fā)展,數(shù)據(jù)庫技術(shù)大致上經(jīng)歷了三個發(fā)展時
9、期:經(jīng)歷了三個發(fā)展時期:(1) 20世紀(jì)世紀(jì)60年代的萌芽期年代的萌芽期(2) 20世紀(jì)世紀(jì)70年代的發(fā)展期年代的發(fā)展期(3) 20世紀(jì)世紀(jì)80年代的成熟期年代的成熟期1.1.2 數(shù)據(jù)庫數(shù)據(jù)庫1、數(shù)據(jù)庫、數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫(Database,簡稱,簡稱DB),顧名思義,是存放,顧名思義,是存放數(shù)據(jù)的倉庫。只不過這個倉庫是創(chuàng)建在計算機(jī)存儲設(shè)數(shù)據(jù)的倉庫。只不過這個倉庫是創(chuàng)建在計算機(jī)存儲設(shè)備上,如硬盤就是一類最常見的計算機(jī)大容量存儲設(shè)備上,如硬盤就是一類最常見的計算機(jī)大容量存儲設(shè)備。數(shù)據(jù)必須按一定的格式存放,以利于以后使用。備。數(shù)據(jù)必須按一定的格式存放,以利于以后使用??梢哉f數(shù)據(jù)庫就是長期存儲在計算
10、機(jī)內(nèi)、與應(yīng)用程序可以說數(shù)據(jù)庫就是長期存儲在計算機(jī)內(nèi)、與應(yīng)用程序彼此獨立的、以彼此獨立的、以定的組織方式存儲在一起的、彼此定的組織方式存儲在一起的、彼此相互關(guān)聯(lián)的、具有較少冗余的、能被多個用戶共享的相互關(guān)聯(lián)的、具有較少冗余的、能被多個用戶共享的數(shù)據(jù)集合。在這里要特別注意數(shù)據(jù)庫不是簡單地將一數(shù)據(jù)集合。在這里要特別注意數(shù)據(jù)庫不是簡單地將一些數(shù)據(jù)堆積在一起,而是把相互間有一定關(guān)系的數(shù)據(jù),些數(shù)據(jù)堆積在一起,而是把相互間有一定關(guān)系的數(shù)據(jù),按一定的結(jié)構(gòu)組織起來的數(shù)據(jù)集合。按一定的結(jié)構(gòu)組織起來的數(shù)據(jù)集合。2、數(shù)據(jù)庫體系結(jié)構(gòu)數(shù)據(jù)庫體系結(jié)構(gòu)為了有效地組織、管理數(shù)據(jù),人們?yōu)閿?shù)據(jù)庫設(shè)計為了有效地組織、管理數(shù)據(jù),人們?yōu)?/p>
11、數(shù)據(jù)庫設(shè)計了一個嚴(yán)謹(jǐn)?shù)捏w系結(jié)構(gòu),包括了了一個嚴(yán)謹(jǐn)?shù)捏w系結(jié)構(gòu),包括了內(nèi)模式、模式和外內(nèi)模式、模式和外模式模式三級模式結(jié)構(gòu),三級模式結(jié)構(gòu),這三級模式反映了看待數(shù)據(jù)庫這三級模式反映了看待數(shù)據(jù)庫的三種不同的數(shù)據(jù)觀點。的三種不同的數(shù)據(jù)觀點。1.1.3 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)(數(shù)據(jù)庫管理系統(tǒng)(DataBase Management System,簡稱簡稱DBMS)是位于用戶與計算機(jī)操作系統(tǒng)之間的一)是位于用戶與計算機(jī)操作系統(tǒng)之間的一個系統(tǒng)軟件,由一組計算機(jī)程序組成。它能夠?qū)?shù)據(jù)個系統(tǒng)軟件,由一組計算機(jī)程序組成。它能夠?qū)?shù)據(jù)庫進(jìn)行有效的組織、管理和控制,包括數(shù)據(jù)的存儲、庫進(jìn)行有效的組織、管理和控制,包
12、括數(shù)據(jù)的存儲、數(shù)據(jù)的安全性與完整性控制等。數(shù)據(jù)的安全性與完整性控制等。 DBMS主要功能:主要功能:1.1. 數(shù)據(jù)定義功能數(shù)據(jù)定義功能2.2. 數(shù)據(jù)操縱功能數(shù)據(jù)操縱功能3. 3. 數(shù)據(jù)庫的運行控制與管理數(shù)據(jù)庫的運行控制與管理4. 4. 數(shù)據(jù)庫的建立和維護(hù)功能數(shù)據(jù)庫的建立和維護(hù)功能5.5. 數(shù)據(jù)通信接口數(shù)據(jù)通信接口1.1.4 數(shù)據(jù)庫系統(tǒng) 數(shù)據(jù)庫系統(tǒng)(數(shù)據(jù)庫系統(tǒng)(Database System,簡稱,簡稱DBS)是指在計)是指在計算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng),帶有數(shù)據(jù)庫的計算算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng),帶有數(shù)據(jù)庫的計算機(jī)系統(tǒng)硬件和軟件層次如圖所示。機(jī)系統(tǒng)硬件和軟件層次如圖所示。數(shù)據(jù)庫系統(tǒng)構(gòu)成數(shù)據(jù)
13、庫系統(tǒng)構(gòu)成 硬件平臺硬件平臺 數(shù)據(jù)庫數(shù)據(jù)庫 軟件軟件數(shù)據(jù)庫管理系統(tǒng)(數(shù)據(jù)庫管理系統(tǒng)(DBMSDBMS)、支持)、支持DBMSDBMS運行的操作運行的操作系統(tǒng)、具有數(shù)據(jù)庫接口的高級語言及其編譯系統(tǒng)、以系統(tǒng)、具有數(shù)據(jù)庫接口的高級語言及其編譯系統(tǒng)、以DBMSDBMS為核心的應(yīng)用開發(fā)工具。為核心的應(yīng)用開發(fā)工具。 為特定應(yīng)用環(huán)境開發(fā)的數(shù)據(jù)庫應(yīng)用系統(tǒng)。為特定應(yīng)用環(huán)境開發(fā)的數(shù)據(jù)庫應(yīng)用系統(tǒng)。 相關(guān)人員相關(guān)人員數(shù)據(jù)庫管理員(數(shù)據(jù)庫管理員(DBADBA)、系統(tǒng)分析員、數(shù)據(jù)庫設(shè))、系統(tǒng)分析員、數(shù)據(jù)庫設(shè)計員、應(yīng)用程序員、用戶計員、應(yīng)用程序員、用戶1.2 數(shù)據(jù)模型數(shù)據(jù)模型 概念數(shù)據(jù)模型:獨立于計算機(jī)系統(tǒng)的數(shù)據(jù)模型,概念
14、數(shù)據(jù)模型:獨立于計算機(jī)系統(tǒng)的數(shù)據(jù)模型,用來描述所使用的信息結(jié)構(gòu)。用來描述所使用的信息結(jié)構(gòu)。 邏輯數(shù)據(jù)模型:現(xiàn)實世界的第二層抽象,反映數(shù)邏輯數(shù)據(jù)模型:現(xiàn)實世界的第二層抽象,反映數(shù)據(jù)的邏輯結(jié)構(gòu)。據(jù)的邏輯結(jié)構(gòu)。 物理數(shù)據(jù)模型:反映數(shù)據(jù)在計算機(jī)中的存儲結(jié)構(gòu)。物理數(shù)據(jù)模型:反映數(shù)據(jù)在計算機(jī)中的存儲結(jié)構(gòu)。 在數(shù)據(jù)庫中用數(shù)據(jù)模型來抽象、表示和處理現(xiàn)實世在數(shù)據(jù)庫中用數(shù)據(jù)模型來抽象、表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息。根據(jù)數(shù)據(jù)抽象層次,針對不同的界中的數(shù)據(jù)和信息。根據(jù)數(shù)據(jù)抽象層次,針對不同的數(shù)據(jù)對象和應(yīng)用目的,可以分為三類:數(shù)據(jù)對象和應(yīng)用目的,可以分為三類:1.2.1數(shù)據(jù)模型的組成要素 數(shù)據(jù)結(jié)構(gòu):所研究的對象類型
15、的集合,這些對象是數(shù)據(jù)結(jié)構(gòu):所研究的對象類型的集合,這些對象是數(shù)據(jù)庫的組成成分。數(shù)據(jù)庫的組成成分。 數(shù)據(jù)操作:指對數(shù)據(jù)庫中不同數(shù)據(jù)結(jié)構(gòu)的對象所允數(shù)據(jù)操作:指對數(shù)據(jù)庫中不同數(shù)據(jù)結(jié)構(gòu)的對象所允許執(zhí)行的操作的集合,包括操作及操作規(guī)則。許執(zhí)行的操作的集合,包括操作及操作規(guī)則。 完整性約束:數(shù)據(jù)的完整性約束條件是一組完整性完整性約束:數(shù)據(jù)的完整性約束條件是一組完整性規(guī)則的集合。規(guī)則的集合。1.2.2 概念模型具體的數(shù)據(jù)庫管理系統(tǒng)具體的數(shù)據(jù)庫管理系統(tǒng)DBMS所所支持的邏輯數(shù)據(jù)模型不便于非計算機(jī)支持的邏輯數(shù)據(jù)模型不便于非計算機(jī)專業(yè)人員理解和應(yīng)用,在開始設(shè)計數(shù)專業(yè)人員理解和應(yīng)用,在開始設(shè)計數(shù)據(jù)模型時,可以先用
16、概念數(shù)據(jù)模型將據(jù)模型時,可以先用概念數(shù)據(jù)模型將現(xiàn)實世界中的客觀事物用某種信息結(jié)現(xiàn)實世界中的客觀事物用某種信息結(jié)構(gòu)表示出來,再轉(zhuǎn)化為用計算機(jī)表示構(gòu)表示出來,再轉(zhuǎn)化為用計算機(jī)表示的邏輯數(shù)據(jù)模型,如圖所示。的邏輯數(shù)據(jù)模型,如圖所示。概念模型涉及的概念(1) 實體:現(xiàn)實世界中客觀存在并可相互區(qū)分的事物稱實體:現(xiàn)實世界中客觀存在并可相互區(qū)分的事物稱為實體。為實體。(2) 屬性:實體所具有的某一特性稱為屬性。屬性:實體所具有的某一特性稱為屬性。(3) 實體和屬性的型與值:型是結(jié)構(gòu),用實體名及其屬性實體和屬性的型與值:型是結(jié)構(gòu),用實體名及其屬性名集合描述同類實體,稱為實體型;值是數(shù)據(jù),不同名集合描述同類實體
17、,稱為實體型;值是數(shù)據(jù),不同的實體有不同的屬性內(nèi)容(屬性值)。的實體有不同的屬性內(nèi)容(屬性值)。(4) 實體集:具有相同實體型的實體值的集合稱為實體實體集:具有相同實體型的實體值的集合稱為實體集。集。(5) 關(guān)鍵字:在實體屬性中,能區(qū)別實體集合中不同個關(guān)鍵字:在實體屬性中,能區(qū)別實體集合中不同個體的某一個或某幾個屬性的組合,稱為關(guān)鍵字。體的某一個或某幾個屬性的組合,稱為關(guān)鍵字。2. 實體間的聯(lián)系實體間的聯(lián)系兩個實體集之間的聯(lián)系可以分為三類:兩個實體集之間的聯(lián)系可以分為三類: 一對一聯(lián)系一對一聯(lián)系(1:1) 一對多聯(lián)系一對多聯(lián)系(1:N) 多對多聯(lián)系多對多聯(lián)系(M:N)3. 概念模型的表示方法概
18、念模型的表示方法概念模型的表示方法很多,其中最著名最常用的概念模型的表示方法很多,其中最著名最常用的是是P.P.S.Chen于于1976年提出的實體年提出的實體-聯(lián)系方法(聯(lián)系方法(E-R方方法)。該方法用法)。該方法用E-R圖描述信息世界的概念模型。圖描述信息世界的概念模型。方法如下:方法如下: 實體型:用矩形表示,矩形框內(nèi)寫上實體名。實體型:用矩形表示,矩形框內(nèi)寫上實體名。 屬性:用橢圓形或圓角矩形表示,圖形內(nèi)寫上屬性名,屬性:用橢圓形或圓角矩形表示,圖形內(nèi)寫上屬性名,并用直線將其與相應(yīng)的實體連接起來。并用直線將其與相應(yīng)的實體連接起來。 聯(lián)系:用菱形表示,菱形框內(nèi)寫上表示聯(lián)系行為的動聯(lián)系:
19、用菱形表示,菱形框內(nèi)寫上表示聯(lián)系行為的動詞表示聯(lián)系名,并用直線分別與有關(guān)實體連接起來,同詞表示聯(lián)系名,并用直線分別與有關(guān)實體連接起來,同時在直線旁邊標(biāo)上聯(lián)系的類型時在直線旁邊標(biāo)上聯(lián)系的類型(1:1,1:N或或M:N)。如果一個聯(lián)系具有屬性,則這些屬性也要用直線與該聯(lián)如果一個聯(lián)系具有屬性,則這些屬性也要用直線與該聯(lián)系連接起來。系連接起來。學(xué)生實體學(xué)生實體通常在表示單個實體的通常在表示單個實體的E-R圖中,除了要標(biāo)明實體圖中,除了要標(biāo)明實體名外,還要標(biāo)明實體所具有的屬性。例如學(xué)生實體具名外,還要標(biāo)明實體所具有的屬性。例如學(xué)生實體具有學(xué)號、姓名、性別、出生日期和所在系的屬性,其有學(xué)號、姓名、性別、出
20、生日期和所在系的屬性,其E-R圖如下:圖如下: 實體之間的聯(lián)系的表示實體之間的聯(lián)系的表示在表示實體之間的聯(lián)系時,每個實體只標(biāo)明其實在表示實體之間的聯(lián)系時,每個實體只標(biāo)明其實體名,而把實體屬性單獨用圖表示或把所有實體集用體名,而把實體屬性單獨用圖表示或把所有實體集用列表表示。列表表示。兩個以上的實體集之間聯(lián)系的表示兩個以上的實體集之間聯(lián)系的表示同一個實體集內(nèi)部聯(lián)系的表示同一個實體集內(nèi)部聯(lián)系的表示1.2.3 層次模型層次模型在數(shù)據(jù)庫中,對滿足以下兩個條件的數(shù)據(jù)模型稱為層在數(shù)據(jù)庫中,對滿足以下兩個條件的數(shù)據(jù)模型稱為層次模型。次模型。 有且僅有一個節(jié)點無雙親,這個節(jié)點稱為有且僅有一個節(jié)點無雙親,這個節(jié)
21、點稱為“根節(jié)點根節(jié)點”。 其他節(jié)點有且僅有一個雙親。其他節(jié)點有且僅有一個雙親。層次模型中相關(guān)概念層次模型中相關(guān)概念 在層次模型中,同一雙親的子女節(jié)點稱為兄弟節(jié)點;在層次模型中,同一雙親的子女節(jié)點稱為兄弟節(jié)點; 沒有子女的節(jié)點稱為葉節(jié)點;沒有子女的節(jié)點稱為葉節(jié)點; 雙親節(jié)點與其任意一個子女節(jié)點都構(gòu)成一個基本層次雙親節(jié)點與其任意一個子女節(jié)點都構(gòu)成一個基本層次聯(lián)系,表示一對多的關(guān)系。聯(lián)系,表示一對多的關(guān)系。層次模型特點層次模型特點 層次模型的優(yōu)點:層次模型的優(yōu)點: 層次模型數(shù)據(jù)結(jié)構(gòu)簡單,對具有一對多的層次關(guān)層次模型數(shù)據(jù)結(jié)構(gòu)簡單,對具有一對多的層次關(guān)系的描述非常自然、直觀、容易理解。記錄之間的聯(lián)系的描
22、述非常自然、直觀、容易理解。記錄之間的聯(lián)系通過指針來實現(xiàn),查詢效率較高。系通過指針來實現(xiàn),查詢效率較高。 層次模型的缺點:層次模型的缺點: 上一層記錄類型和下一層記錄類型只能表示一對上一層記錄類型和下一層記錄類型只能表示一對多聯(lián)系,無法實現(xiàn)多對多聯(lián)系。如果要實現(xiàn)多對多聯(lián)多聯(lián)系,無法實現(xiàn)多對多聯(lián)系。如果要實現(xiàn)多對多聯(lián)系,則非常復(fù)雜,效率非常低,使用也不方便。系,則非常復(fù)雜,效率非常低,使用也不方便。1.2.4 網(wǎng)狀模型 在網(wǎng)狀模型中,允許:在網(wǎng)狀模型中,允許: 一個以上的節(jié)點無雙親。一個以上的節(jié)點無雙親。 一個節(jié)點可以有多于一個的雙親。一個節(jié)點可以有多于一個的雙親。網(wǎng)狀模型的特點網(wǎng)狀模型的特點
23、網(wǎng)狀模型的優(yōu)點:網(wǎng)狀模型的優(yōu)點: 記錄之間聯(lián)系通過指針實現(xiàn),具有良好的性能,存記錄之間聯(lián)系通過指針實現(xiàn),具有良好的性能,存取效率較高。能夠更為直接地描述現(xiàn)實世界,如一個取效率較高。能夠更為直接地描述現(xiàn)實世界,如一個節(jié)點可以有多個雙親。節(jié)點可以有多個雙親。 網(wǎng)狀模型的缺點:網(wǎng)狀模型的缺點: 隨著應(yīng)用環(huán)境的擴(kuò)大,數(shù)據(jù)庫的結(jié)構(gòu)會變得越來越隨著應(yīng)用環(huán)境的擴(kuò)大,數(shù)據(jù)庫的結(jié)構(gòu)會變得越來越復(fù)雜,編寫應(yīng)用程序也會更加復(fù)雜,程序員必須熟悉復(fù)雜,編寫應(yīng)用程序也會更加復(fù)雜,程序員必須熟悉數(shù)據(jù)庫的邏輯結(jié)構(gòu)。與層次模型一樣,現(xiàn)在的數(shù)據(jù)庫數(shù)據(jù)庫的邏輯結(jié)構(gòu)。與層次模型一樣,現(xiàn)在的數(shù)據(jù)庫管理系統(tǒng)已經(jīng)很少使用網(wǎng)狀模型了。管理系
24、統(tǒng)已經(jīng)很少使用網(wǎng)狀模型了。1.2.5 關(guān)系模型關(guān)系模型是三種數(shù)據(jù)模型中最重要的模型,是當(dāng)關(guān)系模型是三種數(shù)據(jù)模型中最重要的模型,是當(dāng)前使用最廣泛的數(shù)據(jù)模型。前使用最廣泛的數(shù)據(jù)模型。Microsoft SQL Server 2000數(shù)據(jù)庫管理系統(tǒng)也是基于關(guān)系模型的。關(guān)系模型是建數(shù)據(jù)庫管理系統(tǒng)也是基于關(guān)系模型的。關(guān)系模型是建立在數(shù)學(xué)概念基礎(chǔ)上的,它的主要特征是使用關(guān)系來立在數(shù)學(xué)概念基礎(chǔ)上的,它的主要特征是使用關(guān)系來表示實體以及實體之間的聯(lián)系。表示實體以及實體之間的聯(lián)系。1. 關(guān)系模型的基本術(shù)語關(guān)系模型的基本術(shù)語(1) 關(guān)系關(guān)系一個關(guān)系模型的邏輯結(jié)構(gòu)是二維表,它由行和列組成。一個關(guān)系模型的邏輯結(jié)構(gòu)是二
25、維表,它由行和列組成。(2) 元組元組表中的一行稱為一個元組,在數(shù)據(jù)庫中也稱為記錄。表中的一行稱為一個元組,在數(shù)據(jù)庫中也稱為記錄。(3) 屬性屬性表中的一列稱為一個屬性,用來描述事物的特征,屬性表中的一列稱為一個屬性,用來描述事物的特征,屬性分為屬性名和屬性值。在數(shù)據(jù)庫中屬性也稱為字段。分為屬性名和屬性值。在數(shù)據(jù)庫中屬性也稱為字段。(4) 域域?qū)傩缘娜≈捣秶?。屬性的取值范圍?5) 關(guān)系模式關(guān)系模式關(guān)系模式描述關(guān)系的信息結(jié)構(gòu)和語義限制,是型的概念;關(guān)系模式描述關(guān)系的信息結(jié)構(gòu)和語義限制,是型的概念;而關(guān)系是關(guān)系模式中的而關(guān)系是關(guān)系模式中的個實例,是值的概念。關(guān)系模個實例,是值的概念。關(guān)系模式的描
26、述形式式的描述形式-關(guān)系名(屬性關(guān)系名(屬性1,屬性,屬性2,屬性,屬性n)。)。1. 關(guān)系模型的基本術(shù)語關(guān)系模型的基本術(shù)語 (6) (6) 關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫 使用關(guān)系模型表示和處理數(shù)據(jù)的數(shù)據(jù)庫,是一些相關(guān)使用關(guān)系模型表示和處理數(shù)據(jù)的數(shù)據(jù)庫,是一些相關(guān)的表和其他數(shù)據(jù)庫對象的集合。的表和其他數(shù)據(jù)庫對象的集合。 (7) (7) 關(guān)鍵字關(guān)鍵字/ /碼碼若關(guān)系中的某一個屬性或?qū)傩越M的值惟一地決定其它若關(guān)系中的某一個屬性或?qū)傩越M的值惟一地決定其它所有屬性,則這個屬性或?qū)傩越M稱為該關(guān)系的關(guān)鍵字。所有屬性,則這個屬性或?qū)傩越M稱為該關(guān)系的關(guān)鍵字。 (8) (8) 候選鍵候選鍵/ /候選關(guān)鍵字候選關(guān)鍵字/
27、/侯選碼侯選碼如果一個關(guān)系中有多個屬性或?qū)傩越M都能用來標(biāo)識該如果一個關(guān)系中有多個屬性或?qū)傩越M都能用來標(biāo)識該關(guān)系的元組,那么這些屬性或?qū)傩越M都稱為該關(guān)系的關(guān)系的元組,那么這些屬性或?qū)傩越M都稱為該關(guān)系的候選關(guān)鍵字。候選關(guān)鍵字。1. 關(guān)系模型的基本術(shù)語關(guān)系模型的基本術(shù)語 (9) (9) 主鍵主鍵/ /主關(guān)鍵字主關(guān)鍵字/ /主碼主碼在一個關(guān)系的多個候選關(guān)鍵字中指定其中一個作為該在一個關(guān)系的多個候選關(guān)鍵字中指定其中一個作為該關(guān)系的關(guān)鍵字,則稱它為主關(guān)鍵字或主鍵、主碼。關(guān)系的關(guān)鍵字,則稱它為主關(guān)鍵字或主鍵、主碼。 (10)(10)外鍵外鍵/ /外關(guān)鍵字外關(guān)鍵字/ /外碼外碼如果一個關(guān)系如果一個關(guān)系R R中
28、的某個屬性或?qū)傩越M中的某個屬性或?qū)傩越MF F并非該關(guān)系的并非該關(guān)系的關(guān)鍵字,但它和另外一個關(guān)系關(guān)鍵字,但它和另外一個關(guān)系S S的關(guān)鍵字的關(guān)鍵字K K相對應(yīng),則相對應(yīng),則稱稱F F為關(guān)系為關(guān)系R R的外鍵,同時要求外鍵的外鍵,同時要求外鍵F F的值要參照關(guān)系的值要參照關(guān)系S S中主鍵中主鍵K K的值。有時,的值。有時,R R和和S S可能為同一個關(guān)系??赡転橥粋€關(guān)系。2. 關(guān)系模型三要素關(guān)系模型三要素(1) 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)關(guān)系關(guān)系關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)就是一張二維表格。在關(guān)系關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)就是一張二維表格。在關(guān)系數(shù)據(jù)庫中,關(guān)系模式是型(二維表格),關(guān)系是值(元數(shù)據(jù)庫中,關(guān)系模式是
29、型(二維表格),關(guān)系是值(元組的集合),關(guān)系模式必須指出這個元組集合的結(jié)構(gòu),組的集合),關(guān)系模式必須指出這個元組集合的結(jié)構(gòu),即它由哪些屬性構(gòu)成,這些屬性采用何種類型、來自哪即它由哪些屬性構(gòu)成,這些屬性采用何種類型、來自哪些域,以及屬性與域之間的映像關(guān)系。些域,以及屬性與域之間的映像關(guān)系。(2) 關(guān)系操作關(guān)系操作關(guān)系模型中常用的關(guān)系操作有數(shù)據(jù)查詢和數(shù)據(jù)更新兩大關(guān)系模型中常用的關(guān)系操作有數(shù)據(jù)查詢和數(shù)據(jù)更新兩大部分,其中數(shù)據(jù)查詢包括選擇、投影、連接、除、并、部分,其中數(shù)據(jù)查詢包括選擇、投影、連接、除、并、交、差;數(shù)據(jù)更新包括插入、刪除、修改操作。交、差;數(shù)據(jù)更新包括插入、刪除、修改操作。(3) 關(guān)系
30、完整性約束關(guān)系完整性約束關(guān)系模型允許定義三類完整性約束:實體完整性、參照關(guān)系模型允許定義三類完整性約束:實體完整性、參照完整性和數(shù)據(jù)類型的域完整性。實體完整性和參照完整完整性和數(shù)據(jù)類型的域完整性。實體完整性和參照完整性是關(guān)系模型必須滿足的約束條件,由關(guān)系系統(tǒng)自動支性是關(guān)系模型必須滿足的約束條件,由關(guān)系系統(tǒng)自動支持;數(shù)據(jù)類型的域完整性是數(shù)據(jù)取值要遵循的約束條件。持;數(shù)據(jù)類型的域完整性是數(shù)據(jù)取值要遵循的約束條件。3. 關(guān)系模型的特點關(guān)系模型的特點(1) 關(guān)系模型具有嚴(yán)格的理論基礎(chǔ)關(guān)系模型具有嚴(yán)格的理論基礎(chǔ)(2) 關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)單一關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)單一(3) 關(guān)系模型存取簡單關(guān)系模型存取簡單1
31、.3 關(guān)系數(shù)據(jù)庫及其設(shè)計過程關(guān)系數(shù)據(jù)庫及其設(shè)計過程關(guān)系數(shù)據(jù)庫是目前使用最廣泛的數(shù)據(jù)庫,現(xiàn)實世關(guān)系數(shù)據(jù)庫是目前使用最廣泛的數(shù)據(jù)庫,現(xiàn)實世界信息結(jié)構(gòu)復(fù)雜、應(yīng)用環(huán)境千變?nèi)f化,如何構(gòu)造一個界信息結(jié)構(gòu)復(fù)雜、應(yīng)用環(huán)境千變?nèi)f化,如何構(gòu)造一個合理的數(shù)據(jù)庫系統(tǒng),使之能夠有效地存儲數(shù)據(jù),滿足合理的數(shù)據(jù)庫系統(tǒng),使之能夠有效地存儲數(shù)據(jù),滿足各種用戶的需求是我們要解決的首要問題,本節(jié)將結(jié)各種用戶的需求是我們要解決的首要問題,本節(jié)將結(jié)合應(yīng)用實例合應(yīng)用實例電腦器材銷售管理電腦器材銷售管理研究關(guān)系數(shù)據(jù)庫的研究關(guān)系數(shù)據(jù)庫的設(shè)計過程。設(shè)計過程。1.3.1 關(guān)系與表格關(guān)系模型是建立在集合代數(shù)基礎(chǔ)上的,關(guān)系是有嚴(yán)關(guān)系模型是建立在集合
32、代數(shù)基礎(chǔ)上的,關(guān)系是有嚴(yán)格的數(shù)學(xué)定義的,并不是所有的二維表格都可以稱為關(guān)格的數(shù)學(xué)定義的,并不是所有的二維表格都可以稱為關(guān)系,這個表格應(yīng)該具有如下一些性質(zhì)。系,這個表格應(yīng)該具有如下一些性質(zhì)。(1) 關(guān)系必須是規(guī)范化的關(guān)系關(guān)系必須是規(guī)范化的關(guān)系 (2) 表中的表中的“行行”是惟一的是惟一的(3) 行的次序可以任意行的次序可以任意(4) 表中的表中的“列名列名”是惟一的是惟一的(5) 列的次序可以任意列的次序可以任意(6) 必須滿足完整性約束條件必須滿足完整性約束條件1.3.2 數(shù)據(jù)表基本概念關(guān)系數(shù)據(jù)庫中包含若干關(guān)系關(guān)系數(shù)據(jù)庫中包含若干關(guān)系二維數(shù)據(jù)表,可分為二維數(shù)據(jù)表,可分為基本的數(shù)據(jù)表、查詢結(jié)果集
33、、視圖等,其中數(shù)據(jù)表是最重基本的數(shù)據(jù)表、查詢結(jié)果集、視圖等,其中數(shù)據(jù)表是最重要的一類關(guān)系,其它的對象大都依附于數(shù)據(jù)表。要的一類關(guān)系,其它的對象大都依附于數(shù)據(jù)表。數(shù)據(jù)表是數(shù)據(jù)庫中最基本的對象,用來在數(shù)據(jù)庫中存數(shù)據(jù)表是數(shù)據(jù)庫中最基本的對象,用來在數(shù)據(jù)庫中存儲用戶的全部數(shù)據(jù)。數(shù)據(jù)庫中可以有多個數(shù)據(jù)表,每個數(shù)儲用戶的全部數(shù)據(jù)。數(shù)據(jù)庫中可以有多個數(shù)據(jù)表,每個數(shù)據(jù)表可代表用戶某類有意義的需求信息。例如在一個學(xué)校據(jù)表可代表用戶某類有意義的需求信息。例如在一個學(xué)?!敖虒W(xué)管理教學(xué)管理”數(shù)據(jù)庫中有數(shù)據(jù)庫中有“教師信息表教師信息表”、“學(xué)生信息表學(xué)生信息表”和和“課程成績表課程成績表”等。等。數(shù)據(jù)表中的每一行代表不
34、同需求的一個實體對象。例數(shù)據(jù)表中的每一行代表不同需求的一個實體對象。例如如“學(xué)生信息表學(xué)生信息表”中用一個學(xué)生的檔案信息屬性作為一個中用一個學(xué)生的檔案信息屬性作為一個實體;而在實體;而在“課程成績表課程成績表”中用一個學(xué)生的課程成績信息中用一個學(xué)生的課程成績信息屬性作為一個實體。屬性作為一個實體。數(shù)據(jù)表中的每一列都代表實體對象的一個屬性特征,數(shù)據(jù)表中的每一列都代表實體對象的一個屬性特征,如學(xué)生的姓名、住址等。數(shù)據(jù)表經(jīng)設(shè)計完成并創(chuàng)建之后,如學(xué)生的姓名、住址等。數(shù)據(jù)表經(jīng)設(shè)計完成并創(chuàng)建之后,就一直存儲在數(shù)據(jù)庫文件中,直到被刪除為止。就一直存儲在數(shù)據(jù)庫文件中,直到被刪除為止。1.3.3 數(shù)據(jù)庫設(shè)計過程
35、數(shù)據(jù)庫設(shè)計所要解決的問題是建立數(shù)據(jù)庫設(shè)計所要解決的問題是建立數(shù)據(jù)表及其應(yīng)用系統(tǒng),具體說,就是指數(shù)據(jù)表及其應(yīng)用系統(tǒng),具體說,就是指對一個給定的需求和應(yīng)用環(huán)境,構(gòu)造最對一個給定的需求和應(yīng)用環(huán)境,構(gòu)造最優(yōu)化的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)優(yōu)化的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),滿足用戶的各種應(yīng)用需求。大用系統(tǒng),滿足用戶的各種應(yīng)用需求。大型數(shù)據(jù)庫的設(shè)計和開發(fā)是一項龐大的工型數(shù)據(jù)庫的設(shè)計和開發(fā)是一項龐大的工程,是多學(xué)科的綜合性技術(shù)。程,是多學(xué)科的綜合性技術(shù)。數(shù)據(jù)庫設(shè)計步驟大致可以分為需求數(shù)據(jù)庫設(shè)計步驟大致可以分為需求分析、概念結(jié)構(gòu)設(shè)計、邏輯結(jié)構(gòu)設(shè)計、分析、概念結(jié)構(gòu)設(shè)計、邏輯結(jié)構(gòu)設(shè)計、物理結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫
36、實施、數(shù)據(jù)庫運物理結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫實施、數(shù)據(jù)庫運行和維護(hù)幾個階段。設(shè)計一個完善的數(shù)行和維護(hù)幾個階段。設(shè)計一個完善的數(shù)據(jù)庫應(yīng)用系統(tǒng)往往是上述六個階段的不據(jù)庫應(yīng)用系統(tǒng)往往是上述六個階段的不斷反復(fù)、逐步完善的過程,如圖所示。斷反復(fù)、逐步完善的過程,如圖所示。1.3.3 數(shù)據(jù)庫設(shè)計過程1. 需求分析需求分析需求分析的任務(wù)是由計算機(jī)人員(系統(tǒng)分析員)和用戶雙方共需求分析的任務(wù)是由計算機(jī)人員(系統(tǒng)分析員)和用戶雙方共同通過詳細(xì)的調(diào)查研究,充分了解用戶的組織機(jī)構(gòu)、業(yè)務(wù)規(guī)則、數(shù)同通過詳細(xì)的調(diào)查研究,充分了解用戶的組織機(jī)構(gòu)、業(yè)務(wù)規(guī)則、數(shù)據(jù)需求、完整性約束條件、事務(wù)處理和安全性要求等,為概念設(shè)計據(jù)需求、完整性約束
37、條件、事務(wù)處理和安全性要求等,為概念設(shè)計奠定基礎(chǔ)。這個階段的許多方法與系統(tǒng)分析設(shè)計、軟件工程的方法奠定基礎(chǔ)。這個階段的許多方法與系統(tǒng)分析設(shè)計、軟件工程的方法類似,畫出組織機(jī)構(gòu)圖、業(yè)務(wù)流程圖,詳細(xì)描述用戶應(yīng)用環(huán)境的業(yè)類似,畫出組織機(jī)構(gòu)圖、業(yè)務(wù)流程圖,詳細(xì)描述用戶應(yīng)用環(huán)境的業(yè)務(wù)流程、數(shù)據(jù)需求。務(wù)流程、數(shù)據(jù)需求。2. 概念結(jié)構(gòu)設(shè)計概念結(jié)構(gòu)設(shè)計最常用的概念模型表示方法是實體最常用的概念模型表示方法是實體-聯(lián)系模型,簡稱聯(lián)系模型,簡稱E-R模型。模型。設(shè)計設(shè)計E-R模型應(yīng)遵循的原則:模型應(yīng)遵循的原則:(1) 首先針對特定用戶的應(yīng)用,確定實體、屬性和實體間的聯(lián)系,首先針對特定用戶的應(yīng)用,確定實體、屬性和實
38、體間的聯(lián)系,做出局部做出局部E-R模型。模型。(2) 綜合各個用戶的局部綜合各個用戶的局部E-R模型,在消除冗余聯(lián)系并保證數(shù)據(jù)完模型,在消除冗余聯(lián)系并保證數(shù)據(jù)完整性的前提下,產(chǎn)生能準(zhǔn)確地反映原來的局部整性的前提下,產(chǎn)生能準(zhǔn)確地反映原來的局部E-R模型(包括實體、模型(包括實體、屬性及實體間的相互聯(lián)系)、反映數(shù)據(jù)庫整體概念、不存在相互表屬性及實體間的相互聯(lián)系)、反映數(shù)據(jù)庫整體概念、不存在相互表達(dá)矛盾的總體達(dá)矛盾的總體E-R模型。模型。一個系統(tǒng)的一個系統(tǒng)的E-R模型并不是惟一的,強(qiáng)調(diào)不同側(cè)面和不同聯(lián)系,做模型并不是惟一的,強(qiáng)調(diào)不同側(cè)面和不同聯(lián)系,做出的出的E-R模型可能會有很大的差別。模型可能會有
39、很大的差別。1.3.3 數(shù)據(jù)庫設(shè)計過程3. 邏輯結(jié)構(gòu)設(shè)計邏輯結(jié)構(gòu)設(shè)計邏輯結(jié)構(gòu)設(shè)計的任務(wù)就是把概念模型轉(zhuǎn)換成邏輯結(jié)構(gòu)設(shè)計的任務(wù)就是把概念模型轉(zhuǎn)換成DBMSDBMS所支所支持的數(shù)據(jù)模型,如關(guān)系模型、層次模型或網(wǎng)狀模型。我們持的數(shù)據(jù)模型,如關(guān)系模型、層次模型或網(wǎng)狀模型。我們只討論只討論E-RE-R模型向關(guān)系模型的轉(zhuǎn)換原則。模型向關(guān)系模型的轉(zhuǎn)換原則。 (1) (1) 實體向關(guān)系模型的轉(zhuǎn)化實體向關(guān)系模型的轉(zhuǎn)化(2)(2) 一對一聯(lián)系向關(guān)系模型的轉(zhuǎn)化一對一聯(lián)系向關(guān)系模型的轉(zhuǎn)化(3) (3) 一對多聯(lián)系向關(guān)系模型的轉(zhuǎn)化一對多聯(lián)系向關(guān)系模型的轉(zhuǎn)化(4) (4) 多對多聯(lián)系向關(guān)系模型的轉(zhuǎn)化多對多聯(lián)系向關(guān)系模型的
40、轉(zhuǎn)化用用E-RE-R模型轉(zhuǎn)換得到的關(guān)系模型要利用關(guān)系規(guī)范化理模型轉(zhuǎn)換得到的關(guān)系模型要利用關(guān)系規(guī)范化理論進(jìn)行進(jìn)一步的規(guī)范化設(shè)計,使之符合論進(jìn)行進(jìn)一步的規(guī)范化設(shè)計,使之符合DBMSDBMS的要求。的要求。4. 物理結(jié)構(gòu)設(shè)計物理結(jié)構(gòu)設(shè)計在物理結(jié)構(gòu)設(shè)計時,應(yīng)考慮以下幾個方面:在物理結(jié)構(gòu)設(shè)計時,應(yīng)考慮以下幾個方面:(1) 確定數(shù)據(jù)的存儲結(jié)構(gòu)確定數(shù)據(jù)的存儲結(jié)構(gòu)(2) 索引結(jié)構(gòu)設(shè)計索引結(jié)構(gòu)設(shè)計(3) 數(shù)據(jù)存儲位置的考慮數(shù)據(jù)存儲位置的考慮(4) 系統(tǒng)配置的優(yōu)化系統(tǒng)配置的優(yōu)化1.3.3 數(shù)據(jù)庫設(shè)計過程5. 數(shù)據(jù)庫實施數(shù)據(jù)庫實施確定了數(shù)據(jù)庫的邏輯結(jié)構(gòu)和物理結(jié)構(gòu),就可以利用確定了數(shù)據(jù)庫的邏輯結(jié)構(gòu)和物理結(jié)構(gòu),就可以利
41、用DBMS提供的數(shù)據(jù)定義語言建立數(shù)據(jù)庫的結(jié)構(gòu)。數(shù)據(jù)庫提供的數(shù)據(jù)定義語言建立數(shù)據(jù)庫的結(jié)構(gòu)。數(shù)據(jù)庫的結(jié)構(gòu)建立好之后,就可以向數(shù)據(jù)庫中裝載數(shù)據(jù)。的結(jié)構(gòu)建立好之后,就可以向數(shù)據(jù)庫中裝載數(shù)據(jù)。(1) 根據(jù)確定的邏輯結(jié)構(gòu)與物理結(jié)構(gòu),用根據(jù)確定的邏輯結(jié)構(gòu)與物理結(jié)構(gòu),用DBMS提供的提供的數(shù)據(jù)定義語言定義數(shù)據(jù)庫結(jié)構(gòu)。數(shù)據(jù)定義語言定義數(shù)據(jù)庫結(jié)構(gòu)。(2) 數(shù)據(jù)裝載數(shù)據(jù)庫結(jié)構(gòu)建立后向數(shù)據(jù)庫中裝載數(shù)據(jù)數(shù)據(jù)裝載數(shù)據(jù)庫結(jié)構(gòu)建立后向數(shù)據(jù)庫中裝載數(shù)據(jù)(也也稱為數(shù)據(jù)加載稱為數(shù)據(jù)加載)。6. 數(shù)據(jù)庫的運行與維護(hù)數(shù)據(jù)庫的運行與維護(hù)數(shù)據(jù)庫設(shè)計與應(yīng)用開發(fā)工作完成之后,系統(tǒng)進(jìn)入運數(shù)據(jù)庫設(shè)計與應(yīng)用開發(fā)工作完成之后,系統(tǒng)進(jìn)入運行與維護(hù)階段,
42、主要任務(wù)如下。行與維護(hù)階段,主要任務(wù)如下。(1) 維護(hù)數(shù)據(jù)庫的安全性和數(shù)據(jù)完整性維護(hù)數(shù)據(jù)庫的安全性和數(shù)據(jù)完整性(2) 數(shù)據(jù)庫的轉(zhuǎn)儲和恢復(fù)數(shù)據(jù)庫的轉(zhuǎn)儲和恢復(fù)(3) 監(jiān)測并改善數(shù)據(jù)庫性能監(jiān)測并改善數(shù)據(jù)庫性能(4) 數(shù)據(jù)庫的重新組織數(shù)據(jù)庫的重新組織1.3.4 電腦器材銷售管理電腦器材銷售管理數(shù)據(jù)庫的數(shù)據(jù)庫的模型設(shè)計模型設(shè)計 本書以某電腦公司的本書以某電腦公司的電腦器材銷售管理電腦器材銷售管理數(shù)據(jù)庫應(yīng)用數(shù)據(jù)庫應(yīng)用系統(tǒng)為例貫穿全書,本節(jié)主要介紹如何設(shè)計該數(shù)據(jù)模型,系統(tǒng)為例貫穿全書,本節(jié)主要介紹如何設(shè)計該數(shù)據(jù)模型,在以后各章節(jié)均以該數(shù)據(jù)庫為【實例練習(xí)】進(jìn)行操作,通在以后各章節(jié)均以該數(shù)據(jù)庫為【實例練習(xí)】進(jìn)行
43、操作,通過該實例的學(xué)習(xí)使讀者掌握過該實例的學(xué)習(xí)使讀者掌握SQL Server數(shù)據(jù)庫系統(tǒng)與數(shù)據(jù)數(shù)據(jù)庫系統(tǒng)與數(shù)據(jù)庫應(yīng)用技術(shù)。庫應(yīng)用技術(shù)。 【實例練習(xí)【實例練習(xí)1-1】某電腦公司】某電腦公司電腦器材銷售管理電腦器材銷售管理數(shù)據(jù)數(shù)據(jù)庫應(yīng)用系統(tǒng)的模型設(shè)計庫應(yīng)用系統(tǒng)的模型設(shè)計該電腦公司的需求分析可以簡單概括為:該電腦公司的需求分析可以簡單概括為:“商品購進(jìn)商品購進(jìn)庫庫存管理存管理商品銷售商品銷售”三大環(huán)節(jié)。三大環(huán)節(jié)。1、概念模型:、概念模型: 在概念模型中可以初步將商品、供貨商、客戶、員工對象作在概念模型中可以初步將商品、供貨商、客戶、員工對象作為實體,其屬性的描述:為實體,其屬性的描述: 商品商品(商品
44、編號或條形編碼、商品名稱、規(guī)格尺寸或型號、(商品編號或條形編碼、商品名稱、規(guī)格尺寸或型號、計量單位、供貨廠家、進(jìn)貨價格、銷售參考價格、庫存數(shù)量)計量單位、供貨廠家、進(jìn)貨價格、銷售參考價格、庫存數(shù)量) 供貨商供貨商(供貨廠家編號、廠家名稱、廠家地址、進(jìn)貨商品名(供貨廠家編號、廠家名稱、廠家地址、進(jìn)貨商品名稱、進(jìn)貨日期、進(jìn)貨數(shù)量、進(jìn)貨價格、廠家賬戶、廠家聯(lián)系人、稱、進(jìn)貨日期、進(jìn)貨數(shù)量、進(jìn)貨價格、廠家賬戶、廠家聯(lián)系人、收貨員工)收貨員工) 客戶客戶(客戶名稱、銷售商品名稱、規(guī)格、計量單位、銷售日(客戶名稱、銷售商品名稱、規(guī)格、計量單位、銷售日期、銷售單價、銷售數(shù)量、銷售金額、銷售員工)期、銷售單價、
45、銷售數(shù)量、銷售金額、銷售員工) 員工員工(員工編號、姓名、性別、年齡或出生日期、部門、工(員工編號、姓名、性別、年齡或出生日期、部門、工齡或工作時間、照片、個人簡歷)齡或工作時間、照片、個人簡歷) 在一個關(guān)系數(shù)據(jù)庫中允許有多個不同的關(guān)系在一個關(guān)系數(shù)據(jù)庫中允許有多個不同的關(guān)系數(shù)據(jù)表,并對數(shù)據(jù)表,并對所有的數(shù)據(jù)表進(jìn)行統(tǒng)一管理。我們可以根據(jù)各個不同職能部門所有的數(shù)據(jù)表進(jìn)行統(tǒng)一管理。我們可以根據(jù)各個不同職能部門的實際工作需要,把概念模型中的一個實體集作為一個關(guān)系,的實際工作需要,把概念模型中的一個實體集作為一個關(guān)系,初步設(shè)計成關(guān)系數(shù)據(jù)庫邏輯模型中的初步設(shè)計成關(guān)系數(shù)據(jù)庫邏輯模型中的4個二維數(shù)據(jù)表格。個二
46、維數(shù)據(jù)表格。 2、邏輯模型、邏輯模型 (1)公司管理層使用的簡單)公司管理層使用的簡單商品一覽表商品一覽表 該表是公司所經(jīng)營和準(zhǔn)備擴(kuò)展經(jīng)營的全部商品明細(xì),為該表是公司所經(jīng)營和準(zhǔn)備擴(kuò)展經(jīng)營的全部商品明細(xì),為規(guī)范化經(jīng)營管理,由公司決策部門對商品統(tǒng)一進(jìn)行分類,規(guī)范化經(jīng)營管理,由公司決策部門對商品統(tǒng)一進(jìn)行分類,制定統(tǒng)一的商品編號,用制定統(tǒng)一的商品編號,用“貨號貨號”表示,并指定統(tǒng)一的商表示,并指定統(tǒng)一的商品名稱,品名稱,商品一覽表商品一覽表的主要數(shù)據(jù)項見表的主要數(shù)據(jù)項見表1.5。貨號貨號貨名貨名規(guī)格規(guī)格單位單位平均進(jìn)價平均進(jìn)價參考價格參考價格庫存量庫存量 其中:其中:“平均進(jìn)價平均進(jìn)價”根據(jù)從不同廠家
47、購進(jìn)同種商品的不同價根據(jù)從不同廠家購進(jìn)同種商品的不同價格,或從同一廠家因進(jìn)貨時間不同而價格不同時,由數(shù)格,或從同一廠家因進(jìn)貨時間不同而價格不同時,由數(shù)據(jù)庫系統(tǒng)按加權(quán)平均方法自動計算的平均據(jù)庫系統(tǒng)按加權(quán)平均方法自動計算的平均“進(jìn)貨價格進(jìn)貨價格”?!皡⒖純r格參考價格”是公司為該商品制定的銷售指導(dǎo)價格,是公司為該商品制定的銷售指導(dǎo)價格,允許銷售員在允許銷售員在5%5%的范圍內(nèi)自主靈活銷售。的范圍內(nèi)自主靈活銷售。 2、邏輯模型、邏輯模型 (2 2)進(jìn)貨部門按進(jìn)貨記錄填寫的每年度一張的)進(jìn)貨部門按進(jìn)貨記錄填寫的每年度一張的進(jìn)貨表進(jìn)貨表xxxxxxxx 該表用于保存詳細(xì)的進(jìn)貨記錄,由收貨人每次進(jìn)貨時填寫,
48、該表用于保存詳細(xì)的進(jìn)貨記錄,由收貨人每次進(jìn)貨時填寫,采用以一個年度(或月份)為單位使用一張采用以一個年度(或月份)為單位使用一張“進(jìn)貨表進(jìn)貨表”,表,表的名稱后綴年份(或年月)標(biāo)志加以區(qū)分(若前綴數(shù)字作數(shù)的名稱后綴年份(或年月)標(biāo)志加以區(qū)分(若前綴數(shù)字作數(shù)據(jù)表名不符合標(biāo)識符命名規(guī)則)。據(jù)表名不符合標(biāo)識符命名規(guī)則)。 本例題本例題進(jìn)貨表進(jìn)貨表20062006表示表示20062006年的年的“進(jìn)貨表進(jìn)貨表”,20062006年年度結(jié)束到度結(jié)束到20072007年時自動創(chuàng)建并使用年時自動創(chuàng)建并使用進(jìn)貨表進(jìn)貨表20072007。 進(jìn)進(jìn)貨貨日日期期貨貨號號貨貨名名規(guī)規(guī)格格單單位位進(jìn)進(jìn)價價進(jìn)進(jìn)貨貨數(shù)數(shù)量量
49、供供貨貨商商廠廠家家地地址址賬賬戶戶聯(lián)聯(lián)系系人人收收貨貨人人2、邏輯模型、邏輯模型 (3 3)銷售部門按銷售記錄填寫每年度一張的)銷售部門按銷售記錄填寫每年度一張的銷售表銷售表xxxxxxxx 該表用于保存詳細(xì)的銷售記錄,由銷售員每次銷售商品該表用于保存詳細(xì)的銷售記錄,由銷售員每次銷售商品時填寫。時填寫。20062006年使用年使用銷售表銷售表20062006,20062006年度結(jié)束到年度結(jié)束到20072007年時自動創(chuàng)建并使用年時自動創(chuàng)建并使用銷售表銷售表20072007。銷銷售售日日期期客客戶戶名名稱稱貨貨號號貨貨名名規(guī)規(guī)格格單單位位銷銷售售單單價價銷銷售售數(shù)數(shù)量量銷銷售售金金額額銷銷售
50、售員員2、邏輯模型、邏輯模型 (4 4)全公司職工的)全公司職工的員工表員工表 結(jié)合整個公司的人事管理,能表示結(jié)合整個公司的人事管理,能表示進(jìn)貨表進(jìn)貨表xxxxxxxx中中“收貨人收貨人”和和銷售表銷售表xxxxxxxx中中“銷售員銷售員”的詳細(xì)信息。的詳細(xì)信息。 其中其中“出生日期出生日期”即代表年齡,如果使用即代表年齡,如果使用“年齡年齡”數(shù)據(jù)數(shù)據(jù)項則每年都需要改變,采用項則每年都需要改變,采用“出生日期出生日期”可以由數(shù)據(jù)庫的可以由數(shù)據(jù)庫的函數(shù)自動計算并顯示每年的當(dāng)前年齡。函數(shù)自動計算并顯示每年的當(dāng)前年齡。員工編員工編號號IDID姓姓名名性性別別出生出生日期日期部門部門工作工作時間時間照
51、片照片個人個人簡歷簡歷1.4 關(guān)系數(shù)據(jù)庫的規(guī)范化關(guān)系數(shù)據(jù)庫的規(guī)范化 在在1.3.11.3.1節(jié)中我們介紹關(guān)系與表格時曾指出并不是所有節(jié)中我們介紹關(guān)系與表格時曾指出并不是所有的二維表格都可以稱為關(guān)系,在關(guān)系數(shù)據(jù)庫中,每一個表的二維表格都可以稱為關(guān)系,在關(guān)系數(shù)據(jù)庫中,每一個表格必須滿足一定的要規(guī)范條件。格必須滿足一定的要規(guī)范條件。 數(shù)據(jù)模型是數(shù)據(jù)庫應(yīng)用系統(tǒng)的基礎(chǔ)和核心,合理設(shè)計數(shù)據(jù)模型是數(shù)據(jù)庫應(yīng)用系統(tǒng)的基礎(chǔ)和核心,合理設(shè)計數(shù)據(jù)模型是數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計的關(guān)鍵,使用規(guī)范化的優(yōu)數(shù)據(jù)模型是數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計的關(guān)鍵,使用規(guī)范化的優(yōu)點是:點是:l l 大大改進(jìn)數(shù)據(jù)庫的整體組織結(jié)構(gòu)大大改進(jìn)數(shù)據(jù)庫的整體組織結(jié)構(gòu)l
52、 l 減少數(shù)據(jù)冗余減少數(shù)據(jù)冗余l(xiāng) l 增強(qiáng)數(shù)據(jù)的一致性和正確性增強(qiáng)數(shù)據(jù)的一致性和正確性l l 提高數(shù)據(jù)庫設(shè)計的靈活性提高數(shù)據(jù)庫設(shè)計的靈活性 更好的處理數(shù)據(jù)庫的安全性更好的處理數(shù)據(jù)庫的安全性 1.4.1 數(shù)據(jù)庫的三個規(guī)范化形式數(shù)據(jù)庫的三個規(guī)范化形式 數(shù)據(jù)模型應(yīng)進(jìn)行規(guī)范化處理,一個數(shù)據(jù)庫可以有三種不數(shù)據(jù)模型應(yīng)進(jìn)行規(guī)范化處理,一個數(shù)據(jù)庫可以有三種不同的規(guī)范化形式,即:同的規(guī)范化形式,即:l l 第一規(guī)范化形式第一規(guī)范化形式 1NF1NFl l 第二規(guī)范化形式第二規(guī)范化形式 2NF2NFl l 第三規(guī)范化形式第三規(guī)范化形式 3NF3NF1. 第一規(guī)范化形式第一規(guī)范化形式1NF1NF 第一規(guī)范化形式簡稱
53、第一范式:在一個關(guān)系(數(shù)據(jù)表)第一規(guī)范化形式簡稱第一范式:在一個關(guān)系(數(shù)據(jù)表)中沒有重復(fù)的數(shù)據(jù)項,每個屬性都是不可分割的最小數(shù)據(jù)中沒有重復(fù)的數(shù)據(jù)項,每個屬性都是不可分割的最小數(shù)據(jù)元素。即每列的列名(字段名)都是惟一的,一個關(guān)系中元素。即每列的列名(字段名)都是惟一的,一個關(guān)系中不允許有兩個相同的屬性名,同一列的數(shù)據(jù)具有相同的數(shù)不允許有兩個相同的屬性名,同一列的數(shù)據(jù)具有相同的數(shù)據(jù)類型,列的順序交換后不能改變關(guān)系的實際意義。據(jù)類型,列的順序交換后不能改變關(guān)系的實際意義。 字段:字段:就是數(shù)據(jù)表中的列,一列叫做一個字段,表示關(guān)就是數(shù)據(jù)表中的列,一列叫做一個字段,表示關(guān)系中實體的一個屬性。系中實體的一
54、個屬性。 簡單說第一范式就是指數(shù)據(jù)表中沒有相同的列簡單說第一范式就是指數(shù)據(jù)表中沒有相同的列字段字段惟一。惟一。關(guān)系數(shù)據(jù)庫中所有的數(shù)據(jù)表都必須滿足關(guān)系數(shù)據(jù)庫中所有的數(shù)據(jù)表都必須滿足1NF1NF。 2 2、第二規(guī)范化形式、第二規(guī)范化形式 2NF2NF 第二規(guī)范化形式簡稱第二范式:在已滿足第二規(guī)范化形式簡稱第二范式:在已滿足1NF1NF的關(guān)系中,的關(guān)系中,一行(數(shù)據(jù)元組、記錄)中所有非關(guān)鍵字?jǐn)?shù)據(jù)元素都完全一行(數(shù)據(jù)元組、記錄)中所有非關(guān)鍵字?jǐn)?shù)據(jù)元素都完全依賴于關(guān)鍵字(記錄惟一)。即一個關(guān)系中不允許有兩個依賴于關(guān)鍵字(記錄惟一)。即一個關(guān)系中不允許有兩個相同的實體,行的順序交換后不能改變數(shù)據(jù)表的實際意
55、義。相同的實體,行的順序交換后不能改變數(shù)據(jù)表的實際意義。關(guān)鍵字:也叫關(guān)鍵字段或主鍵,是所有數(shù)據(jù)都是惟一不重關(guān)鍵字:也叫關(guān)鍵字段或主鍵,是所有數(shù)據(jù)都是惟一不重復(fù)的字段或字段的組合。復(fù)的字段或字段的組合。 記錄:記錄:數(shù)據(jù)表中的一行叫做一條記錄,由表中各列的數(shù)數(shù)據(jù)表中的一行叫做一條記錄,由表中各列的數(shù)據(jù)項組成,是一組多個相關(guān)數(shù)據(jù)的集合,也稱為數(shù)據(jù)元組。據(jù)項組成,是一組多個相關(guān)數(shù)據(jù)的集合,也稱為數(shù)據(jù)元組。如果指定一個關(guān)鍵字,則可以在這個數(shù)據(jù)表中惟一確定一如果指定一個關(guān)鍵字,則可以在這個數(shù)據(jù)表中惟一確定一條記錄(行),比如在條記錄(行),比如在學(xué)生信息表學(xué)生信息表里指定里指定“學(xué)號學(xué)號”為為關(guān)鍵字,則
56、每個學(xué)號都惟一的表示一個學(xué)生的信息,其他關(guān)鍵字,則每個學(xué)號都惟一的表示一個學(xué)生的信息,其他屬性都完全依賴于屬性都完全依賴于“學(xué)號學(xué)號”。 簡單說第二范式就是數(shù)據(jù)表中沒有相同的行,通過關(guān)鍵簡單說第二范式就是數(shù)據(jù)表中沒有相同的行,通過關(guān)鍵字使記錄惟一。字使記錄惟一。不滿足不滿足2NF2NF的數(shù)據(jù)表,將導(dǎo)致數(shù)據(jù)插入或刪的數(shù)據(jù)表,將導(dǎo)致數(shù)據(jù)插入或刪除的異常,稍有不慎會使數(shù)據(jù)不一致,規(guī)范化的數(shù)據(jù)表都除的異常,稍有不慎會使數(shù)據(jù)不一致,規(guī)范化的數(shù)據(jù)表都必須滿足必須滿足2NF2NF。 【實例練習(xí)【實例練習(xí)1-21-2】 根據(jù)第二范式要求,不難發(fā)現(xiàn)根據(jù)第二范式要求,不難發(fā)現(xiàn)電腦器材銷售管理電腦器材銷售管理數(shù)數(shù)據(jù)
57、庫模型表據(jù)庫模型表1.71.7銷售表銷售表xxxxxxxx不滿足第二范式:不滿足第二范式: 因為公司每天可以銷售多種商品,則因為公司每天可以銷售多種商品,則“銷售日期銷售日期”不惟不惟一;一個客戶可能多次購買不同的商品,則一;一個客戶可能多次購買不同的商品,則“客戶名稱客戶名稱”不惟一;同一貨號的商品會多次銷售給不同的客戶不惟一;同一貨號的商品會多次銷售給不同的客戶。就。就是說是說銷售表銷售表xxxxxxxx中沒有一列的值是保證不可重復(fù)的,中沒有一列的值是保證不可重復(fù)的,無法指定關(guān)鍵字段使某條銷售記錄惟一,即不能保證沒有無法指定關(guān)鍵字段使某條銷售記錄惟一,即不能保證沒有相同的行。相同的行。 解
58、決方法:解決方法: 增加一列增加一列“序號序號”作為該表的關(guān)鍵字,該列數(shù)據(jù)沒有重作為該表的關(guān)鍵字,該列數(shù)據(jù)沒有重復(fù)的值,則可以保證沒有重復(fù)的記錄(行),以滿足復(fù)的值,則可以保證沒有重復(fù)的記錄(行),以滿足2NF2NF。 序序號號銷銷售售日日期期客客戶戶名名稱稱貨貨號號貨貨名名規(guī)規(guī)格格單單位位銷銷售售單單價價銷銷售售數(shù)數(shù)量量銷銷售售金金額額銷銷售售員員3 3、第三規(guī)范化形式、第三規(guī)范化形式 3NF3NF 第三規(guī)范化形式簡稱第三范式:在已滿足第三規(guī)范化形式簡稱第三范式:在已滿足2NF2NF的關(guān)系中,的關(guān)系中,不存在傳遞依賴于關(guān)鍵字的數(shù)據(jù)項。不存在傳遞依賴于關(guān)鍵字的數(shù)據(jù)項。 傳遞依賴:傳遞依賴:某些
59、列的數(shù)據(jù)不是直接依賴于關(guān)鍵字,而是某些列的數(shù)據(jù)不是直接依賴于關(guān)鍵字,而是通過某個非關(guān)鍵字間接的依賴于關(guān)鍵字。通過某個非關(guān)鍵字間接的依賴于關(guān)鍵字。 簡單說第三范式就是表中沒有間接依賴關(guān)鍵字的數(shù)據(jù)項。簡單說第三范式就是表中沒有間接依賴關(guān)鍵字的數(shù)據(jù)項。 實現(xiàn)第三范式的方法就是將不依賴關(guān)鍵字的列刪除,單實現(xiàn)第三范式的方法就是將不依賴關(guān)鍵字的列刪除,單獨創(chuàng)建一個數(shù)據(jù)表存儲。獨創(chuàng)建一個數(shù)據(jù)表存儲。 規(guī)范化的數(shù)據(jù)庫應(yīng)盡量滿足規(guī)范化的數(shù)據(jù)庫應(yīng)盡量滿足3NF3NF,一個滿足,一個滿足3NF3NF的數(shù)據(jù)庫的數(shù)據(jù)庫將有效地減少數(shù)據(jù)冗余。將有效地減少數(shù)據(jù)冗余。 注意:三個范式不是獨立的,注意:三個范式不是獨立的,3N
60、F3NF包含包含2NF2NF,2NF2NF又包含又包含1NF1NF?!緦嵗毩?xí)【實例練習(xí)1-31-3】 進(jìn)貨表進(jìn)貨表xxxxxxxx既不滿足第二范式也不滿足第三范式。既不滿足第二范式也不滿足第三范式。 第一:由于每列數(shù)據(jù)都不能惟一標(biāo)識一條進(jìn)貨記錄,增第一:由于每列數(shù)據(jù)都不能惟一標(biāo)識一條進(jìn)貨記錄,增加一列加一列“序號序號”作為關(guān)鍵字,即可以滿足第二范式。作為關(guān)鍵字,即可以滿足第二范式。 第二:第二:“廠家地址、賬戶、聯(lián)系人廠家地址、賬戶、聯(lián)系人”不是不是“進(jìn)貨記錄進(jìn)貨記錄”實體中必不可少的數(shù)據(jù)項,它們只依賴于實體中必不可少的數(shù)據(jù)項,它們只依賴于“供貨商供貨商”,通,通過過“供貨商供貨商”而間接依
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 執(zhí)業(yè)醫(yī)師定期考核個人述職報告7篇
- 應(yīng)聘應(yīng)屆生的自我介紹范文
- 建筑工程入門基礎(chǔ)知識普及
- 家電導(dǎo)購培訓(xùn)
- 大學(xué)法制安全教育主題班會
- 2018山西道法試卷+答案+解析
- 2024年中國自動化設(shè)備行業(yè)市場發(fā)展趨勢預(yù)測報告-智研咨詢重磅發(fā)布
- 多模GNSS精密單點定位選星方法研究
- 線粒體乳酸攝取氧化復(fù)合物促進(jìn)失巢乳腺癌干細(xì)胞特性和轉(zhuǎn)移潛能
- 二零二五年度個人擔(dān)保合同電子化簽訂與存證服務(wù)
- 第01講 直線的方程(九大題型)(練習(xí))
- 《基礎(chǔ)會計》教學(xué)課件-整套教程電子講義
- 微粒貸逾期還款協(xié)議書范本
- 人教版七年級上冊數(shù)學(xué)全冊課時練習(xí)帶答案
- NBT 47013.4-2015 承壓設(shè)備無損檢測 第4部分:磁粉檢測
- 2024年上海市中考數(shù)學(xué)真題試卷及答案解析
- 2024年全國卷1高考理綜試題及答案
- 工程防滲漏培訓(xùn)課件
- 牛津3000核心詞匯表注釋加音標(biāo)1-4 完整版
- 高中英語以讀促寫教學(xué)策略與實踐研究課件
- (完整版)金融市場基礎(chǔ)知識知識點歸納-圖文
評論
0/150
提交評論