MySQL數(shù)據(jù)庫技術(shù)教學(xué)課件單元1 數(shù)據(jù)模型的規(guī)劃與設(shè)計(jì)_第1頁
MySQL數(shù)據(jù)庫技術(shù)教學(xué)課件單元1 數(shù)據(jù)模型的規(guī)劃與設(shè)計(jì)_第2頁
MySQL數(shù)據(jù)庫技術(shù)教學(xué)課件單元1 數(shù)據(jù)模型的規(guī)劃與設(shè)計(jì)_第3頁
MySQL數(shù)據(jù)庫技術(shù)教學(xué)課件單元1 數(shù)據(jù)模型的規(guī)劃與設(shè)計(jì)_第4頁
MySQL數(shù)據(jù)庫技術(shù)教學(xué)課件單元1 數(shù)據(jù)模型的規(guī)劃與設(shè)計(jì)_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

單元一數(shù)據(jù)模型的規(guī)劃與設(shè)計(jì)項(xiàng)目知識(shí)要點(diǎn)與目標(biāo)項(xiàng)目知識(shí)要點(diǎn)知識(shí)能力目標(biāo)學(xué)時(shí)1.1任務(wù)1設(shè)計(jì)數(shù)據(jù)庫關(guān)系模型1.1.1數(shù)據(jù)模型1.1.2概念模型1.1.3E-R圖的設(shè)計(jì)1.1.4數(shù)據(jù)庫關(guān)系模型的建立1.2任務(wù)2數(shù)據(jù)庫設(shè)計(jì)規(guī)范化1.2.1關(guān)系型數(shù)據(jù)庫范式理論

1.2.2數(shù)據(jù)庫規(guī)范化實(shí)例1.2.3綜合實(shí)例PetStore數(shù)據(jù)庫的設(shè)計(jì)【情境】:數(shù)據(jù)庫分析、設(shè)計(jì)【職業(yè)崗位】:數(shù)據(jù)庫管理員、程序員【典型工作任務(wù)】:對(duì)數(shù)據(jù)庫進(jìn)行分析,建立E-R圖,關(guān)系模型【技能要求】:1、設(shè)計(jì)數(shù)據(jù)庫關(guān)系模型2、數(shù)據(jù)庫設(shè)計(jì)規(guī)范化【知識(shí)要求技能訓(xùn)練】:1、識(shí)記數(shù)據(jù)庫的相關(guān)知識(shí)2、數(shù)據(jù)庫設(shè)計(jì)的相關(guān)知識(shí)4項(xiàng)目實(shí)訓(xùn)一創(chuàng)建“員工管理系統(tǒng)”的數(shù)據(jù)模型2【學(xué)習(xí)情境】:Petstore數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)Petstore(寵物商店)是SUN公司推出展示Javaweb應(yīng)用開發(fā)技術(shù)的網(wǎng)上商城示范項(xiàng)目。功能需求分析:實(shí)現(xiàn)前臺(tái)用戶購物和后臺(tái)管理兩大部分功能。前臺(tái)購物為顧客服務(wù),客戶輸入用戶名、密碼等信息進(jìn)行注冊(cè),注冊(cè)成功后就可以進(jìn)行按產(chǎn)品的分類瀏覽網(wǎng)站,當(dāng)用戶看中某個(gè)寵物時(shí),可以加入用戶的購物車,當(dāng)購物選擇完畢時(shí),用戶可以對(duì)購物車中的物品進(jìn)行預(yù)訂,系統(tǒng)生成相應(yīng)的訂單。后臺(tái)商品管理為管理員所用,管理員可以對(duì)商品進(jìn)行分類,并為每個(gè)分類增加新商品以及對(duì)現(xiàn)有商品完成修改、刪除等操作。要進(jìn)行Petstore電子商務(wù)系統(tǒng)的開發(fā),需要運(yùn)用E-R圖等數(shù)據(jù)庫設(shè)計(jì)工具,合理規(guī)劃與設(shè)計(jì)Petstore數(shù)據(jù)庫。修建茅屋需要設(shè)計(jì)嗎?修建大廈需要設(shè)計(jì)嗎?結(jié)論:當(dāng)數(shù)據(jù)庫比較復(fù)雜時(shí)我們需要設(shè)計(jì)數(shù)據(jù)庫為什么需要設(shè)計(jì)數(shù)據(jù)庫

