版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
教案授課教師部門課程名稱MySQL數(shù)據(jù)庫管理與應(yīng)用課次3,4,5,6,7單元標題單元2數(shù)據(jù)庫基本原理授課學時10學時授課班級授課時間上課地點合作教師日期節(jié)次教學目標知識目標1.掌握數(shù)據(jù)模型的概念、組成和類型。2.掌握實體-聯(lián)系模型的基本概念。3.掌握E-R圖的組成及畫法。4.掌握關(guān)系模型的組成要素和主要特點。5.了解數(shù)據(jù)庫的三級模式結(jié)構(gòu)和二級映像。6.理解關(guān)系代數(shù)中的選擇、投影和連接運算。7.初步了解關(guān)系數(shù)據(jù)庫標準語言SQL。8.了解數(shù)據(jù)規(guī)范化的基本概念,范式理論。9.掌握數(shù)據(jù)庫設(shè)計的方法與步驟。能力目標1.會畫E-R圖。2.會用范式規(guī)范數(shù)據(jù)。3.能夠設(shè)計具體的數(shù)據(jù)庫。素質(zhì)目標1.引導學生了解國產(chǎn)數(shù)據(jù)庫管理系統(tǒng)發(fā)展的現(xiàn)狀,增強文化自信,培養(yǎng)創(chuàng)新思維。2.培養(yǎng)學生自主學習能力和自我提高能力。3.通過以小組為單位學習,培養(yǎng)學生的人際溝通能力和團隊協(xié)作意識。教學重點1.數(shù)據(jù)模型的概念、組成和類型。2.實體-聯(lián)系模型的概念及E-R圖的畫法。3.關(guān)系模型的概念4.關(guān)系代數(shù)、關(guān)系代數(shù)中的各種運算。5.關(guān)系數(shù)據(jù)庫標準語言SQL。6.數(shù)據(jù)規(guī)范化的概念,范式理論。7.數(shù)據(jù)庫設(shè)計的方法與步驟。繪制局部E-R圖,并集成全局E-R圖。E-R圖到關(guān)系模式的轉(zhuǎn)換方法。教學難點1.數(shù)據(jù)模型的概念。2.關(guān)系模型的概念、運算。3.數(shù)據(jù)規(guī)范化的概念,范式理論。教學方法線上自學,課堂理實一體化教學、項目式教學,第二課堂拓展學習等。教學資源教材數(shù)字資源教材配套微課、PPT、數(shù)據(jù)庫建庫建表腳本、習題解答等;智慧職教平臺:學習通平臺:其他:教學環(huán)境配備有電腦、電子教室或投影儀、有線或無線網(wǎng)絡(luò)環(huán)境、黑板或白板等教學工具的計算機房或多媒體教室。MySQL、MySQLWorkbench或NavicatforMySQL等軟件。教學過程第3次課(任務(wù)1理解數(shù)據(jù)模型)教學環(huán)節(jié)教學活動主要內(nèi)容學生活動說明課前預習學生通過在線課程平臺預習本單元內(nèi)容。課中講練一、導入新課演示學生成績管理系統(tǒng)的查詢功能,讓學生對數(shù)據(jù)庫有一個感性認識。學習數(shù)據(jù)庫原理的好處?數(shù)據(jù)在計算機中如何組織起來?為什么要建模型?模型是人們對現(xiàn)實世界中的事物和過程的描述及抽象表達。二、新課講解任務(wù)1理解數(shù)據(jù)模型教師結(jié)合PPT講解,本次課以課堂講授為主。2.1.1數(shù)據(jù)模型1.數(shù)據(jù)模型的概念數(shù)據(jù)庫中的數(shù)據(jù)模型是現(xiàn)實世界數(shù)據(jù)特征的抽象和歸納,也就是說,數(shù)據(jù)模型是用來描述數(shù)據(jù)、組織數(shù)據(jù)和對數(shù)據(jù)進行操作的。構(gòu)成數(shù)據(jù)模型的三要素為數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)的完整性約束。(1)數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)結(jié)構(gòu)是對數(shù)據(jù)靜態(tài)特征的描述。在數(shù)據(jù)庫系統(tǒng)中,通常按數(shù)據(jù)結(jié)構(gòu)的類型來命名數(shù)據(jù)模型,如關(guān)系結(jié)構(gòu)的數(shù)據(jù)模型是關(guān)系模型。(2)數(shù)據(jù)操作。數(shù)據(jù)操作是指對數(shù)據(jù)動態(tài)特征的描述,包括對數(shù)據(jù)進行的操作及相關(guān)操作規(guī)則。(3)數(shù)據(jù)的完整性約束。數(shù)據(jù)的完整性約束是對數(shù)據(jù)靜態(tài)和動態(tài)特征的限定,用來描述數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系應(yīng)該具有的制約和依存規(guī)則,以保證數(shù)據(jù)正確、有效和相容。2.數(shù)據(jù)模型的類型數(shù)據(jù)模型一般應(yīng)滿足3個條件:數(shù)據(jù)模型要能夠真實地描述現(xiàn)實世界;數(shù)據(jù)模型要容易理解;數(shù)據(jù)模型要能夠方便地在計算機上實現(xiàn)。根據(jù)數(shù)據(jù)模型應(yīng)用目的的不同,可以將數(shù)據(jù)模型分為兩類:一類是概念數(shù)據(jù)模型(簡稱概念模型),另一類是邏輯數(shù)據(jù)模型(簡稱邏輯模型)和物理數(shù)據(jù)模型(簡稱物理模型)。概念模型也稱信息模型,它是面向用戶的,用于按照用戶的觀點來對數(shù)據(jù)和信息建模,主要用于數(shù)據(jù)庫設(shè)計,與具體的數(shù)據(jù)庫管理系統(tǒng)無關(guān)。邏輯模型和物理模型是面向計算機系統(tǒng)的。邏輯模型是概念模型的數(shù)據(jù)化,用于按照計算機系統(tǒng)的觀點對數(shù)據(jù)建模,是現(xiàn)實世界的計算機模擬,與使用的數(shù)據(jù)管理系統(tǒng)的種類有關(guān),主要用于數(shù)據(jù)庫管理系統(tǒng)的實現(xiàn)。物理模型是對數(shù)據(jù)最底層的抽象,它用于描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法,或在磁盤或磁帶上的存儲方式和存取方法。物理模型的具體實現(xiàn)是數(shù)據(jù)庫管理系統(tǒng)的任務(wù)。數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎(chǔ)?,F(xiàn)實世界轉(zhuǎn)化為計算機世界的過程如圖2-1所示。2.1.3邏輯模型數(shù)據(jù)庫領(lǐng)域中主要的邏輯模型包括層次模型、網(wǎng)狀模型、關(guān)系模型、面向?qū)ο髷?shù)據(jù)模型、對象關(guān)系數(shù)據(jù)模型、半結(jié)構(gòu)化數(shù)據(jù)模型等。表2-1對4種常用的邏輯模型做了簡單的比較,本小節(jié)主要介紹關(guān)系模型。關(guān)系模型是目前應(yīng)用最廣的一種數(shù)據(jù)模型,也是理論研究最完備的一種數(shù)據(jù)模型。1.關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)是關(guān)系。①關(guān)系(Relation)②元組(Tuple)③屬性(Attribute)表2-2學生情況表(部分顯示)④域(Domain)。⑤候選鍵(CandidateKey)⑥主鍵(PrimaryKey,PK)⑦外鍵或外部關(guān)鍵字(ForeignKey,F(xiàn)K)⑧關(guān)系模式(RelationSchema)例如,學生、課程、選課之間的聯(lián)系在關(guān)系模型中可以表示為如下形式。學生(學號,姓名,專業(yè)名,性別,出生時間,總學分,備注)主鍵:學號課程(課程號,課程名,開課學期,學時,學分)主鍵:課程號成績(學號,課程號,成績)主鍵:學號、課程號外鍵:學號、課程號⑨元數(shù)(Arity)⑩分量(Component)2.關(guān)系模型的數(shù)據(jù)操作關(guān)系模型給出了關(guān)系操作的能力,關(guān)系操作的對象和結(jié)果都是集合,主要包括以下兩方面。①查詢操作:選擇(SELECT)、投影(PROJECT)、連接(JOIN)、除(DIVIDE)、并(UNION)、交(INTERSECTION)和差(DIFFERENCE)。②更新操作:插入(INSERT)、刪除(DELETE)和修改(UPDATE)。3.關(guān)系模型的完整性約束(1)實體完整性。實體完整性是指關(guān)系的關(guān)鍵字的所有屬性都不能為空。它可確保關(guān)系中的每個元組都是可識別的、唯一的。(2)參照完整性。參照完整性也稱引用完整性,是指兩個表的主鍵和外鍵的數(shù)據(jù)對應(yīng)一致。它可確保有主鍵的表中有對應(yīng)其他表的外鍵的行存在。例如,學生、課程、學生與課程之間的多對多聯(lián)系可以用如下3個關(guān)系表示。學生(學號,姓名,專業(yè)名,性別,出生時間,總學分,備注)課程(課程號,課程名,開課學期,學時,學分)選修(學號,課程號,成績)(3)用戶定義的完整性。用戶定義的完整性也稱域完整性或語義完整性。它是指不同的關(guān)系數(shù)據(jù)庫系統(tǒng)根據(jù)應(yīng)用環(huán)境的不同,設(shè)定的一些特殊約束條件。4.關(guān)系模型的主要特點關(guān)系模型的主要特點如下。①關(guān)系中的每一個數(shù)據(jù)項不可再分,是最基本的單位。②每一列數(shù)據(jù)項是同屬性的。列數(shù)根據(jù)需要而定,且各列的順序是任意的。③每一行記錄由一個事物的諸多屬性構(gòu)成。記錄的順序可以是任意的。④一個關(guān)系可看作一張二維表,不允許有相同的字段名,也不允許有相同的記錄行。課堂小結(jié):教師總結(jié)本次課學習的主要內(nèi)容。學生可以打開瀏覽樣本數(shù)據(jù)庫sakila或課后拓展提升熟悉某種國產(chǎn)數(shù)據(jù)庫(如達夢數(shù)據(jù)庫)的用法。課后作業(yè)教材習題2教學總結(jié)第4次課(任務(wù)1理解數(shù)據(jù)模型、任務(wù)2了解數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu))教學環(huán)節(jié)教學活動主要內(nèi)容說明課前預習學生通過在線課程平臺預習本單元內(nèi)容。課中講練一、復習鞏固教師依據(jù)上節(jié)課布置的作業(yè)完成情況,對學生吸收不好的知識點進行再次鞏固講解。二、導入新課數(shù)據(jù)在計算機中如何組織起來?三、新課講解任務(wù)1理解數(shù)據(jù)模型教師結(jié)合PPT講解。2.1.2概念模型1.信息世界的基本概念概念模型用于信息世界的建模,反映現(xiàn)實世界中的信息及其關(guān)系,能滿足用戶對數(shù)據(jù)的處理要求,是現(xiàn)實世界到信息世界的第一層抽象。概念模型也是用戶和數(shù)據(jù)庫設(shè)計人員之間進行交流的工具,數(shù)據(jù)庫設(shè)計人員在設(shè)計初期應(yīng)把主要精力放在概念模型的設(shè)計上。信息世界中常用的概念如下所述。(1)實體(Entity)。(2)屬性(Attribute)。(3)聯(lián)系(Relationship)。(4)關(guān)鍵字(Key)。(5)實體型(EntityType)。如學生(學號,姓名,專業(yè),性別,出生時間,總學分,備注)就是一個實體型,它表示學生信息,不是指某一個具體的學生。(6)實體集(EntitySet)。(7)實體間的聯(lián)系的類型。實體間的聯(lián)系可以分為如下3類。①一對一聯(lián)系(1∶1)。②一對多聯(lián)系(1∶n)。③多對多聯(lián)系(m∶n)。2.概念模型的表示方法在概念模型的眾多表示方法中,最常用的一種是實體-聯(lián)系(E-R)方法,也稱E-R模型。該方法用E-R圖來描述現(xiàn)實世界的概念模型,可以直觀地表示現(xiàn)實世界中各類對象的特征和對象之間的聯(lián)系?!纠}2.1】在學生選課的概念模型中,學生實體具有學號、姓名、專業(yè)名、性別、出生時間、總學分、備注等屬性,用E-R圖表示如圖2-3所示?!纠}2.2】用E-R圖表示學生選課的概念模型。任務(wù)2了解數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)教師結(jié)合PPT講解。數(shù)據(jù)庫系統(tǒng)的邏輯結(jié)構(gòu)可以分為用戶級、邏輯級和物理級3個層次,反映觀察數(shù)據(jù)庫的3種角度。從數(shù)據(jù)庫最終用戶的角度看,數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)分為單用戶結(jié)構(gòu)、主從式結(jié)構(gòu)、分布式結(jié)構(gòu)、客戶端/服務(wù)器結(jié)構(gòu)、瀏覽器/應(yīng)用服務(wù)器/數(shù)據(jù)庫服務(wù)器多層結(jié)構(gòu)等,這是數(shù)據(jù)庫系統(tǒng)外部的體系結(jié)構(gòu)。從數(shù)據(jù)庫應(yīng)用開發(fā)人員的角度看,數(shù)據(jù)庫系統(tǒng)在體系結(jié)構(gòu)上通常都具有相同的外模式、模式和內(nèi)模式三級模式結(jié)構(gòu)的特征,各級模式之間通過映射關(guān)系進行聯(lián)系和轉(zhuǎn)換,如圖2-5所示。這是數(shù)據(jù)庫系統(tǒng)內(nèi)部的體系結(jié)構(gòu)。圖2-5數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)2.2.1了解數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)1.模式在數(shù)據(jù)模型中有“型”(Type)和“值”(Value)的概念。型是指某一類數(shù)據(jù)的結(jié)構(gòu)和屬性的說明,值是型的一個具體值。模式(Schema)也稱邏輯模式或概念模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,它僅僅涉及型的描述,不涉及具體的值。模式的一個具體值稱為模式的一個實例(Instance)。同一個模式可以有很多實例。2.外模式外模式也稱子模式或用戶模式,它是數(shù)據(jù)庫用戶(包括應(yīng)用程序開發(fā)人員和用戶)能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應(yīng)用程序有關(guān)的數(shù)據(jù)的邏輯表示,屬于視圖層抽象。外模式通常是模式的子集。一個數(shù)據(jù)庫可以有多個外模式。3.內(nèi)模式內(nèi)模式也稱存儲模式,是數(shù)據(jù)在數(shù)據(jù)庫中的內(nèi)部表示,是數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述,屬于物理層抽象,例如數(shù)據(jù)是否壓縮存儲、是否加密,數(shù)據(jù)的存儲記錄結(jié)構(gòu)有何規(guī)定等。內(nèi)模式是數(shù)據(jù)庫管理系統(tǒng)管理的最底層。2.2.2了解數(shù)據(jù)庫系統(tǒng)的兩級映像數(shù)據(jù)庫系統(tǒng)的三級模式是對數(shù)據(jù)進行抽象的3個級別,為了能夠在內(nèi)部實現(xiàn)這3個抽象層次的聯(lián)系和轉(zhuǎn)換,數(shù)據(jù)庫管理系統(tǒng)在這3級模式之間提供了兩級映像:外模式/模式映像、模式/內(nèi)模式映像。這兩級映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)具有較強的邏輯獨立性和物理獨立性。(1)外模式/模式映像。模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu),外模式描述的是數(shù)據(jù)的局部邏輯結(jié)構(gòu)。同一個模式可以有多個外模式。對于每一個外模式,數(shù)據(jù)庫系統(tǒng)都提供了一個外模式/模式映像,它定義了外模式與模式之間的對應(yīng)關(guān)系。映像定義通常包含在各自外模式的描述中。(2)模式/內(nèi)模式映像。數(shù)據(jù)庫中只有一個模式,也只有一個內(nèi)模式,所以模式/內(nèi)模式映像是唯一的,它用于定義數(shù)據(jù)全局邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)之間的對應(yīng)關(guān)系。數(shù)據(jù)庫的三級模式和兩級映像保證了數(shù)據(jù)與應(yīng)用程序之間的獨立性,使得數(shù)據(jù)的定義和描述可以從應(yīng)用程序中分離出去。另外,由于數(shù)據(jù)的存取由數(shù)據(jù)庫管理系統(tǒng)管理,用戶不必考慮存取路徑等細節(jié),從而簡化了應(yīng)用程序的開發(fā),大大減少了應(yīng)用程序的維護和修改成本。課堂小結(jié):教師總結(jié)本次課學習的主要內(nèi)容。課后拓展提升熟悉某種國產(chǎn)數(shù)據(jù)庫(如達夢數(shù)據(jù)庫)的用法。課后作業(yè)教材習題2教學總結(jié)第3次課(任務(wù)5了解關(guān)系數(shù)據(jù)庫)教學環(huán)節(jié)教學活動主要內(nèi)容學生活動說明課前預習學生通過在線課程平臺預習本單元內(nèi)容。課中講練一、復習鞏固教師依據(jù)上節(jié)課布置的作業(yè)完成情況,對學生吸收不好的知識點進行再次鞏固講解。二、導入新課關(guān)系數(shù)據(jù)庫是現(xiàn)代流行的數(shù)據(jù)管理系統(tǒng)中應(yīng)用最普遍、最有效率的數(shù)據(jù)組織方式之一。教師提問學生:目前常用的關(guān)系數(shù)據(jù)庫有哪些?Oracle、MySQL、DB2、SQLServer、Access等數(shù)據(jù)庫管理系統(tǒng)都是關(guān)系數(shù)據(jù)庫管理系統(tǒng)。三、新課講解任務(wù)3了解關(guān)系數(shù)據(jù)庫教師結(jié)合PPT講解。關(guān)系數(shù)據(jù)庫也有型和值之分。關(guān)系數(shù)據(jù)庫的型也稱為關(guān)系數(shù)據(jù)庫模式,是對關(guān)系數(shù)據(jù)庫的描述。關(guān)系數(shù)據(jù)庫模式包括若干域的定義和在這些域上定義的若干關(guān)系模式。關(guān)系數(shù)據(jù)庫的值是這些關(guān)系模式在某一時刻對應(yīng)的關(guān)系的集合,通常稱為關(guān)系數(shù)據(jù)庫。關(guān)系數(shù)據(jù)庫是建立在關(guān)系模型基礎(chǔ)上的數(shù)據(jù)庫,是若干個依照關(guān)系模型設(shè)計的數(shù)據(jù)表文件的集合。關(guān)系(二維表)有3種類型:基本關(guān)系(通常稱為基本表或基表)、查詢表和視圖表。關(guān)系數(shù)據(jù)庫提供SQL,SQL是在關(guān)系數(shù)據(jù)庫中定義和操作數(shù)據(jù)的標準語言。關(guān)系數(shù)據(jù)庫的優(yōu)點十分突出,其結(jié)構(gòu)簡單,格式唯一,理論基礎(chǔ)嚴格,數(shù)據(jù)表之間相對獨立,同時可以在不影響其他數(shù)據(jù)表的情況下進行數(shù)據(jù)的增加、修改和刪除。在進行查詢時,還可以根據(jù)數(shù)據(jù)表之間的關(guān)聯(lián)性,從多個數(shù)據(jù)表中查詢及抽取相關(guān)的數(shù)據(jù)。2.3.1關(guān)系代數(shù)在計算機上存儲數(shù)據(jù)的目的是使用數(shù)據(jù),選擇好數(shù)據(jù)的組織形式后,就要確定如何使用這些數(shù)據(jù)。關(guān)系代數(shù)是一種抽象的查詢語言,它用關(guān)系的運算來表達查詢。關(guān)系代數(shù)的運算對象是關(guān)系,運算結(jié)果亦為關(guān)系,它主要運用高等數(shù)學中關(guān)系代數(shù)的集合的相關(guān)理論。關(guān)系代數(shù)的運算按運算符的不同可分為傳統(tǒng)的集合運算和專門的關(guān)系運算兩類。①傳統(tǒng)的集合運算將關(guān)系看成元組的集合,其運算是從關(guān)系的行的角度進行的。它包括并、差、交、笛卡兒積4種運算。②專門的關(guān)系運算包括選擇、投影、連接和除等,它不僅涉及行而且涉及列,常用比較運算符和邏輯運算符來輔助專門的關(guān)系運算符進行操作。關(guān)系代數(shù)中常用的運算如下。集合運算:關(guān)系運算:比較運算:邏輯運算:下面僅對部分運算做簡要介紹。1.投影運算投影運算是對關(guān)系中的列(屬性)進行的運算。它按給定的條件選取關(guān)系中的部分或全部列,將其重新排列后組成一個新的關(guān)系。投影運算屬于單目運算。【例題2.3】將表2-2“學生情況表”記作關(guān)系R,它是一個7度關(guān)系,查詢所有學生的姓名、專業(yè)名、總學分,將查詢結(jié)果組成新表“學生專業(yè)情況表”,如表2-3所示。2.選擇運算選擇運算是對關(guān)系中的行進行的運算,是從指定的關(guān)系中,選取滿足條件的部分或全部行,組成一個新的關(guān)系。選擇運算屬于單目運算,選擇的結(jié)果是原關(guān)系的一個子集,且關(guān)系的模型不變?!纠}2.4】在表2-2所示的“學生情況表”中,查詢網(wǎng)絡(luò)技術(shù)專業(yè)的學生,查詢得到的關(guān)系如表2-4所示。3.連接運算連接運算是按照給定的條件,把兩個關(guān)系中的一切可能的組合方式拼接起來,形成一個新的關(guān)系,就是對兩個關(guān)系進行笛卡兒積的選擇運算。連接運算是雙目運算。連接運算中有兩種很重要也很常用的連接:等值連接和自然連接。(1)等值連接?!纠}2.5】將學生關(guān)系和選課關(guān)系進行連接,能得到學生及其選課的情況,如表2-5(關(guān)系R)和表2-6(關(guān)系S)。查詢關(guān)系R和S中姓名屬性值相等的元組。(2)自然連接。【例題2.6】例題2.5中關(guān)系R和S的自然連接結(jié)果如表2-8所示。2.3.2關(guān)系數(shù)據(jù)庫標準語言SQLSQL是關(guān)系數(shù)據(jù)庫的標準語言。1.SQL的主要特點SQL具有數(shù)據(jù)查詢(DataQuery)、數(shù)據(jù)操縱(DataManipulation)、數(shù)據(jù)定義(DataDefinition)和數(shù)據(jù)控制(DataControl)功能,其主要特點如下。①綜合統(tǒng)一。②SQL是非過程化的語言。③SQL采用面向集合的操作方式。④以同一種語法結(jié)構(gòu)提供多種使用方式。S⑤語言簡潔,易學易用。此外,SQL支持數(shù)據(jù)庫管理系統(tǒng)的三級模式結(jié)構(gòu),模式對應(yīng)基本表,外模式對應(yīng)視圖或部分基本表,內(nèi)模式對應(yīng)存儲文件。2.SQL的組成SQL由以下幾部分組成。(1)DDL。(2)DML。(3)DCL。以上SQL語句的具體用法將會在后面逐一講解。課堂小結(jié):教師總結(jié)本次課學習的主要內(nèi)容。學生分小組練習,教師巡視指導。課后拓展提升熟悉某種國產(chǎn)數(shù)據(jù)庫(如達夢數(shù)據(jù)庫)的用法。課后作業(yè)教材習題2實驗2設(shè)計人力資源管理數(shù)據(jù)庫教學總結(jié)第6次課(任務(wù)4實現(xiàn)關(guān)系的規(guī)范化)教學環(huán)節(jié)教學活動主要內(nèi)容說明課前預習學生通過在線課程平臺預習本單元內(nèi)容。課中講練一、復習鞏固教師依據(jù)上節(jié)課布置的作業(yè)完成情況,對學生吸收不好的知識點進行再次鞏固講解。二、導入新課教師提問:如何合理地設(shè)計數(shù)據(jù)庫以確保數(shù)據(jù)的準確與可靠?在創(chuàng)建一個具體的關(guān)系數(shù)據(jù)庫時,需要確定構(gòu)造幾個關(guān)系模式,每個關(guān)系模式由哪些屬性組成。由于思考的角度不同,不同的人設(shè)計同一個數(shù)據(jù)庫時,標識的實體和實體的屬性可能不一樣。要找到一個最優(yōu)的方案,則需要使用一些規(guī)則對數(shù)據(jù)庫的設(shè)計進行規(guī)范。一個好的模式應(yīng)當不會發(fā)生插入異常、刪除異常和更新異常,數(shù)據(jù)冗余應(yīng)盡可能少。關(guān)系模型的規(guī)范化理論是研究如何將一個不好的關(guān)系模型轉(zhuǎn)化為一個比較好的關(guān)系模型的理論。三、新課講解任務(wù)4實現(xiàn)關(guān)系的規(guī)范化教師結(jié)合PPT講解。規(guī)范化理論認為,關(guān)系數(shù)據(jù)庫中的每一個關(guān)系都要滿足一定的規(guī)范。規(guī)范化的關(guān)系簡稱范式(NormalForm,NF)。根據(jù)滿足規(guī)范的條件不同,可以分為第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、BC范式(BCNF)、第四范式(4NF)和第五范式(5NF)。各種范式之間的關(guān)系為1NF?2NF?3NF?BCNF?4NF?5NF。其中,1NF滿足規(guī)范的條件最低,5NF滿足規(guī)范的條件最高。一個低一級范式的關(guān)系模式通過模式分解可以轉(zhuǎn)換為若干個高一級范式的關(guān)系模式的集合,這個過程就叫規(guī)范化(Normalization)。通常情況下,能夠達到3NF或BCNF,就能減少數(shù)據(jù)冗余,消除插入異常、刪除異常和更新異常,從而基本滿足規(guī)范化的要求。下面簡要介紹關(guān)系數(shù)據(jù)庫的幾種常用范式。2.4.1第一范式(1NF)在關(guān)系數(shù)據(jù)庫中,對關(guān)系模式的基本要求是滿足第一范式,這樣的關(guān)系模式就是合法的、允許的。第一范式是指數(shù)據(jù)表的每一列都是不可分割的基本數(shù)據(jù)項,同一列中不能有多個值,即實體中的某個屬性不能有多個值或者不能有重復的屬性。例如,將學號、姓名、聯(lián)系電話組成一張表,但一個學生可能有一個移動電話和一個家庭電話,所以這張表就不是關(guān)系。將其規(guī)范成第一范式有以下3種方法。①重復存儲學號和姓名,關(guān)鍵字是聯(lián)系電話。②學號為關(guān)鍵字,聯(lián)系電話分為移動電話和家庭電話。③學號為關(guān)鍵字,但每條記錄只能有一個聯(lián)系電話,要么是移動電話,要么是家庭電話。以上3種方法中,第一種方法最不可取,按實際情況選取后兩種方法。這種將非關(guān)系的二維表轉(zhuǎn)化為關(guān)系,就是關(guān)系規(guī)范化的過程。通過規(guī)范化可以使從數(shù)據(jù)庫中得到的結(jié)果更加準確。2.4.2第二范式(2NF)第二范式是在第一范式的基礎(chǔ)上建立起來的,即滿足第二范式必須先滿足第一范式。有些滿足第一范式的關(guān)系模式存在插入異常、刪除異常、修改復雜、數(shù)據(jù)冗余等問題。例如,在分析學生基本信息時,得到表2-12所示的表。表2-12用于保存學生基本信息,其中包括學生學號、姓名及課程成績等信息,如果要刪除其中的一個學生,就必須同時刪除一個相應(yīng)的成績,規(guī)范化就是要解決這個問題??梢詫⑦@個表轉(zhuǎn)化為兩個表,一個用于存儲每個學生的基本信息,另一個用于存儲每個學生的成績信息,這樣對其中一個表進行添加或刪除操作都不會影響另一個表。分解后的關(guān)系如表2-13和表2-14所示。第二范式要求數(shù)據(jù)表中的每個實例或行必須可以被唯一地區(qū)分。為實現(xiàn)區(qū)分通常需要為表加上一個列,以存儲各個實例的唯一標識。例如表2-12學生基本信息表中添加了學號列,因為每個學生的學號是唯一的,因此每個學生可以被唯一區(qū)分。這個唯一列被稱為主鍵。第二范式要求實體的屬性完全依賴主鍵。完全依賴是指不能存在僅依賴主鍵一部分的屬性。如果存在,那么這個屬性和主鍵這一部分應(yīng)該被分離出來形成一個新的實體,新實體與原實體之間具有一對多關(guān)系?!纠}2.7】在選課關(guān)系表SelectCourse(學號,姓名,出生時間,課程名稱,成績,學分)中,關(guān)鍵字為復合關(guān)鍵字(學號,課程名稱),因為存在如下決定關(guān)系:(學號,課程名稱)→(姓名,出生時間,成績,學分)。這個數(shù)據(jù)表不滿足第二范式,因為存在如下決定關(guān)系:(課程名稱)→(學分);(學號)→(姓名,出生時間)。即存在復合關(guān)鍵字中的字段決定非關(guān)鍵字的情況。由于不符合第二范式,這個選課關(guān)系表會存在如下問題。(1)數(shù)據(jù)冗余。(2)更新異常。(3)插入異常。(4)刪除異常。假設(shè)把選課關(guān)系表SelectCourse改為如下3個表。學生:xs(學號,姓名,出生時間)。課程:kc(課程名稱,學分)。成績:cj(學號,課程名稱,成績)。這樣的數(shù)據(jù)表是符合第二范式的,它已消除了數(shù)據(jù)冗余、更新異常、插入異常和刪除異常。另外,所有單關(guān)鍵字的數(shù)據(jù)表都符合第二范式,因為其中不可能存在復合關(guān)鍵字。2.4.3第三范式(3NF)在第二范式的基礎(chǔ)上,第三范式要求一個數(shù)據(jù)表中不包含已在其他表中包含的非主鍵信息。例如,存在一個班級信息表,其中每個班級都有班級編號、班級名、班級簡介等信息。那么在學生信息表中列出班級編號后就不能再將班級名、班級簡介等與班級有關(guān)的信息加入學生信息表中。如果不存在班級信息表,則根據(jù)第三范式創(chuàng)建它,否則就會有大量的數(shù)據(jù)冗余。假定學生關(guān)系表為Student(學號,姓名,出生時間,所在學院,學院地點,學院電話),關(guān)鍵字為單一關(guān)鍵字“學號”,因為存在如下決定關(guān)系:(學號)→(姓名,出生時間,所在學院,學院地點,學院電話)。這個數(shù)據(jù)庫是符合第二范式的,但是不符合第三范式,因為存在如下決定關(guān)系:(學號)→(所在學院)→(學院地點,學院電話)。顯然它也存在數(shù)據(jù)冗余、更新異常、插入異常和刪除異常的問題。如果把學生關(guān)系表分為如下兩個表。學生:(學號,姓名,出生時間,所在學院)。學院:(學院,地點,電話)。則這樣的數(shù)據(jù)表是符合第三范式的,它已消除了數(shù)據(jù)冗余、更新異常、插入異常和刪除異常。2.4.4BC范式(BCNF)鮑依斯—科得范式(BoyceCoddNormalForm,BCNF)是由鮑依斯(Boyce)和科德(Codd)提出的,比3NF又進了一步,通常認為是修正的第三范式。BC范式是指在第三范式的基礎(chǔ)上,數(shù)據(jù)表中如果不存在任何字段對任一候選關(guān)鍵字段的傳遞函數(shù)依賴。【例題2.8】假設(shè)學生基本信息管理關(guān)系表為StudentManage(學生ID,班級ID,班主任ID,學生姓名,班級名),且存在一名學生在一個班級里,一個班里有一名班主任的關(guān)系。這個數(shù)據(jù)表中存在如下決定關(guān)系:(學生ID,班級ID)→(學生姓名,班級名,班主任ID);(班主任ID,學生ID)→(班級名,班級ID)。所以,(學生ID,班級ID)和(班主任ID,學生ID)都是StudentManage表的候選關(guān)鍵字,表中非候選關(guān)鍵字不存在傳遞函數(shù)依賴,它是符合第三范式的。但是,由于存在如下決定關(guān)系:(學生ID)→(班級ID,班主任ID);(班主任ID,班級ID)→(學生ID)。即存在關(guān)鍵字段決定關(guān)鍵字段的情況,所以它不符合BC范式。它會出現(xiàn)如下異常情況。(1)刪除異常。(2)插入異常。(3)更新異常。假設(shè)把學生基本信息管理關(guān)系表分解為兩個關(guān)系表。學生信息管理:StudentManage(學生ID,學生姓名,班級ID)。班級信息管理:Class(班級ID,班級名,班主任ID)。這樣的數(shù)據(jù)表是符合BC范式的,它已消除了刪除異常、插入異常和更新異常。關(guān)系模式規(guī)范化目的是使結(jié)構(gòu)更合理,消除插入異常、刪除異常和更新異常,使數(shù)據(jù)冗余盡量少,便于插入、刪除和更新數(shù)據(jù)。關(guān)系模式規(guī)范化的基本思想是逐步消除數(shù)據(jù)依賴中不合適的部分,使模式中的各關(guān)系模式達到某種程度的“分離”,讓一個關(guān)系模式描述一個實體或?qū)嶓w間的一種聯(lián)系。關(guān)系模式規(guī)范化的方法是將關(guān)系模式投影分解為兩個或兩個以上的模式。如果一個關(guān)系模式中的每一個屬性都是不可再分的數(shù)據(jù)項,則稱它滿足第一范式。消除第一范式中非主屬性對碼的部分函數(shù)依賴,則得到第二范式。消除第二范式中非主屬性對碼的傳遞函數(shù)依賴,則得到第三范式。消除第三范式中主屬性對碼的部分函數(shù)依賴和傳遞函數(shù)依賴,則得到BC范式。消除BC范式中非平凡且非函數(shù)依賴的多值依賴,則得到第四范式。課堂小結(jié):教師總結(jié)本次課學習的主要內(nèi)容。學生小組練習,教師巡視指導。課后拓展提升熟悉某種國產(chǎn)數(shù)據(jù)庫(如達夢數(shù)據(jù)庫)的用法。課后作業(yè)教材習題2實驗2設(shè)計人力資源管理數(shù)據(jù)庫教學總結(jié)第7次課(任務(wù)5了解數(shù)據(jù)庫設(shè)計的過程)教學環(huán)節(jié)教學活動主要內(nèi)容學生活動說明課前預習學生通過在線課程平臺預習本單元內(nèi)容。課中講練一、復習鞏固教師依據(jù)上節(jié)課布置的作業(yè)完成情況,對學生吸收不好的知識點進行再次鞏固講解。二、導入新課在實際項目開發(fā)中,如果系統(tǒng)的數(shù)據(jù)存儲量較大,涉及的表較多,表與表之間的關(guān)系比較復雜,就必須先規(guī)范地設(shè)計數(shù)據(jù)庫,然后創(chuàng)建數(shù)據(jù)庫和表。三、新課講解任務(wù)5了解數(shù)據(jù)庫設(shè)計的過程教師結(jié)合PPT講解。數(shù)據(jù)庫設(shè)計是指對于一個給定的應(yīng)用環(huán)境,設(shè)計優(yōu)化的數(shù)據(jù)庫的邏輯模式和物理結(jié)構(gòu),并據(jù)此創(chuàng)建數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲和管理數(shù)據(jù),滿足用戶的應(yīng)用需求,包括信息管理需求和數(shù)據(jù)操作需求。數(shù)據(jù)庫設(shè)計的目標是為用戶提供一個高效、安全的數(shù)據(jù)庫,滿足用戶的使用需求。良好的數(shù)據(jù)庫設(shè)計表現(xiàn)為訪問效率高;減少數(shù)據(jù)冗余,節(jié)省存儲空間,便于進一步擴展;可以使應(yīng)用程序的開發(fā)變得更容易。數(shù)據(jù)庫設(shè)計一般分為以下6個階段(以學生成績管理數(shù)據(jù)庫的設(shè)計為例):1.數(shù)據(jù)庫的需求分析需求分析簡單地說就是分析用戶的要求。需求分析階段的主要任務(wù)是通過與用戶溝通,充分調(diào)查研究,搜集基礎(chǔ)數(shù)據(jù),逐步明確用戶對系統(tǒng)的需求,包括數(shù)據(jù)需求和業(yè)務(wù)處理需求,確定系統(tǒng)的功能,最終得到系統(tǒng)需求分析說明書。需求分析做得是否充分和準確,直接決定了創(chuàng)建數(shù)據(jù)庫的速度與質(zhì)量。需求分析做得不好,會導致整個數(shù)據(jù)庫設(shè)計返工重做。2.數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計將需求分析得到的用戶需求抽象為概念模型的過程就是概念結(jié)構(gòu)設(shè)計。它是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵。概念結(jié)構(gòu)設(shè)計的任務(wù)主要包括兩個方面:概念數(shù)據(jù)庫模式設(shè)計和事務(wù)設(shè)計。通常采用自頂向下、自底向上逐步求精的方法進行概念結(jié)構(gòu)設(shè)計,產(chǎn)生多層E-R圖。概念結(jié)構(gòu)設(shè)計大致分為3步進行:對數(shù)據(jù)進行抽象并設(shè)計局部E-R圖;將各局部E-R圖進行合并,形成初步E-R圖;消除不必要的冗余,形成基本的E-R圖。概念模型的作用是與用戶溝通,確認系統(tǒng)的信息和功能。3.數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計邏輯結(jié)構(gòu)設(shè)計的任務(wù)是將概念結(jié)構(gòu)設(shè)計階段設(shè)計好的概念模型轉(zhuǎn)換為與使用的數(shù)據(jù)庫管理系統(tǒng)支持的數(shù)據(jù)模型相符合的邏輯模型,并對其進行優(yōu)化,定義數(shù)據(jù)完整性、安全性,評估性能。在關(guān)系數(shù)據(jù)庫中,將E-R圖轉(zhuǎn)換為多張表,進行邏輯結(jié)構(gòu)設(shè)計,確認各表的主鍵和外鍵,并應(yīng)用數(shù)據(jù)庫設(shè)計的三大范式進行審核,對其進行優(yōu)化。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年校園擴建工程沉降監(jiān)測與基礎(chǔ)施工質(zhì)量驗收合同3篇
- 2024年度飯店食材供應(yīng)及廚房設(shè)備租賃合同
- 辦公環(huán)境下的兒童戶外活動管理
- 2024年帶庭院別墅長期租賃合同范本3篇
- 利用網(wǎng)絡(luò)平臺推動學校圖書館的建設(shè)與發(fā)展
- 以心理健康教育為導向的小學數(shù)學教學設(shè)計
- 商業(yè)學校操場運動場地裝飾設(shè)計與品牌形象塑造
- 醫(yī)療行業(yè)客戶服務(wù)標準與挑戰(zhàn)
- 2025中國鐵塔江西省分公司社會招聘51人高頻重點提升(共500題)附帶答案詳解
- 2025中國移動上海公司春季校園招聘高頻重點提升(共500題)附帶答案詳解
- 對承租方有利的商鋪租賃合同
- 投標突發(fā)事件應(yīng)急預案
- EPC項目土建設(shè)計的重難點分析及解決措施
- 醫(yī)院保安服務(wù)應(yīng)急預案
- 2024年廣東省揭陽市榕城區(qū)實驗小學小升初銜接問卷數(shù)學試卷
- 江西警察學院治安學專業(yè)主干課程教學大綱 文檔
- 浙江大學2011–2012學年冬季學期《高級數(shù)據(jù)結(jié)構(gòu)與算法分析》課程期末考試試卷
- MOOC 信號與系統(tǒng)-西北工業(yè)大學 中國大學慕課答案
- 手術(shù)保護性約束
- 砌磚工程實訓總結(jié)報告
- 低空經(jīng)濟研究報告-中國低空經(jīng)濟行業(yè)市場現(xiàn)狀調(diào)查及未來發(fā)展趨勢報告(2020-2023年)
評論
0/150
提交評論