數(shù)據(jù)庫設(shè)計(jì)就是將數(shù)據(jù)庫中的數(shù)據(jù)對(duì)象以及這些數(shù)據(jù)對(duì)象之間關(guān)系進(jìn)行規(guī)劃和結(jié)構(gòu)化的過程任務(wù)一設(shè)計(jì)數(shù)據(jù)庫關(guān)系模型為什么需要設(shè)計(jì)數(shù)據(jù)庫良好的數(shù)據(jù)庫設(shè)計(jì)節(jié)省數(shù)據(jù)的存儲(chǔ)空間能夠保證數(shù)據(jù)的完整性方便進(jìn)行數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)糟糕的數(shù)據(jù)庫設(shè)計(jì):數(shù)據(jù)冗余、存儲(chǔ)空間浪費(fèi)內(nèi)存空間浪費(fèi)數(shù)據(jù)更新和插入的異常數(shù)據(jù)冗余編號(hào)姓名年齡民族部門部門位置1王濤33漢族人事管理部行政樓3012李梅27漢族人事管理部行政樓301存在冗余為減少數(shù)據(jù)查找的麻煩,允許數(shù)據(jù)有一定的冗余數(shù)據(jù)冗余:指數(shù)據(jù)重復(fù)的現(xiàn)象1127李梅21133王濤1部門編碼民族編碼年齡姓名編號(hào)回族2漢族1民族民族編碼市場(chǎng)營銷部2人事管理部1部門部門編碼行政樓402行政樓301部門位置數(shù)據(jù)完整性存在不正確、不準(zhǔn)確的數(shù)據(jù),數(shù)據(jù)庫“失去了完整性”編碼姓名地址銷售代碼11阿蘭海淀黃莊菜園子AC09112東方求敗海淀龍王廟鬼樓AC04315張無忌中關(guān)村大街3-201AC01113菜鳥特注海淀龍王廟樹林AC04114趙可海淀龍王廟樹林AC01215張無忌中關(guān)村大街2-101AC011姓名不同的地址!數(shù)據(jù)完整性:指數(shù)據(jù)的準(zhǔn)確性1.1設(shè)計(jì)數(shù)據(jù)庫關(guān)系模型概念模型:把現(xiàn)實(shí)世界轉(zhuǎn)換為信息世界的模型,E-R模型實(shí)施模型:把信息世界轉(zhuǎn)化為數(shù)據(jù)世界使用的模型,關(guān)系模型現(xiàn)實(shí)世界建模信息世界模型轉(zhuǎn)換規(guī)范化數(shù)據(jù)庫世界數(shù)據(jù)庫數(shù)據(jù)庫事物類事物性質(zhì)實(shí)體集實(shí)體屬性文件記錄數(shù)據(jù)項(xiàng)實(shí)體模型概念模型數(shù)據(jù)模型實(shí)體模型現(xiàn)實(shí)世界客觀存在的、可以被描述事物都是“實(shí)體”層次模型按層次模型組織的數(shù)據(jù)示例網(wǎng)狀模型按網(wǎng)狀模型組織的數(shù)據(jù)示例關(guān)系模型按關(guān)系模型組織的數(shù)據(jù)示例關(guān)系模型特點(diǎn)關(guān)系模型中基本數(shù)據(jù)結(jié)構(gòu)是二維數(shù)據(jù)表,且必須滿足相應(yīng)的要求:(1)表說明的是關(guān)系模型中某一特定的方面或部分的對(duì)象及其屬性(2)表中的行通常叫做記錄或元組,代表具有相同屬性的對(duì)象中的一個(gè)(3)表中的列通常叫做字段或?qū)傩?,代表存?chǔ)對(duì)象的共有的屬性(4)數(shù)據(jù)表之間的關(guān)聯(lián)通過“鍵”來實(shí)現(xiàn)的,鍵分為主鍵和外鍵兩種。(5)表必須符合某些特定條件①信息原則:每個(gè)單元只能存貯一條數(shù)據(jù);②列有唯一性的名稱,貯存在列下的數(shù)據(jù)必須具有相同數(shù)據(jù)類型;列沒有順序;;③每行數(shù)據(jù)是唯一的;行沒有順序;④實(shí)體完整性原則,即主鍵不能為空;⑤引用完整性原則,即外鍵不能為空;1.1.2概念模型建模步驟:收集信息:

與該系統(tǒng)有關(guān)人員進(jìn)行交流、坐談,充分理解數(shù)據(jù)庫需要完成的任務(wù)標(biāo)識(shí)對(duì)象(實(shí)體-Entity)標(biāo)識(shí)數(shù)據(jù)庫要管理的關(guān)鍵對(duì)象或?qū)嶓w標(biāo)識(shí)每個(gè)實(shí)體的屬性(Attribute)標(biāo)識(shí)對(duì)象之間的關(guān)系(Relationship)建模:把現(xiàn)實(shí)世界轉(zhuǎn)換為信息世界的模型,E-R模型建模實(shí)例:學(xué)生選課系統(tǒng)建模張三選修李四王五計(jì)算機(jī)基礎(chǔ)英語MySQL數(shù)據(jù)庫個(gè)體學(xué)號(hào)總學(xué)分專業(yè)名出生日期性別姓名共性學(xué)生實(shí)體抽象抽象實(shí)體共性課程課程號(hào)學(xué)分學(xué)時(shí)開課學(xué)期類別課程名關(guān)聯(lián)選課成績個(gè)體主碼(關(guān)鍵字)

主碼:也叫關(guān)鍵字,實(shí)體集中的屬性或最小屬性組合的值能唯一標(biāo)識(shí)其對(duì)應(yīng)實(shí)體,則將該屬性或?qū)傩越M合稱為碼。對(duì)于每一個(gè)實(shí)體集,可指定一個(gè)碼為主碼。學(xué)生和課程實(shí)體集屬性描述概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì)-E-R圖方法實(shí)體關(guān)系圖:簡(jiǎn)記E-R圖,是指以實(shí)體、關(guān)系、屬性三個(gè)基本概念概括數(shù)據(jù)的基本結(jié)構(gòu),從而描述靜態(tài)數(shù)據(jù)結(jié)構(gòu)的概念模式。實(shí)體型(Entity):具有相同的特征和性質(zhì)的集合體,用實(shí)體名及其屬性名來抽象和刻畫同類實(shí)體;在E-R圖中用矩形表示,矩形框內(nèi)寫明實(shí)體名;比如學(xué)生張三、學(xué)生李四都是實(shí)體屬性(Attribute):實(shí)體所具有的某一特性,一個(gè)實(shí)體可由若干個(gè)屬性來刻畫。在E-R圖中用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來;比如學(xué)生的姓名、學(xué)號(hào)、性別、都是屬性。聯(lián)系(Relationship):數(shù)據(jù)對(duì)象彼此之間相互連接的方式稱為聯(lián)系,也稱為關(guān)系。E-R模型E-R圖的組成要素及其畫法實(shí)體名聯(lián)系名屬性名實(shí)體表示屬性表示聯(lián)系表示繪制E-R圖映射基數(shù)一對(duì)一XXXXYYYYXXXXYYYY一對(duì)多XXXXY

YY多對(duì)一XXXXYYYY多對(duì)多客戶訂單產(chǎn)品

MN

1N一對(duì)一(1:1)聯(lián)系實(shí)體間不同聯(lián)系情況的E-R圖表示法一對(duì)一(1:1)聯(lián)系:1主任系管理1姓名年齡學(xué)歷編號(hào)系編號(hào)系名任職時(shí)間例:某學(xué)院有若干個(gè)系,每個(gè)系只有一個(gè)主任。則主任和系之間是一對(duì)一的關(guān)系。主任和系的屬性分別如下:

主任——編號(hào),姓名,年齡,學(xué)歷;

系——系編號(hào),系名主任和系之間是一個(gè)管理關(guān)系主任與系之間的一對(duì)一的聯(lián)系一對(duì)多(1:m)的聯(lián)系例:在某倉庫管理系統(tǒng)中,有兩個(gè)實(shí)體集:倉庫和商品。倉庫用來存放商品,且規(guī)定一類商品只能存放在一個(gè)倉庫中,一個(gè)倉庫可以存放多件商品。倉庫和商品的屬性分別如下:

倉庫——倉庫號(hào),地點(diǎn),面積

商品——商品號(hào),商品名,價(jià)格在存放聯(lián)系中要反映出存放商品的數(shù)量。1倉庫商品存放n地點(diǎn)面積倉庫號(hào)商品號(hào)價(jià)格數(shù)量商品名一對(duì)多(1:m)的聯(lián)系倉庫和商品之間一對(duì)多的聯(lián)系多對(duì)多(m:n)聯(lián)系:假設(shè)在某教務(wù)管理系統(tǒng)中,一個(gè)教師可以上多門課,一門課也可以由多個(gè)老師去上。教師和課程可用以下屬性來描述:

教師——教師號(hào),教師名,職稱

課程——課程號(hào),課程名,班級(jí)

在“講授”聯(lián)系中應(yīng)能反映出教師的授課質(zhì)量。m教師課程講授n教師名職稱教師號(hào)課程號(hào)班級(jí)質(zhì)量課程名多對(duì)多(m:n)聯(lián)系教師和課程之間的多對(duì)多聯(lián)系1.1.3E-R圖設(shè)計(jì)實(shí)例【例1.1】網(wǎng)絡(luò)圖書銷售系統(tǒng)處理會(huì)員圖書銷售。簡(jiǎn)化的業(yè)務(wù)處理過程為:網(wǎng)絡(luò)銷售的圖書信息包括:圖書編號(hào),圖書類別,書名,作者,出版社,出版時(shí)間,單價(jià),數(shù)量,折扣,封面圖片等;用戶需要購買圖書必須先注冊(cè)為會(huì)員,提供身份證號(hào),會(huì)員姓名,密碼,性別,聯(lián)系電話,注冊(cè)時(shí)間等信息;系統(tǒng)根據(jù)會(huì)員的購買訂單形成銷售信息,包括訂單號(hào),身份證號(hào),圖書編號(hào),訂購冊(cè)數(shù),訂購時(shí)間,是否發(fā)貨,是否收貨,是否結(jié)清。

請(qǐng)畫出網(wǎng)絡(luò)圖書銷售數(shù)據(jù)庫E-R圖?!纠?.1】E-R圖設(shè)計(jì)步驟1.確定實(shí)體集:網(wǎng)絡(luò)圖書銷售系統(tǒng)中有兩個(gè)實(shí)體集:圖書和會(huì)員2.確定實(shí)體集屬性及主碼:(1)實(shí)體集會(huì)員屬性有:身份證號(hào),會(huì)員姓名,性別,聯(lián)系電話,注冊(cè)時(shí)間,密碼。

會(huì)員實(shí)體集中可用身份證號(hào)來唯一標(biāo)識(shí)各會(huì)員,所以主碼為身份證號(hào)。(2)實(shí)體集圖書屬性有:圖書編號(hào),圖書類別,書名,作者,出版社,出版時(shí)間,單價(jià),數(shù)量,折扣,封面圖片。

圖書實(shí)體集中可用圖書編號(hào)來唯一標(biāo)識(shí)圖書,所以主碼為圖書編號(hào)。3.確定實(shí)體集之間的聯(lián)系:圖書銷售給會(huì)員時(shí)圖書與會(huì)員建立關(guān)聯(lián),聯(lián)系“銷售”的屬性有:訂購冊(cè)數(shù),訂購時(shí)間,是否發(fā)貨,是否收貨,是否結(jié)清。為了更方便標(biāo)識(shí)銷售記錄,可添加訂單號(hào)作為該聯(lián)系的主碼。4.確定聯(lián)系關(guān)系:

因?yàn)橐粋€(gè)會(huì)員可以購買多種圖書,一種圖書可銷售各多個(gè)會(huì)員,所以這是一種多對(duì)多(m:n)的聯(lián)系。

根據(jù)以上分析畫出的網(wǎng)絡(luò)圖書銷售數(shù)據(jù)庫E-R圖網(wǎng)絡(luò)圖書銷售數(shù)據(jù)庫E-R圖E-R圖設(shè)計(jì)步驟

對(duì)于復(fù)雜的系統(tǒng),E-R圖設(shè)計(jì)通常都應(yīng)經(jīng)過以下兩個(gè)階段:

(1)針對(duì)每一用戶畫出該用戶信息的局部E—R圖,確定該用戶視圖的實(shí)體、屬性和聯(lián)系。需注意的是:能作為屬性的就不要作為實(shí)體,這有利于E—R圖的簡(jiǎn)化。

(2)綜合局部E—R圖,生成總體E—R圖。在綜合過程中,同名實(shí)體只能出現(xiàn)一次,還要去掉不必要的聯(lián)系,以便消除冗余。一般來說,從總體E—R圖必須能導(dǎo)出原來的所有局部視圖,包括實(shí)體、屬性和聯(lián)系。復(fù)雜E-R圖設(shè)計(jì)實(shí)例

【例1.2】工廠物流管理中的涉及雇員、部門、供應(yīng)商、原材料、成品和倉庫等實(shí)體,并且存在以下關(guān)聯(lián):(1)一個(gè)雇員只能在一個(gè)部門工作,一個(gè)部門可以有多個(gè)雇員。(2)每一個(gè)部門可以生產(chǎn)多種成品,但一種成品只能由一個(gè)部門生產(chǎn)。(3)一個(gè)供應(yīng)商可以供應(yīng)多種原材料,一種原材料也可以由多個(gè)供應(yīng)商供貨。(4)購買的原材料放在倉庫中,成品也放在倉庫中。一個(gè)倉庫可以存放多種產(chǎn)品,一種產(chǎn)品也可以存放在不同的倉庫中。(5)各部門從倉庫中提取原料,并將成品放在倉庫中。一個(gè)倉庫可以存放多個(gè)部門的產(chǎn)品,一個(gè)部門的產(chǎn)品也可以存放在不同的倉庫中。

畫出簡(jiǎn)單的工廠物流管理系統(tǒng)E-R模型。局部E-R圖1、找出工廠物流管理系統(tǒng)實(shí)體集:分別是雇員、部門、成品、供應(yīng)商、原材料和倉庫。2.從生產(chǎn)的角度,根據(jù)(1)和(2)畫出雇員、部門和成品三個(gè)實(shí)體間的初步聯(lián)系3.從供應(yīng)的角度,根據(jù)(3)畫出供應(yīng)商和原材料兩個(gè)實(shí)體間的初步聯(lián)系,4.為是問題簡(jiǎn)化,實(shí)體的屬性先不畫出。全局E-R圖5.從倉儲(chǔ)的角度,根據(jù)(4)和(5)畫出倉庫與各實(shí)體之間的聯(lián)系,最終得到工廠物流管理系統(tǒng)的E-R圖6.實(shí)體聯(lián)系中有多個(gè)數(shù)量屬性,分別用數(shù)量1,數(shù)量2…以區(qū)分課堂練習(xí)7.各實(shí)體的屬性如下,請(qǐng)進(jìn)一步完成工廠物流E-R圖雇員部門供應(yīng)商原材料和成品倉庫雇員號(hào),姓名,性別,職稱,工資,住址部門號(hào),名稱,電話編號(hào),名稱,聯(lián)系人,電話,銀行賬號(hào)編號(hào),名稱,規(guī)格,單價(jià),數(shù)量庫號(hào),地址,電話E-R圖設(shè)計(jì)中常見問題分析【例1.3】畫出出版社和圖書的E-R圖。1.實(shí)體與聯(lián)系分析:一個(gè)出版社可以出版多本圖書,一本圖書只能由一個(gè)出版社出版,出版社和圖書之間就是一對(duì)多的關(guān)系。2.屬性與主碼:出版社實(shí)體有社名、地址、郵編、網(wǎng)址、聯(lián)系電話等屬性。為了建立出版社與圖書實(shí)體一對(duì)多的聯(lián)系,還應(yīng)該有一個(gè)出版社代碼來唯一標(biāo)識(shí)出版社;

圖書實(shí)體有出版社、書名、作者、價(jià)格等屬性。為了唯一標(biāo)識(shí)圖書,還應(yīng)設(shè)置書號(hào)屬性。

根據(jù)以上分析,畫出出版社與圖書的E-R圖如下:圖書出版E-R圖案例分析

出版社和圖書的E-R圖分析:(1)出版社和圖書的關(guān)系:出版社通過出版與圖書建立關(guān)聯(lián)。一個(gè)出版社可以出版多本圖書,一本圖書一般由一個(gè)出版社出版,出版社和圖書之間就是一對(duì)多的關(guān)系。(2)出版社實(shí)體有社名、地址、郵編、網(wǎng)址、聯(lián)系電話等屬性,為了建立出版社與圖書實(shí)體一對(duì)多的聯(lián)系,還應(yīng)該有一個(gè)出版社代碼來唯一標(biāo)識(shí)出版社(3)圖書實(shí)體有出版社代碼、書名、作者、價(jià)格等屬性。為了唯一標(biāo)識(shí)圖書,還應(yīng)設(shè)置書號(hào)屬性。圖書出版E-R圖問題思考(1)1、怎么標(biāo)識(shí)書號(hào)(選取關(guān)鍵字)?為了管理方便,國際上規(guī)定:全世界的每本書都應(yīng)該有唯一的編號(hào),這個(gè)號(hào)碼叫做ISBN號(hào),俗稱書號(hào)。ISBN號(hào)碼又分為幾個(gè)子域,每個(gè)域的代碼表示不同的含義。例如,某本書的書號(hào)是7-302-06610-8,它有四個(gè)子域,域之間用-分隔。第一個(gè)子域7代表中國大陸出版的圖書;第二個(gè)子域?yàn)槌霭嫔绲拇a,如302代表清華大學(xué)出版社;后面兩個(gè)子域是出版社的內(nèi)部分類編號(hào),不同的出版社可以自己規(guī)定,各不相同,從而保證了圖書書號(hào)的全球唯一性。因此,用ISBN書號(hào)作為圖書的唯一標(biāo)識(shí)似乎是非常合理的。但是,有些出版社用一個(gè)書號(hào)出版多本圖書,有些書或者資料根本沒有書號(hào)。雖然這么做并不正規(guī),甚至是違法的,但這種現(xiàn)象畢竟是客觀存在的。所以,在設(shè)計(jì)實(shí)際數(shù)據(jù)庫系統(tǒng)的時(shí)候,一般不能以ISBN書號(hào)唯一標(biāo)識(shí)圖書實(shí)體,而應(yīng)該自己定義唯一標(biāo)識(shí)圖書實(shí)體的屬性。在現(xiàn)實(shí)世界中,類似這樣的問題有很多,通常需要為實(shí)體集定義額外的關(guān)鍵字段。圖書出版E-R圖問題思考(2)2、有些屬性的值如果有多個(gè),該怎么辦?如出版社實(shí)體應(yīng)該有電話屬性。但一個(gè)出版社一般不止一部電話,怎么處理?一種方法是仍使用一個(gè)電話屬性,只記下一部或幾部甚至全部的電話號(hào)碼即可,這種方法適合于小單位。第二種方法是將電話屬性獨(dú)立出來,建立一個(gè)新的電話實(shí)體,通過出版社代碼屬性,建立和出版社的一對(duì)多聯(lián)系,圖書出版E-R圖問題思考(3)3、一個(gè)實(shí)體究竟有多少屬性?實(shí)體的屬性可以說是無窮無盡,到底應(yīng)提取哪些屬性,要結(jié)合具體應(yīng)用系統(tǒng)考慮。比如,圖書的一般屬性有書號(hào)、社代碼、書名、作者、價(jià)格、版次等,如果開發(fā)的是書店管理系統(tǒng),這些屬性一般夠用了,但如果要開發(fā)印刷廠管理系統(tǒng),還需要增加圖書大?。?2開還是16開,或具體數(shù)字)、印刷紙張規(guī)格(60克紙還是70克紙,書寫紙還是雙面膠)、是否彩印、彩印規(guī)格、印刷數(shù)量、交貨日期等屬性。所以,提取一個(gè)實(shí)體的屬性也要具體問題具體分析。通過出版社—圖書的例子引出的三個(gè)問題,說明建立在現(xiàn)實(shí)世界基礎(chǔ)上的E-R模型并不只有唯一答案。面向不同的應(yīng)用、使用不同的方法,可以設(shè)計(jì)出不同的E-R模型。課堂練習(xí)學(xué)校有若干個(gè)系,每個(gè)系有各自的系號(hào)、系名和系主任;每個(gè)系有若干名教師和學(xué)生,教師有教師號(hào)、教師名和職稱屬性,每個(gè)教師可以擔(dān)任若干門課程,一門課程只能由一位教師講授,課程有課程號(hào)、課程名和學(xué)分,并參加多項(xiàng)項(xiàng)目,一個(gè)項(xiàng)目有多人合作,且責(zé)任輕重有個(gè)排名,項(xiàng)目有項(xiàng)目號(hào)、名稱和負(fù)責(zé)人;學(xué)生有學(xué)號(hào)、姓名、年齡、性別,每個(gè)學(xué)生可以同時(shí)選修多門課程,選修有分?jǐn)?shù)。請(qǐng)?jiān)O(shè)計(jì)此學(xué)校的教學(xué)管理的E-R模型。E—R模型到關(guān)系模型的轉(zhuǎn)換

把E-R圖轉(zhuǎn)換為關(guān)系模型可遵循如下原則:

(1)對(duì)于E—R圖中每個(gè)實(shí)體集,都應(yīng)轉(zhuǎn)換為一個(gè)關(guān)系,該關(guān)系應(yīng)包括對(duì)應(yīng)實(shí)體的全部屬性,并應(yīng)根據(jù)關(guān)系所表達(dá)的語義確定哪個(gè)屬性或哪幾個(gè)屬性組作為“主關(guān)鍵字”,主關(guān)鍵字用來標(biāo)識(shí)實(shí)體。(2)對(duì)于E—R圖中的聯(lián)系,情況比較復(fù)雜,要根據(jù)實(shí)體聯(lián)系方式的不同,采取不同的手段加以實(shí)現(xiàn)。(1:1)聯(lián)系的E-R圖轉(zhuǎn)換(1)聯(lián)系單獨(dú)對(duì)應(yīng)一關(guān)系模式,則由聯(lián)系屬性、參與聯(lián)系的各實(shí)體集的主碼屬性構(gòu)成關(guān)系模式,其主碼可選參與聯(lián)系的實(shí)體集的任一方的主碼。BJ(班級(jí)編號(hào),院系,專業(yè)名,人數(shù))BZ(學(xué)號(hào),姓名)SY(學(xué)號(hào),班級(jí)編號(hào))(2)聯(lián)系不單獨(dú)對(duì)應(yīng)一關(guān)系模式,聯(lián)系的屬性及一方的主碼加入另一方實(shí)體集對(duì)應(yīng)的關(guān)系模式中。BJ(班級(jí)編號(hào),院系,專業(yè)名,人數(shù))BZ(學(xué)號(hào),姓名,班級(jí)編號(hào))或者BJ(班級(jí)編號(hào),院系,專業(yè)名,人數(shù),學(xué)號(hào))BZ(學(xué)號(hào),姓名)(1:n)聯(lián)系的E-R圖轉(zhuǎn)換(1)聯(lián)系單獨(dú)對(duì)應(yīng)一關(guān)系模式,則由聯(lián)系的屬性、參與聯(lián)系的各實(shí)體集的主碼屬性構(gòu)成關(guān)系模式,n端的主碼作為該關(guān)系模式的主碼。BJ(班級(jí)編號(hào),院系,專業(yè)名,人數(shù))XS(學(xué)號(hào),姓名,專業(yè)名,性別,出生時(shí)間,總學(xué)分,備注)SY(學(xué)號(hào),班級(jí)編號(hào))(2)聯(lián)系不單獨(dú)對(duì)應(yīng)一個(gè)關(guān)系模式,則將聯(lián)系的屬性及1端的主碼加入n端實(shí)體集對(duì)應(yīng)的關(guān)系模式中,主碼仍為n端的主碼BJ(班級(jí)編號(hào),院系,專業(yè)名,人數(shù))XS(學(xué)號(hào),姓名,專業(yè)名,性別,出生時(shí)間,總學(xué)分,備注,班級(jí)編號(hào))(m:n)聯(lián)系的E-R圖轉(zhuǎn)換

對(duì)于(m:n)的聯(lián)系,單獨(dú)對(duì)應(yīng)一關(guān)系模式,該關(guān)系模式包括聯(lián)系的屬性、參與聯(lián)系的各實(shí)體集的主碼屬性,該關(guān)系模式的主碼由各實(shí)體集的主碼屬性共同組成。XS(學(xué)號(hào),姓名,專業(yè)名,性別,出生時(shí)間,總學(xué)分,備注)KC(課程號(hào),課程名稱,類別,開課學(xué)期,學(xué)時(shí),學(xué)分)XS_KC(學(xué)號(hào),課程號(hào),成績)假設(shè)A實(shí)體集與B實(shí)體集是1:1的聯(lián)系,聯(lián)系的轉(zhuǎn)換有三種方法:

①把A實(shí)體集的主關(guān)鍵字加入到B實(shí)體集對(duì)應(yīng)的關(guān)系中,如果聯(lián)系有屬性也一并加入;②把B實(shí)體集的主關(guān)鍵字加入到A實(shí)體集對(duì)應(yīng)的關(guān)系中,如果聯(lián)系有屬性也一并加入;③建立第三個(gè)關(guān)系,關(guān)系中包含兩個(gè)實(shí)體集的主關(guān)鍵字,如果聯(lián)系有屬性也一并加入。兩實(shí)體集間1:n聯(lián)系

兩實(shí)體集間1:n聯(lián)系,可將“一方”實(shí)體的主關(guān)鍵字納入“n方”實(shí)體集對(duì)應(yīng)的關(guān)系中作為“外部關(guān)鍵字”,同時(shí)把聯(lián)系的屬性也一并納入“n方”對(duì)應(yīng)的關(guān)系中。兩實(shí)體集間m:n聯(lián)系

對(duì)于兩實(shí)體集間m:n聯(lián)系,必須對(duì)“聯(lián)系”單獨(dú)建立一個(gè)關(guān)系,用來聯(lián)系雙方實(shí)體集。該關(guān)系的屬性中至少要包括被它所聯(lián)系的雙方實(shí)體集的“主關(guān)鍵字”,并且如果聯(lián)系有屬性,也要?dú)w入這個(gè)關(guān)系中。

E-R模型到關(guān)系模型的轉(zhuǎn)換總結(jié)任務(wù)二數(shù)據(jù)庫設(shè)計(jì)規(guī)范化僅有好的RDBMS并不足以避免數(shù)據(jù)冗余,必須在數(shù)據(jù)庫的設(shè)計(jì)中創(chuàng)建好的表結(jié)構(gòu)DrE.F.codd最初定義了規(guī)范化的三個(gè)級(jí)別,范式是具有最小冗余的表結(jié)構(gòu)。這些范式是:第一范式(1stNF-FirstNormalFromate)第二范式(2ndNF-SecondNormalFromate)第三范式(3rdNF-ThirdNormalFromate)關(guān)系數(shù)據(jù)庫范式理論是在數(shù)據(jù)庫設(shè)計(jì)過程中將要依據(jù)的準(zhǔn)則,數(shù)據(jù)庫結(jié)構(gòu)必須要滿足這些準(zhǔn)則,才能確保數(shù)據(jù)的準(zhǔn)確性和可靠性。這些準(zhǔn)則則被稱為規(guī)范化形式,即范式。第一范式(1stNF)BuyerIDCountryCity1342中國英國日本美國北京倫敦東京紐約………BuyerIDAddress1234中國北京市

美國紐約市

英國倫敦日本東京市……第一范式的目標(biāo)是確保每列的原子性如果每列都是不可再分的最小數(shù)據(jù)單元(也稱為最小的原子單元),則滿足第一范式(1NF)第二范式(2ndNF)如果一個(gè)關(guān)系滿足1NF,并且除了主鍵以外的其他列,都依賴與該主鍵,則滿足第二范式(2NF)第二范式要求每個(gè)表只描述一件事情Orders字段例子訂單編號(hào)產(chǎn)品編號(hào)訂購日期價(jià)格001A0012000-2-3$29.00……Orders字段例子訂單編號(hào)訂購日期0012000-2-3Products字段例子產(chǎn)品編號(hào)價(jià)格A001$29.00以下是兩個(gè)同學(xué)設(shè)計(jì)的學(xué)生成績系統(tǒng)的表格,A同學(xué)設(shè)計(jì)成表格1的形式,B同學(xué)設(shè)計(jì)了表格2、3、4三張表格,請(qǐng)問:1、A、B同學(xué)哪個(gè)的方案更合理?2、如果要他們?cè)O(shè)計(jì)的表格記錄5000個(gè)同學(xué)的10門課成績,用A同學(xué)設(shè)計(jì)表格要填寫多少個(gè)數(shù)據(jù)?用B同學(xué)設(shè)計(jì)的表格要填寫多少個(gè)數(shù)據(jù)?3、根據(jù)計(jì)算結(jié)果,哪種設(shè)計(jì)更節(jié)省空間?為什么?學(xué)號(hào)姓名年齡課程名稱成績學(xué)分010101張三20計(jì)算機(jī)基礎(chǔ)802010102李四20計(jì)算機(jī)基礎(chǔ)852010101張三20英語753010102李四20英語853學(xué)號(hào)姓名年齡010101張三20010102李四20課程名稱學(xué)分計(jì)算機(jī)基礎(chǔ)2英語3學(xué)號(hào)課程名稱成績010101計(jì)算機(jī)基礎(chǔ)80010102計(jì)算機(jī)基礎(chǔ)85010101英語75010102英語85A同學(xué)設(shè)計(jì)表格B同學(xué)設(shè)計(jì)表格課堂練習(xí)一張表:6*10*5000=30,0000個(gè)數(shù)據(jù)三張表:學(xué)生表:3*5000=15000

課程表:2*10=20

成績表:3*10*5000=150000三張表合計(jì):15000+20+150000=16,5020A與B方案數(shù)據(jù)差:30,0000-16,5020=13,4980以下是兩個(gè)同學(xué)設(shè)計(jì)的學(xué)生成績系統(tǒng)的表格,A同學(xué)設(shè)計(jì)成表格1的形式,B同學(xué)設(shè)計(jì)了表格2、3、4三張表格,請(qǐng)問:1、A、B同學(xué)哪個(gè)的方案更合理?2、如果要他們?cè)O(shè)計(jì)的表格記錄5000個(gè)同學(xué)的10門課成績,用A同學(xué)設(shè)計(jì)表格要填寫多少個(gè)數(shù)據(jù)?用B同學(xué)設(shè)計(jì)的表格要填寫多少個(gè)數(shù)據(jù)?3、根據(jù)計(jì)算結(jié)果,哪種設(shè)計(jì)更節(jié)省空間?為什么?學(xué)號(hào)姓名年齡課程名稱成績學(xué)分010101張三20計(jì)算機(jī)基礎(chǔ)802010102李四20計(jì)算機(jī)基礎(chǔ)852010101張三20英語753010102李四20英語853學(xué)號(hào)姓名年齡010101張三20010102李四20課程名稱學(xué)分計(jì)算機(jī)基礎(chǔ)2英語3學(xué)號(hào)課程名稱成績010101計(jì)算機(jī)基礎(chǔ)80010102計(jì)算機(jī)基礎(chǔ)85010101英語75010102英語85A同學(xué)設(shè)計(jì)表格B同學(xué)設(shè)計(jì)表格課堂練習(xí)分析第三范式(3rdNF)如果一個(gè)關(guān)系滿足2NF,并且除了主鍵以外的其他列都不傳遞依賴于主鍵列,則滿足第三范式(3NF)

Orders字段例子訂單編號(hào)訂購日期顧客編號(hào)0012000-2-3AB001顧客姓名Tony……Orders字段例子訂單編號(hào)訂購日期顧客編號(hào)0012000-2-3AB001……規(guī)范化實(shí)例分析(1)假設(shè)某建筑公司要設(shè)計(jì)一個(gè)數(shù)據(jù)庫。公司的業(yè)務(wù)規(guī)則概括說明如下:公司承擔(dān)多個(gè)工程項(xiàng)目,每一項(xiàng)工程有:工程號(hào)、工程名稱、施工人員等公司有多名職工,每一名職工有:職工號(hào)、姓名、性別、職務(wù)(工程師、技術(shù)員)等公司按照工時(shí)和小時(shí)工資率支付工資,小時(shí)工資率由職工的職務(wù)決定(例如,技術(shù)員的小時(shí)工資率與工程師不同)公司定期制定一個(gè)工資報(bào)表,如圖-1所示規(guī)范化實(shí)例分析(2)工程號(hào)工程名稱職工號(hào)姓名職務(wù)小時(shí)工資率工時(shí)實(shí)發(fā)工資A1花園大廈1001齊光明工程師6513845.001002李思岐技術(shù)員6016960.001004葛宇宏律師60191140.00小計(jì)2945.00A2立交橋1001齊光明工程師6515975.001003鞠明亮工人5517935.00小計(jì)1910.00A3臨江飯店1002李思岐技術(shù)員60181080.001004葛宇洪技術(shù)員6014840.00小計(jì)1920.00圖-1某公司的工資表規(guī)范化實(shí)例分析(3)工程號(hào)工程名稱職工號(hào)姓名職務(wù)小時(shí)工資率工時(shí)A1花園大廈1001齊光明工程師6513A1花園大廈1002

溫馨提示

  • 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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論