版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、MySQL數(shù)據(jù)庫單元一數(shù)據(jù)模型的規(guī)劃與設(shè)計(jì) 項(xiàng)目知識要點(diǎn)與目標(biāo)項(xiàng)目知識要點(diǎn)知識能力目標(biāo)學(xué)時(shí)1.1 任務(wù)1 設(shè)計(jì)數(shù)據(jù)庫關(guān)系模型1.1.1 數(shù)據(jù)模型1.1.2 概念模型1.1.3 E-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ù)】: 對數(shù)據(jù)庫進(jìn)行分析,建立E-R圖,關(guān)系模型【技能要求】: 1、設(shè)計(jì)數(shù)據(jù)庫關(guān)系模型2、數(shù)據(jù)庫設(shè)計(jì)規(guī)范化【知識要求技能訓(xùn)練】:1、識記數(shù)據(jù)庫的相關(guān)知識2、數(shù)
2、據(jù)庫設(shè)計(jì)的相關(guān)知識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 公司推出展示Java web 應(yīng)用開發(fā)技術(shù)的網(wǎng)上商城示范項(xiàng)目。功能需求分析:實(shí)現(xiàn)前臺用戶購物和后臺管理兩大部分功能。前臺購物為顧客服務(wù),客戶輸入用戶名、密碼等信息進(jìn)行注冊,注冊成功后就可以進(jìn)行按產(chǎn)品的分類瀏覽網(wǎng)站,當(dāng)用戶看中某個(gè)寵物時(shí),可以加入用戶的購物車,當(dāng)購物選擇完畢時(shí),用戶可以對購物車中的物品進(jìn)行預(yù)訂,系統(tǒng)生成相應(yīng)的訂單。后臺商品管理為管理員所用,管理員可以對商品進(jìn)行分類,并為每個(gè)分類增加新商品以及對現(xiàn)有商品完成修改、刪除等操作。要進(jìn)行Pe
3、tstore 電子商務(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ù)對象以及這些數(shù)據(jù)對象之間關(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ù)的存儲空間能夠保證數(shù)據(jù)的完整性方便進(jìn)行數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)糟糕的數(shù)據(jù)庫設(shè)計(jì):數(shù)據(jù)冗余、存儲空間浪費(fèi)內(nèi)存空間浪費(fèi)數(shù)據(jù)更新和插入的異常數(shù)據(jù)冗余編號姓名年齡民族部門部門位置1王濤33漢族人事管理部行政樓3012李梅27漢族人事管理部行政樓301
4、存在冗余為減少數(shù)據(jù)查找的麻煩,允許數(shù)據(jù)有一定的冗余數(shù)據(jù)冗余:指數(shù)據(jù)重復(fù)的現(xiàn)象1127李梅21133王濤1部門編碼民族編碼年齡姓名編號回族2漢族1民族民族編碼市場營銷部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)
5、實(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)系模型中某一特定的方面或部分的對象及其屬性(2)表中的行通常叫做記錄或元組,代表具有相同屬性的對象中的一個(gè)(3)表中的列通
6、常叫做字段或?qū)傩裕泶鎯ο蟮墓灿械膶傩裕?)數(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í)體Entity) 標(biāo)識數(shù)據(jù)庫要管理的關(guān)鍵對象或?qū)嶓w 標(biāo)識每個(gè)實(shí)體的屬性(Attribute)標(biāo)識對象之間的關(guān)系(Relationship)建模:把現(xiàn)實(shí)世界轉(zhuǎn)
7、換為信息世界的模型,E-R模型建模實(shí)例:學(xué)生選課系統(tǒng)建模張三選修李四王五計(jì)算機(jī)基礎(chǔ)英語MySQL數(shù)據(jù)庫個(gè)體學(xué)號總學(xué)分專業(yè)名出生日期性別姓名共性學(xué)生實(shí)體抽象抽象實(shí)體共性課程課程號學(xué)分學(xué)時(shí)開課學(xué)期類別課程名關(guān)聯(lián)選課成績個(gè)體主碼(關(guān)鍵字) 主碼:也叫關(guān)鍵字,實(shí)體集中的屬性或最小屬性組合的值能唯一標(biāo)識其對應(yīng)實(shí)體,則將該屬性或?qū)傩越M合稱為碼。對于每一個(gè)實(shí)體集,可指定一個(gè)碼為主碼。學(xué)生和課程實(shí)體集屬性描述概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì)- E-R圖方法實(shí)體關(guān)系圖:簡記E-R圖,是指以實(shí)體、關(guān)系、屬性三個(gè)基本概念概括數(shù)據(jù)的基本結(jié)構(gòu),從而描述靜態(tài)數(shù)據(jù)結(jié)構(gòu)的概念模式。實(shí)體型(Entity):具有相同的特征和性質(zhì)的集合體
8、,用實(shí)體名及其屬性名來抽象和刻畫同類實(shí)體;在E-R圖中用矩形表示,矩形框內(nèi)寫明實(shí)體名;比如學(xué)生張三、學(xué)生李四都是實(shí)體屬性(Attribute):實(shí)體所具有的某一特性,一個(gè)實(shí)體可由若干個(gè)屬性來刻畫。在E-R圖中用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來;比如學(xué)生的姓名、學(xué)號、性別、都是屬性。聯(lián)系(Relationship): 數(shù)據(jù)對象彼此之間相互連接的方式稱為聯(lián)系,也稱為關(guān)系。E-R模型E-R圖的組成要素及其畫法實(shí)體名聯(lián)系名屬性名實(shí)體表示屬性表示聯(lián)系表示繪制E-R圖映射基數(shù)一對一X X X X Y Y Y Y X X X X Y Y Y Y 一對多X X X X Y Y Y 多對一X X
9、X X Y Y Y Y 多對多客戶訂單產(chǎn)品 M N 1 N一對一(1:1)聯(lián)系實(shí)體間不同聯(lián)系情況的E-R圖表示法一對一(1:1)聯(lián)系:1主任系管理1姓名年齡學(xué)歷編號系編號系名任職時(shí)間例:某學(xué)院有若干個(gè)系,每個(gè)系只有一個(gè)主任。則主任和系之間是一對一的關(guān)系。主任和系的屬性分別如下: 主任編號,姓名,年齡,學(xué)歷; 系系編號,系名 主任和系之間是一個(gè)管理關(guān)系主任與系之間的一對一的聯(lián)系一對多(1:m)的聯(lián)系例: 在某倉庫管理系統(tǒng)中,有兩個(gè)實(shí)體集:倉庫和商品。倉庫用來存放商品,且規(guī)定一類商品只能存放在一個(gè)倉庫中,一個(gè)倉庫可以存放多件商品。倉庫和商品的屬性分別如下: 倉庫倉庫號,地點(diǎn),面積 商品商品號,商品
10、名,價(jià)格 在存放聯(lián)系中要反映出存放商品的數(shù)量。 1倉庫商品存放n地點(diǎn)面積倉庫號商品號價(jià)格數(shù)量商品名一對多(1:m)的聯(lián)系倉庫和商品之間一對多的聯(lián)系多對多(m:n)聯(lián)系:假設(shè)在某教務(wù)管理系統(tǒng)中,一個(gè)教師可以上多門課,一門課也可以由多個(gè)老師去上。教師和課程可用以下屬性來描述: 教師教師號,教師名,職稱 課程課程號,課程名,班級 在“講授”聯(lián)系中應(yīng)能反映出教師的授課質(zhì)量。 m教師課程講授n教師名職稱教師號課程號班級質(zhì)量課程名多對多(m:n)聯(lián)系教師和課程之間的多對多聯(lián)系1.1.3 E-R圖設(shè)計(jì)實(shí)例【例1.1】 網(wǎng)絡(luò)圖書銷售系統(tǒng)處理會員圖書銷售。簡化的業(yè)務(wù)處理過程為:網(wǎng)絡(luò)銷售的圖書信息包括:圖書編號,
11、圖書類別,書名,作者,出版社,出版時(shí)間,單價(jià),數(shù)量,折扣,封面圖片等;用戶需要購買圖書必須先注冊為會員,提供身份證號,會員姓名,密碼,性別,聯(lián)系電話,注冊時(shí)間等信息;系統(tǒng)根據(jù)會員的購買訂單形成銷售信息,包括訂單號,身份證號,圖書編號,訂購冊數(shù),訂購時(shí)間,是否發(fā)貨,是否收貨,是否結(jié)清。 請畫出網(wǎng)絡(luò)圖書銷售數(shù)據(jù)庫E-R圖?!纠?.1】 E-R圖設(shè)計(jì)步驟1.確定實(shí)體集: 網(wǎng)絡(luò)圖書銷售系統(tǒng)中有兩個(gè)實(shí)體集:圖書和會員2.確定實(shí)體集屬性及主碼: (1)實(shí)體集會員屬性有:身份證號,會員姓名,性別,聯(lián)系電話,注冊時(shí)間,密碼。 會員實(shí)體集中可用身份證號來唯一標(biāo)識各會員,所以主碼為身份證號。(2)實(shí)體集圖書屬性有
12、:圖書編號,圖書類別,書名,作者,出版社,出版時(shí)間,單價(jià),數(shù)量,折扣,封面圖片。 圖書實(shí)體集中可用圖書編號來唯一標(biāo)識圖書,所以主碼為圖書編號。3. 確定實(shí)體集之間的聯(lián)系:圖書銷售給會員時(shí)圖書與會員建立關(guān)聯(lián), 聯(lián)系“銷售”的屬性有:訂購冊數(shù),訂購時(shí)間,是否發(fā)貨,是否收貨,是否結(jié)清。 為了更方便標(biāo)識銷售記錄,可添加訂單號作為該聯(lián)系的主碼。4.確定聯(lián)系關(guān)系: 因?yàn)橐粋€(gè)會員可以購買多種圖書,一種圖書可銷售各多個(gè)會員,所以這是一種多對多(m:n)的聯(lián)系。 根據(jù)以上分析畫出的網(wǎng)絡(luò)圖書銷售數(shù)據(jù)庫E-R圖網(wǎng)絡(luò)圖書銷售數(shù)據(jù)庫E-R圖E-R圖設(shè)計(jì)步驟 對于復(fù)雜的系統(tǒng),E-R圖設(shè)計(jì)通常都應(yīng)經(jīng)過以下兩個(gè)階段: (1)
13、針對每一用戶畫出該用戶信息的局部ER圖,確定該用戶視圖的實(shí)體、屬性和聯(lián)系。需注意的是:能作為屬性的就不要作為實(shí)體,這有利于ER圖的簡化。 (2)綜合局部ER圖,生成總體ER圖。在綜合過程中,同名實(shí)體只能出現(xiàn)一次,還要去掉不必要的聯(lián)系,以便消除冗余。一般來說,從總體ER圖必須能導(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)多種原材料
14、,一種原材料也可以由多個(gè)供應(yīng)商供貨。(4)購買的原材料放在倉庫中,成品也放在倉庫中。一個(gè)倉庫可以存放多種產(chǎn)品,一種產(chǎn)品也可以存放在不同的倉庫中。(5)各部門從倉庫中提取原料,并將成品放在倉庫中。一個(gè)倉庫可以存放多個(gè)部門的產(chǎn)品,一個(gè)部門的產(chǎ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.為是問題簡化,實(shí)體的屬性先不畫出。全局E-R圖5.從倉儲
15、的角度,根據(jù)(4)和(5)畫出倉庫與各實(shí)體之間的聯(lián)系,最終得到工廠物流管理系統(tǒng)的E-R圖6.實(shí)體聯(lián)系中有多個(gè)數(shù)量屬性,分別用數(shù)量1,數(shù)量2以區(qū)分課堂練習(xí)7.各實(shí)體的屬性如下,請進(jìn)一步完成工廠物流E-R圖雇員部門供應(yīng)商原材料和成品倉庫雇員號,姓名,性別,職稱,工資,住址部門號,名稱,電話編號,名稱,聯(lián)系人,電話,銀行賬號編號,名稱,規(guī)格,單價(jià),數(shù)量庫號,地址,電話E-R圖設(shè)計(jì)中常見問題分析【例1.3】 畫出出版社和圖書的E-R圖。 1.實(shí)體與聯(lián)系分析:一個(gè)出版社可以出版多本圖書,一本圖書只能由一個(gè)出版社出版,出版社和圖書之間就是一對多的關(guān)系。 2.屬性與主碼:出版社實(shí)體有社名、地址、郵編、網(wǎng)址、
16、聯(lián)系電話等屬性。為了建立出版社與圖書實(shí)體一對多的聯(lián)系,還應(yīng)該有一個(gè)出版社代碼來唯一標(biāo)識出版社; 圖書實(shí)體有出版社、書名、作者、價(jià)格等屬性。為了唯一標(biāo)識圖書,還應(yīng)設(shè)置書號屬性。 根據(jù)以上分析,畫出出版社與圖書的E-R圖如下:圖書出版E-R圖案例分析 出版社和圖書的E-R圖分析: (1)出版社和圖書的關(guān)系:出版社通過出版與圖書建立關(guān)聯(lián)。一個(gè)出版社可以出版多本圖書,一本圖書一般由一個(gè)出版社出版,出版社和圖書之間就是一對多的關(guān)系。(2)出版社實(shí)體有社名、地址、郵編、網(wǎng)址、聯(lián)系電話等屬性,為了建立出版社與圖書實(shí)體一對多的聯(lián)系,還應(yīng)該有一個(gè)出版社代碼來唯一標(biāo)識出版社(3)圖書實(shí)體有出版社代碼、書名、作者、
17、價(jià)格等屬性。為了唯一標(biāo)識圖書,還應(yīng)設(shè)置書號屬性。圖書出版E-R圖問題思考(1)1、怎么標(biāo)識書號(選取關(guān)鍵字)?為了管理方便,國際上規(guī)定:全世界的每本書都應(yīng)該有唯一的編號,這個(gè)號碼叫做ISBN號,俗稱書號。ISBN號碼又分為幾個(gè)子域,每個(gè)域的代碼表示不同的含義。例如,某本書的書號是7-302-06610-8,它有四個(gè)子域,域之間用-分隔。第一個(gè)子域7代表中國大陸出版的圖書;第二個(gè)子域?yàn)槌霭嫔绲拇a,如302代表清華大學(xué)出版社;后面兩個(gè)子域是出版社的內(nèi)部分類編號,不同的出版社可以自己規(guī)定,各不相同,從而保證了圖書書號的全球唯一性。因此,用ISBN書號作為圖書的唯一標(biāo)識似乎是非常合理的。但是,有些出
18、版社用一個(gè)書號出版多本圖書,有些書或者資料根本沒有書號。雖然這么做并不正規(guī),甚至是違法的,但這種現(xiàn)象畢竟是客觀存在的。所以,在設(shè)計(jì)實(shí)際數(shù)據(jù)庫系統(tǒng)的時(shí)候,一般不能以ISBN書號唯一標(biāo)識圖書實(shí)體,而應(yīng)該自己定義唯一標(biāo)識圖書實(shí)體的屬性。在現(xiàn)實(shí)世界中,類似這樣的問題有很多,通常需要為實(shí)體集定義額外的關(guān)鍵字段。圖書出版E-R圖問題思考(2)2、有些屬性的值如果有多個(gè),該怎么辦?如出版社實(shí)體應(yīng)該有電話屬性。但一個(gè)出版社一般不止一部電話,怎么處理?一種方法是仍使用一個(gè)電話屬性,只記下一部或幾部甚至全部的電話號碼即可,這種方法適合于小單位。第二種方法是將電話屬性獨(dú)立出來,建立一個(gè)新的電話實(shí)體,通過出版社代碼屬
19、性,建立和出版社的一對多聯(lián)系,圖書出版E-R圖問題思考(3)3、一個(gè)實(shí)體究竟有多少屬性?實(shí)體的屬性可以說是無窮無盡,到底應(yīng)提取哪些屬性,要結(jié)合具體應(yīng)用系統(tǒng)考慮。比如,圖書的一般屬性有書號、社代碼、書名、作者、價(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)
20、用、使用不同的方法,可以設(shè)計(jì)出不同的E-R模型。課堂練習(xí)學(xué)校有若干個(gè)系,每個(gè)系有各自的系號、系名和系主任;每個(gè)系有若干名教師和學(xué)生,教師有教師號、教師名和職稱屬性,每個(gè)教師可以擔(dān)任若干門課程,一門課程只能由一位教師講授,課程有課程號、課程名和學(xué)分,并參加多項(xiàng)項(xiàng)目,一個(gè)項(xiàng)目有多人合作,且責(zé)任輕重有個(gè)排名,項(xiàng)目有項(xiàng)目號、名稱和負(fù)責(zé)人;學(xué)生有學(xué)號、姓名、年齡、性別,每個(gè)學(xué)生可以同時(shí)選修多門課程,選修有分?jǐn)?shù)。請?jiān)O(shè)計(jì)此學(xué)校的教學(xué)管理的E-R模型。ER模型到關(guān)系模型的轉(zhuǎn)換 把E-R圖轉(zhuǎn)換為關(guān)系模型可遵循如下原則 : (1)對于ER圖中每個(gè)實(shí)體集,都應(yīng)轉(zhuǎn)換為一個(gè)關(guān)系,該關(guān)系應(yīng)包括對應(yīng)實(shí)體的全部屬性,并應(yīng)根據(jù)
21、關(guān)系所表達(dá)的語義確定哪個(gè)屬性或哪幾個(gè)屬性組作為“主關(guān)鍵字”,主關(guān)鍵字用來標(biāo)識實(shí)體。 (2)對于ER圖中的聯(lián)系,情況比較復(fù)雜,要根據(jù)實(shí)體聯(lián)系方式的不同,采取不同的手段加以實(shí)現(xiàn)。(1 : 1)聯(lián)系的E-R圖轉(zhuǎn)換(1)聯(lián)系單獨(dú)對應(yīng)一關(guān)系模式,則由聯(lián)系屬性、參與聯(lián)系的各實(shí)體集的主碼屬性構(gòu)成關(guān)系模式,其主碼可選參與聯(lián)系的實(shí)體集的任一方的主碼。BJ(班級編號,院系,專業(yè)名,人數(shù))BZ(學(xué)號,姓名)SY(學(xué)號,班級編號)(2)聯(lián)系不單獨(dú)對應(yīng)一關(guān)系模式,聯(lián)系的屬性及一方的主碼加入另一方實(shí)體集對應(yīng)的關(guān)系模式中。 BJ(班級編號,院系,專業(yè)名,人數(shù)) BZ(學(xué)號,姓名,班級編號)或者 BJ(班級編號,院系,專業(yè)名
22、,人數(shù),學(xué)號) BZ(學(xué)號,姓名)(1 : n)聯(lián)系的E-R圖轉(zhuǎn)換(1)聯(lián)系單獨(dú)對應(yīng)一關(guān)系模式,則由聯(lián)系的屬性、參與聯(lián)系的各實(shí)體集的主碼屬性構(gòu)成關(guān)系模式,n端的主碼作為該關(guān)系模式的主碼。BJ(班級編號,院系,專業(yè)名,人數(shù))XS (學(xué)號,姓名,專業(yè)名,性別,出生時(shí)間,總學(xué)分,備注)SY(學(xué)號,班級編號)(2)聯(lián)系不單獨(dú)對應(yīng)一個(gè)關(guān)系模式,則將聯(lián)系的屬性及1端的主碼加入n端實(shí)體集對應(yīng)的關(guān)系模式中,主碼仍為n端的主碼 BJ(班級編號,院系,專業(yè)名,人數(shù)) XS (學(xué)號,姓名,專業(yè)名,性別,出生時(shí)間,總學(xué)分,備注,班級編號)(m : n)聯(lián)系的E-R圖轉(zhuǎn)換 對于(m : n)的聯(lián)系,單獨(dú)對應(yīng)一關(guān)系模式,
23、該關(guān)系模式包括聯(lián)系的屬性、參與聯(lián)系的各實(shí)體集的主碼屬性,該關(guān)系模式的主碼由各實(shí)體集的主碼屬性共同組成。XS (學(xué)號,姓名,專業(yè)名,性別,出生時(shí)間,總學(xué)分,備注)KC(課程號,課程名稱,類別,開課學(xué)期,學(xué)時(shí),學(xué)分)XS_KC (學(xué)號,課程號,成績)假設(shè)A實(shí)體集與B實(shí)體集是1:1的聯(lián)系,聯(lián)系的轉(zhuǎn)換有三種方法: 把A實(shí)體集的主關(guān)鍵字加入到B實(shí)體集對應(yīng)的關(guān)系中,如果聯(lián)系有屬性也一并加入; 把B實(shí)體集的主關(guān)鍵字加入到A實(shí)體集對應(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í)體的主
24、關(guān)鍵字納入“n方”實(shí)體集對應(yīng)的關(guān)系中作為“外部關(guān)鍵字”,同時(shí)把聯(lián)系的屬性也一并納入“n方”對應(yīng)的關(guān)系中。兩實(shí)體集間m:n聯(lián)系 對于兩實(shí)體集間m:n聯(lián)系,必須對“聯(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)Dr E.F.codd 最初定義了規(guī)范化的三個(gè)級別,范式是具有最小冗余的表結(jié)構(gòu)。這些范式是:第一范式(1st NF First Normal Fromate)第二范
25、式(2nd NFSecond Normal Fromate)第三范式(3rd NF Third Normal Fromate)關(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ī)范化形式,即范式。第一范式 (1st NF)BuyerIDCountryCity1342中國英國日本美國北京倫敦東京紐約BuyerIDAddress1234中國北京市 美國紐約市 英國倫敦日本東京市 第一范式的目標(biāo)是確保每列的原子性如果每列都是不可再分的最小數(shù)據(jù)單元(也稱為最小的原子單元),則滿足第一范式(1NF)第二范式 (2nd NF)
26、如果一個(gè)關(guān)系滿足1NF,并且除了主鍵以外的其他列,都依賴與該主鍵,則滿足第二范式(2NF) 第二范式要求每個(gè)表只描述一件事情Orders字段例子訂單編號產(chǎn)品編號訂購日期價(jià) 格001A0012000-2-3$29.00 Orders字段例子訂單編號訂購日期0012000-2-3Products字段例子產(chǎn)品編號價(jià) 格A001$29.00以下是兩個(gè)同學(xué)設(shè)計(jì)的學(xué)生成績系統(tǒng)的表格,A同學(xué)設(shè)計(jì)成表格1的形式,B同學(xué)設(shè)計(jì)了表格2、3、4三張表格,請問:1、A、B同學(xué)哪個(gè)的方案更合理?2、如果要他們設(shè)計(jì)的表格記錄5000個(gè)同學(xué)的10門課成績,用A同學(xué)設(shè)計(jì)表格要填寫多少個(gè)數(shù)據(jù)?用B同學(xué)設(shè)計(jì)的表格要填寫多少個(gè)數(shù)據(jù)
27、?3、根據(jù)計(jì)算結(jié)果,哪種設(shè)計(jì)更節(jié)省空間?為什么?學(xué)號姓名年齡課程名稱成績學(xué)分010101張三20計(jì)算機(jī)基礎(chǔ)802010102李四20計(jì)算機(jī)基礎(chǔ)852010101張三20英語753010102李四20英語853學(xué)號姓名年齡010101張三20010102李四20課程名稱學(xué)分計(jì)算機(jī)基礎(chǔ)2英語3學(xué)號課程名稱成績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=1500 0 課程表:2*10=20 成績表:3*10*5000=150000三張表
28、合計(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三張表格,請問:1、A、B同學(xué)哪個(gè)的方案更合理?2、如果要他們設(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é)號姓名年齡課程名稱成績學(xué)分010101張三20計(jì)算機(jī)基礎(chǔ)802010102李四20計(jì)算機(jī)基礎(chǔ)852010101張三20英語753010102李四20英語853學(xué)號姓
29、名年齡010101張三20010102李四20課程名稱學(xué)分計(jì)算機(jī)基礎(chǔ)2英語3學(xué)號課程名稱成績010101計(jì)算機(jī)基礎(chǔ) 80010102計(jì)算機(jī)基礎(chǔ)85010101英語75010102英語85A同學(xué)設(shè)計(jì)表格B同學(xué)設(shè)計(jì)表格課堂練習(xí)分析第三范式 (3rd NF)如果一個(gè)關(guān)系滿足2NF,并且除了主鍵以外的其他列都不傳遞依賴于主鍵列,則滿足第三范式(3NF) Orders字段例子訂單編號訂購日期顧客編號0012000-2-3AB001顧客姓名Tony Orders字段例子訂單編號訂購日期顧客編號0012000-2-3AB001 規(guī)范化實(shí)例分析(1)假設(shè)某建筑公司要設(shè)計(jì)一個(gè)數(shù)據(jù)庫。公司的業(yè)務(wù)規(guī)則概括說明如下:
30、公司承擔(dān)多個(gè)工程項(xiàng)目,每一項(xiàng)工程有:工程號、工程名稱、施工人員等公司有多名職工,每一名職工有:職工號、姓名、性別、職務(wù)(工程師、技術(shù)員)等公司按照工時(shí)和小時(shí)工資率支付工資,小時(shí)工資率由職工的職務(wù)決定(例如,技術(shù)員的小時(shí)工資率與工程師不同)公司定期制定一個(gè)工資報(bào)表,如圖-1所示規(guī)范化實(shí)例分析(2)工程號工程名稱職工號姓名職務(wù)小時(shí)工資率工時(shí)實(shí)發(fā)工資A1花園大廈1001齊光明工程師6513845.001002李思岐技術(shù)員6016960.001004葛宇宏律師60191140.00小計(jì)2945.00A2立交橋1001齊光明工程師6515975.001003鞠明亮工人5517935.00小計(jì)1910.0
31、0A3臨江飯店1002李思岐技術(shù)員60181080.001004葛宇洪技術(shù)員6014840.00小計(jì)1920.00圖-1 某公司的工資表規(guī)范化實(shí)例分析(3)工程號工程名稱職工號姓名職務(wù)小時(shí)工資率工時(shí)A1花園大廈1001齊光明工程師6513A1花園大廈1002李思岐技術(shù)員6016A1花園大廈1001齊光明工程師6513A1花園大廈1003鞠明亮工人5517A3臨江飯店1002李思岐技術(shù)員6018A3臨江飯店1004葛宇洪技術(shù)員6014圖-2 某公司的項(xiàng)目工時(shí)表規(guī)范化實(shí)例分析(4)表中包含大量的冗余,可能會導(dǎo)致數(shù)據(jù)異常:更新異常 例如,修改職工號=1001的職務(wù),則必須修改所有職工號=1001的行
32、添加異常 若要增加一個(gè)新的職工時(shí),首先必須給這名職工分配一個(gè)工程。或者為了添加一名新職工的數(shù)據(jù),先給這名職工分配一個(gè)虛擬的工程。(因?yàn)橹麝P(guān)鍵字不能為空)刪除異常 例如,1001號職工要辭職,則必須刪除所有職工號1001的數(shù)據(jù)行。這樣的刪除操作,很可能丟失了其它有用的數(shù)據(jù)采用這種方法設(shè)計(jì)表的結(jié)構(gòu),雖然很容易產(chǎn)生工資報(bào)表,但是每當(dāng)一名職工分配一個(gè)工程時(shí),都要重復(fù)輸入大量的數(shù)據(jù)。這種重復(fù)的輸入操作,很可能導(dǎo)致數(shù)據(jù)的不一致性。一張表描述了多件事情,如圖-3所示。規(guī)范化實(shí)例分析(5)工程號工程名稱職工號姓名職務(wù)小時(shí)工資率工時(shí)圖-3 函數(shù)依賴圖工程信息員工信息項(xiàng)目工時(shí)信息應(yīng)用第二范式規(guī)范化工程號工程名稱職
33、工號姓名職務(wù)小時(shí)工資率工程號職工號工時(shí)圖-4 應(yīng)用第二范式工程表員工表項(xiàng)目工時(shí)表滿足第三范式嗎? 應(yīng)用第三范式規(guī)范化工程號工程名稱職工號姓名職務(wù)職務(wù)小時(shí)工資率工程號職工號工時(shí)工程表員工表職務(wù)表工程表課堂練習(xí)S公司商品銷售管理系統(tǒng)中員工表如下:Employees (員工號,姓名,性別,出生年月,聘任日期,工資,獎金,所在部門和部門主管) 其中獎金按工資*30%+工作年限*50計(jì)算而得。請對員工表進(jìn)行規(guī)范化。規(guī)范化和性能的關(guān)系 為滿足某種商業(yè)目標(biāo),數(shù)據(jù)庫性能比規(guī)范化數(shù)據(jù)庫更重要通過在給定的表中添加額外的字段,以大量減少需要從中搜索信息所需的時(shí)間通過在給定的表中插入計(jì)算列(如成績總分),以方便查詢進(jìn)
34、行規(guī)范化的同時(shí),還需要綜合考慮數(shù)據(jù)庫的性能??偨Y(jié)在需求分析階段,設(shè)計(jì)數(shù)據(jù)庫的一般步驟為:收集信息標(biāo)識對象標(biāo)識每個(gè)對象的屬性標(biāo)識對象之間的關(guān)系在概要設(shè)計(jì)階段和詳細(xì)設(shè)計(jì)階段,設(shè)計(jì)數(shù)據(jù)庫的步驟為:繪制E-R圖將E-R圖轉(zhuǎn)換為表格應(yīng)用三大范式規(guī)范化表格為了設(shè)計(jì)結(jié)構(gòu)良好的數(shù)據(jù)庫,需要遵守一些專門的規(guī)則,稱為數(shù)據(jù)庫的設(shè)計(jì)范式。第一范式(1NF)的目標(biāo):確保每列的原子性。第二范式(2NF)的目標(biāo):確保表中的每列,都和主鍵相關(guān) 。第三范式(3NF)的目標(biāo):確保每列都和主鍵列直接相關(guān),而不是間接相關(guān) 。單元二數(shù)據(jù)庫管理環(huán)境的建立 項(xiàng)目知識要點(diǎn)與目標(biāo)項(xiàng)目知識要點(diǎn)知識能力目標(biāo)學(xué)時(shí)2.1 任務(wù)1 了解數(shù)據(jù)庫的基礎(chǔ)知識
35、2.1.1 數(shù)據(jù)與數(shù)據(jù)庫2.1.2 數(shù)據(jù)庫技術(shù)的發(fā)展2.1.3數(shù)據(jù)庫管理系統(tǒng)(DBMS)2.1.4 數(shù)據(jù)庫系統(tǒng)的組成2.1.5數(shù)據(jù)庫系統(tǒng)的特點(diǎn)2.1.6常見的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)2.1.7結(jié)構(gòu)化查詢語言SQL2.2 任務(wù)2 安裝與配置MySQL數(shù)據(jù)庫2.2.1 MySQL服務(wù)器安裝2.2.2 AppServ套裝軟件的安裝與配置2.2.3連接與斷開服務(wù)器【情境】:安裝與配置數(shù)據(jù)庫【職業(yè)崗位】:數(shù)據(jù)庫管理員、操作員【典型工作任務(wù)】:安裝MySQL數(shù)據(jù)庫,配置數(shù)據(jù)庫【技能要求】:1、MySQL的安裝和配置2、MySQL運(yùn)行環(huán)境測試【知識要求】:1、數(shù)據(jù)庫管理系統(tǒng)組成2、服務(wù)器連接、啟動和運(yùn)行2項(xiàng)目實(shí)
36、訓(xùn)二安裝MySQL數(shù)據(jù)庫2任務(wù)一 了解數(shù)據(jù)庫系統(tǒng)的基本概念 數(shù)據(jù)庫服務(wù)器響應(yīng)和提供數(shù)據(jù)應(yīng)用程序客戶端操作和查詢數(shù) 據(jù) 庫應(yīng)用程序作用:響應(yīng)操作并顯示結(jié)果、向數(shù)據(jù)庫請求數(shù)據(jù)要求:美觀、操作簡單方便數(shù)據(jù)庫作用:存儲數(shù)據(jù)、檢索數(shù)據(jù)、生成新的數(shù)據(jù)要求:統(tǒng)一、安全、性能等數(shù)據(jù)庫應(yīng)用系統(tǒng)為何需要數(shù)據(jù)庫存儲數(shù)據(jù)的方法第一種方法:用大腦來記住數(shù)據(jù)第二種方法:寫在紙上第三種方法:寫在計(jì)算機(jī)的內(nèi)存中第四種方法:寫成磁盤文件數(shù)據(jù)庫系統(tǒng):管理大量的、持久的、可靠的、共享的數(shù)據(jù)的工具數(shù)據(jù)庫特點(diǎn):存儲大量數(shù)據(jù),方便檢索和訪問保持?jǐn)?shù)據(jù)信息的一致、完整共享和安全通過組合分析,產(chǎn)生新的有用信息數(shù)據(jù)庫的發(fā)展史萌芽階段文件系統(tǒng)使用
37、磁盤文件來存儲數(shù)據(jù)初級階段第一代數(shù)據(jù)庫出現(xiàn)了層次模型、網(wǎng)狀模型的數(shù)據(jù)庫中級階段第二代數(shù)據(jù)庫關(guān)系型數(shù)據(jù)庫和結(jié)構(gòu)化查詢語言高級階段新一代數(shù)據(jù)庫“關(guān)系-對象”型數(shù)據(jù)庫層次模型網(wǎng)狀模型數(shù)據(jù)庫 訂單 客戶 產(chǎn)品 產(chǎn)品數(shù)據(jù)庫表數(shù)據(jù)庫就是“數(shù)據(jù)”的“倉庫”數(shù)據(jù)庫由表、關(guān)系以及操作對象組成數(shù)據(jù)存放在表中數(shù) 據(jù) 表存儲過程視 圖. 所謂數(shù)據(jù)庫(Database, DB),是將數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲,具有較小的冗余度,較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可為各種用戶共享的數(shù)據(jù)集合。關(guān)系型數(shù)據(jù)庫列行(記錄)關(guān)系型數(shù)據(jù)庫關(guān)系模型使用的存儲結(jié)構(gòu)是多個(gè)二維表格,表中每一行稱為一條記錄,用來描述一個(gè)對象的信息;每一
38、列稱為一個(gè)字段,用來描述對象的一個(gè)屬性。數(shù)據(jù)表于數(shù)據(jù)庫之間存在相應(yīng)的關(guān)聯(lián),這些關(guān)聯(lián)將用來查詢相關(guān)的數(shù)據(jù)。數(shù)據(jù)庫管理系統(tǒng)馬蘭A004楊可A003劉開泰B008李新愛B007數(shù)據(jù)庫檢索數(shù)據(jù)插入數(shù)據(jù)更新數(shù)據(jù)刪除數(shù)據(jù)數(shù)據(jù)庫管理系統(tǒng)-DBMS 數(shù)據(jù)庫管理系統(tǒng)(DBMS-DataBase Management System )對收集到的大量數(shù)據(jù)進(jìn)行整理、加工、歸并、分類、計(jì)算、存儲等處理,產(chǎn)生新的數(shù)據(jù),以便反映事物或現(xiàn)象的本質(zhì)和特征及其內(nèi)在聯(lián)系。時(shí)下流行的DBMS簡介(1)OracleOracle公司的產(chǎn)品,世界上最好的數(shù)據(jù)庫系統(tǒng)“關(guān)系-對象”型數(shù)據(jù)庫支持70多種操作系統(tǒng),配置、管理和維護(hù)復(fù)雜主要滿足對銀
39、行、金融、保險(xiǎn)等企業(yè)、事業(yè)開發(fā)大型數(shù)據(jù)庫需求SQL ServerMicrosoft公司的產(chǎn)品,針對不同用戶群體的多個(gè)版本要求在Windows操作系統(tǒng)平臺上運(yùn)行易用性好時(shí)下流行的 DBMS簡介(2)MySQL瑞典MySQLAB公司開發(fā),被SUN公司收購,后Oracle收購Sun, 現(xiàn)在MySQL并入了Oracle旗下。體積小、速度快、成本低、開放源碼 廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中Access微軟公司推出的基于Windows的桌面關(guān)系數(shù)據(jù)庫管理系統(tǒng) ,Microsoft Office的成員之一優(yōu)點(diǎn) :存儲方式單一 、面向?qū)ο?、界面友好、易操作 、集成環(huán)境、處理多種數(shù)據(jù)信息 、支持
40、ODBC 小型數(shù)據(jù)庫,有局限性 :數(shù)據(jù)庫過大 、網(wǎng)站訪問頻繁 、記錄數(shù)過多性能會急劇下降 注意:招聘時(shí)通常要求“熟練使用SQL Server /Oracle /MySQL 一種或多種數(shù)據(jù)庫”結(jié)構(gòu)化查詢語言SQL2結(jié)構(gòu)化查詢語言SQL(Structured Query Language)SQL語言是用于關(guān)系數(shù)據(jù)庫查詢的結(jié)構(gòu)化語言,最早由Boyce和Chambedin在1974年提出,稱為SEQUEL語言。1976年,IBM公司的San Jose研究所在研制關(guān)系數(shù)據(jù)庫管理系統(tǒng)System R時(shí)修改為SEQUEL2,即目前的SQL語言。SQL語言集數(shù)據(jù)查詢(data query)、數(shù)據(jù)操縱(data
41、 manipulation)、數(shù)據(jù)定義(data definition)和數(shù)據(jù)控制(data control)功能于一體,充分體現(xiàn)了關(guān)系數(shù)據(jù)語言的特點(diǎn)和優(yōu)點(diǎn)。主要特點(diǎn)包括:(1)綜合統(tǒng)一 (2)高度非過程化(3)面向集合的操作方式(4)以同一種語法結(jié)構(gòu)提供兩種使用方式(5)語言簡潔,易學(xué)易用數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)(Database System, DBS)一般由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用戶結(jié)構(gòu)組成任務(wù)二 MySQL的安裝與配置 MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。在2008年1月16號被Sun公司收購。而2009年,
42、SUN又被Oracal收購。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。MySQL有如下優(yōu)勢。1、速度快。MySQL數(shù)據(jù)庫可能是目前能得到的最快的數(shù)據(jù)庫。2、連接性和安全性。MySQL是完全網(wǎng)絡(luò)化的,其數(shù)據(jù)庫可在因特網(wǎng)上訪問,因此,可以和任何地方的任何人共享數(shù)據(jù)庫,而且MySQL還能進(jìn)行訪問控制,能夠控制特定用戶不允許其訪問數(shù)據(jù)。3、可移植性。MySQL可運(yùn)行在各種版本的UNIX系統(tǒng)及其他非UNIX(如Windows和OS/2)系統(tǒng)上,從家用P
43、C到高級服務(wù)器都可運(yùn)行MySQL。4、支持SQL語言。MySQL支持這種現(xiàn)代數(shù)據(jù)庫系統(tǒng)都選用的語言。5、成本優(yōu)勢。MySQL對多數(shù)個(gè)人用戶來說是免費(fèi)的。MySQL的安裝(1)1. MySQL服務(wù)器的安裝(1)下載Windows版的MySQL 下載地址: /downloads/mysql/MySQL社區(qū)版是免費(fèi)的,有MSI和zip兩種安裝方式下載前先選擇安裝平臺(windows)和安裝文件方式(MSI或Zip)MySQL的安裝(2)(1)安裝完畢后選擇“Configure the MySQL server now”復(fù)選框進(jìn)入配置向?qū)?。配置類型,有兩種:Detailed Configuration
44、(詳細(xì)配置)Standard Configuration(標(biāo)準(zhǔn)配置)。標(biāo)準(zhǔn)配置選項(xiàng)適合想要快速啟動MySQL而不必考慮服務(wù)器配置的新用戶。詳細(xì)配置選項(xiàng)適合想要更加細(xì)粒度控制服務(wù)器配置的高級用戶。這里選擇Detailed Configuration。MySQL的安裝(3)(2)單擊“next”按鈕進(jìn)行服務(wù)器類型選擇服務(wù)器類型分為3種:Developer Machine(開發(fā)機(jī)器)Server Machine(服務(wù)器)Dedicated MySQL Server Machine(專用MySQL服務(wù)器)。鑒于只是初學(xué)MySQL,所以這里選擇Developer Machine。MySQL的安裝(4)(
45、3)單擊“next”按鈕進(jìn)入數(shù)據(jù)庫使用情況對話框,有3個(gè)選項(xiàng):Multifunctional Database(多功能數(shù)據(jù)庫)Transactional Database Only(只是事務(wù)處理數(shù)據(jù)庫)Non-Transactional Database Only(只是非事務(wù)處理數(shù)據(jù)庫)。其中多功能數(shù)據(jù)庫對InnoDB和MyISAM表都適用這里選擇“Multifunctional Database”。MySQL的安裝(5)(4)下一步進(jìn)入InnoDB表空間對話框,這里可以修改InnoDB表空間文件的位置,默認(rèn)位置是MySQL服務(wù)器數(shù)據(jù)目錄,這里不做修改,直接下一步。MySQL的安裝(6)(5)
46、接下來進(jìn)入并發(fā)連接選擇對話框Decision Support(決策支持)(DSS)/OLAP:如果服務(wù)器不需要大量的并行連接可以選擇該選項(xiàng);Online Transaction Processing(聯(lián)機(jī)事務(wù)處理)(OLTP):如果服務(wù)器需要大量的并行連接則選擇該選項(xiàng);Manual Setting(人工設(shè)置):選擇該選項(xiàng)可以手動設(shè)置服務(wù)器并行連接的最大數(shù)目。這里選擇“Decision Support(DSS)/ OLAP”。MySQL的安裝(7)(6)進(jìn)入聯(lián)網(wǎng)選項(xiàng)對話框。默認(rèn)情況是啟用TCP/IP網(wǎng)絡(luò),默認(rèn)端口為3306。這里不做修改,直接下一步。MySQL的安裝(8)(7)進(jìn)入字符集選擇對話
47、框,前面的選項(xiàng)一直是按默認(rèn)設(shè)置進(jìn)行的,這里要做一些修改。選中“Manual Selected Default Character Set/Collation”選項(xiàng),在“Character Set”選框中將latin1修改為gb2312。MySQL的安裝(9)(8)下一步進(jìn)入服務(wù)選項(xiàng)對話框,服務(wù)名為MySQL,這里不做修改。(9)下一步是安全選項(xiàng)對話框在密碼輸入框中輸入root用戶的密碼。要想防止通過網(wǎng)絡(luò)以root登錄,選中Root may only connect from localhost(只允許從本機(jī)登錄連接root)選項(xiàng)旁邊的框。要想創(chuàng)建一個(gè)匿名用戶賬戶,選中Create An Ano
48、nymous Account(創(chuàng)建匿名賬戶)選項(xiàng)旁邊的框。由于安全原因,這里不建議選擇這項(xiàng)。MySQL的安裝(10)(10)設(shè)置完畢后,隨后一步是提交配置,單擊“execute”按鈕即可完成。注意:對不同的操作系統(tǒng)和不同版本的MySQL,安裝過程可能有所不同,這里只舉MySQL 5.1的安裝例子。以上步驟完成后,MySQL服務(wù)器就已經(jīng)可以使用了。(11)MySQL安裝和配置完后,打開“開始”“程序”“MySQL”“MySQL Server 5.1”“MySQL Command Line Client”,進(jìn)入到MySQL客戶端,在客戶端窗口輸入密碼,就以root用戶身份登錄到MySQL服務(wù)器,在
49、命令行中輸入SQL語句就可以操作MySQL數(shù)據(jù)庫。MySQL的安裝(11)AppServ軟件的安裝(1)開發(fā)網(wǎng)絡(luò)信息管理系統(tǒng)軟件需要安裝一系列軟件產(chǎn)品,單獨(dú)安裝這些軟件比較煩瑣。因此AppServ軟件壓縮包整合Apache(服務(wù)器軟件)、PHP(網(wǎng)頁程序設(shè)計(jì)語言)、MySQL(數(shù)據(jù)庫管理系統(tǒng)軟件)、PhpMyAdmin(圖形界面的數(shù)據(jù)庫管理軟件)四個(gè)軟件進(jìn)行形成一套完整的軟件安裝包,執(zhí)行AppServ軟件的安裝程序后,就可以安裝上述四個(gè)軟件產(chǎn)品了。AppServ 2.5.8軟件各軟件版本是PHP v5.2.1、Apache v2.2.4、MySQL v5.0.27和phpMyAdmin v2.
50、9.2。AppServ軟件有很多軟件版本,本項(xiàng)目介紹的是AppServ2.5.9版本,壓縮包為appserv-win32-2.5.9_PConline.exe為例進(jìn)行介紹 1. 停止IIS服務(wù)器軟件工作 目前IIS和Apache軟件都是服務(wù)器軟件。只要計(jì)算機(jī)中安裝其中的一個(gè)服務(wù)器軟件產(chǎn)品計(jì)算機(jī)就可以成為網(wǎng)站服務(wù)器了。要安裝AppServ軟件,首先需要先檢查計(jì)算機(jī)中是否安裝或啟動了IIS服務(wù)器軟件。如果計(jì)算機(jī)中安裝了IIS服務(wù)器軟件,那么需要先停止IIS服務(wù)器軟件工作后才能安裝AppServ軟件。這是因?yàn)槿绻?jì)算機(jī)已經(jīng)自動啟動IIS服務(wù)器軟件工作,在這種情況下再安裝Apache服務(wù)器軟件會導(dǎo)致通
51、訊端口地址沖突,造成新安裝的AppServ服務(wù)器軟件無法正常工作。因此安裝AppServ軟件前要停止IIS服務(wù)器軟件工作。 停止計(jì)算機(jī)安裝的IIS服務(wù)器軟件工作的方法是:在Windows系統(tǒng)的桌面,選擇“開始-控制面板-管理工具-服務(wù)”選項(xiàng)AppServ軟件的安裝(2)AppServ軟件的安裝(3)提示:并非所有的計(jì)算機(jī)中都安裝有IIS服務(wù)器軟件,如果在上圖所示的窗口中沒有顯示“IIS Admin”的名稱,說明計(jì)算機(jī)中沒有安裝IIS服務(wù)器軟件,因此可以直接安裝Apache服務(wù)器軟件。 2.暫停殺毒軟件工作。 有時(shí)為了順利安裝AppServ軟件需要暫時(shí)停止殺毒軟件的工作。找到AppServ軟件的
52、安裝程序,雙擊鼠標(biāo)鍵這樣可以執(zhí)行安裝程序,出現(xiàn)如下圖所示的窗口。AppServ軟件的安裝(4)選擇安裝目錄:默認(rèn)為c:AppServAppServ軟件的安裝(5)勾選要安裝的軟件,本例勾選了全部選項(xiàng) AppServ軟件的安裝(6)輸入網(wǎng)站域名、網(wǎng)站系統(tǒng)管理員的電子郵箱地址和端口可根據(jù)需要設(shè)置網(wǎng)站域名和網(wǎng)站系統(tǒng)管理員的電子郵箱地址,最好設(shè)置成為已經(jīng)申請到的網(wǎng)站域名和管理員的電子郵箱。如果只做練習(xí),那么可以隨意設(shè)置網(wǎng)站域名和電子郵箱的內(nèi)容。 (默認(rèn)端口為80) AppServ軟件的安裝(7)設(shè)置名稱是“root”的MySQL數(shù)據(jù)庫管理員的登錄密碼 本例在“Enter root password”
53、和“Re-enter root password”位置輸入的密碼是“123456”。在“ Character Sets and Collations”位置選擇MySQL數(shù)據(jù)庫的字符集代碼。本例選擇“GB2312 Simplified Chinese”,這樣MySQL數(shù)據(jù)庫和數(shù)據(jù)表的數(shù)據(jù)可以使用漢字。這個(gè)設(shè)置很重要設(shè)置數(shù)據(jù)庫管理員的登錄密碼。AppServ軟件的安裝(8)勾選“Start Apache”和“Start MySQL”選項(xiàng),表示執(zhí)行完安裝程序后,計(jì)算機(jī)自動啟動Apache服務(wù)器軟件和 MySQL數(shù)據(jù)庫軟件。點(diǎn)擊“Finish”按鈕完成。 AppServ軟件的安裝(9)AppServ安
54、裝完畢后,選擇Windows的“資源管理器”可以查看計(jì)算機(jī)“c盤”文件夾的安裝情況,出現(xiàn)了AppServ軟件的四個(gè)組件。AppServ軟件的安裝(10)完成AppServ軟件安裝后,軟件的目錄結(jié)構(gòu)是:C:AppServapache2.2 存儲apache2.2服務(wù)器軟件。C:AppServphp5 存儲PHP5網(wǎng)頁程序開發(fā)工具軟件。C:AppServMySQL 存儲MySQL數(shù)據(jù)庫管理系統(tǒng)軟件。C:AppServMySQLdata. 存儲數(shù)據(jù)庫、數(shù)據(jù)表文件。C:AppServwww. 存儲網(wǎng)頁程序文件。1. 測試Apache服務(wù)器軟件安裝完AppServ服務(wù)器軟件后默認(rèn)的IP地址是“”。所以在
55、瀏覽器的地址欄輸入“”,出現(xiàn)下圖所示的窗口,顯示AppServ軟件自帶的主頁網(wǎng)頁程序,表示Apache服務(wù)器軟件安裝成功。AppServ軟件的安裝測試(1) 在Windwos系統(tǒng)的桌面,選擇“開始-程序-AppServ-MySQL Command Line Client”選項(xiàng),出現(xiàn)下圖窗口,輸入數(shù)據(jù)庫管理員的密碼(123456) ,出現(xiàn)“mysql”提示符,表示MySQL數(shù)據(jù)庫管理系統(tǒng)軟件安裝成功。AppServ軟件的安裝測試(2)3、測試PHP網(wǎng)頁程序設(shè)計(jì)軟件在瀏覽器的地址欄輸入“/phpinfo”,出現(xiàn)下圖所示的窗口,表示PHP軟件安裝成功。AppServ軟件的安裝測試(3)4. 測試ph
56、pMyAdmin軟件在瀏覽器的地址欄輸入:/phpmyadmin出現(xiàn)下圖所示,表示phpMyAdmin軟件安裝成功 。在上圖窗口,“用戶名(U):”處輸入“root”,在“密碼(P):”處輸入“123456”,單擊“確定”按鈕出現(xiàn)下圖所示的窗口,表示正確進(jìn)入phpMyAdmin軟件。AppServ軟件的安裝測試(4)配置AppServ軟件(1)AppServ軟件安裝后會自行進(jìn)行參數(shù)配置,如果沒有特殊需要,可以不做本節(jié)介紹的參數(shù)配置 ,因?yàn)锳ppServ軟件在安裝時(shí)自動配置好了相關(guān)參數(shù)。如果需要配置參數(shù),可以按照本節(jié)介紹的相關(guān)內(nèi)容進(jìn)行設(shè)置。提示:作為初學(xué)者建議不要輕易修改AppServ軟件的配置
57、參數(shù)。如果設(shè)置不當(dāng),將導(dǎo)致系統(tǒng)故障。網(wǎng)站默認(rèn)的文件夾,可修改。 AppServ軟件安裝后會自行進(jìn)行參數(shù)配置,如果沒有特殊需要,可以不做本節(jié)介紹的參數(shù)配置 ,因?yàn)锳ppServ軟件在安裝時(shí)自動配置好了相關(guān)參數(shù)。如果需要配置參數(shù),可以按照本節(jié)介紹的相關(guān)內(nèi)容進(jìn)行設(shè)置。提示:作為初學(xué)者建議不要輕易修改AppServ軟件的配置參數(shù)。如果設(shè)置不當(dāng),將導(dǎo)致系統(tǒng)故障。 在Windwos系統(tǒng)的桌面,選擇“開始-程序-AppServ-Configuration Server-Apache Edit the httpd.conf configuration File”選項(xiàng),出現(xiàn)下圖 :配置Apache軟件配置PHP
58、軟件在桌面選擇“開始-程序-AppServ-Configuration Server-PHP Edit the configuration File”選項(xiàng),出現(xiàn)下圖的窗口。為了啟動PHP軟件對MySQL軟件的支持模塊,把語句:;extension=php_mysql.dll換為語句: extension=php_mysql.dll 去掉分號(;)。配置MySQL軟件在Windwos系統(tǒng)的桌面,選擇“開始-程序-AppServ-Configuration Server-MySQL Edit the my.ini configuration File”選項(xiàng),出現(xiàn)下圖。MySQL軟件安裝完畢后為了能
59、夠讓PHP軟件處理MySQL軟件的數(shù)據(jù),還需要做必要的配置。按照下列要求格式配置語句:mysql.defalt_port=3306mysql.defalt_host=localhostmysql.defalt_user=rootmysql.defalt_password=123456在這里mysql.defalt_port表示MySQL的網(wǎng)絡(luò)端口。mysql.defalt_host表示服務(wù)器的名稱,localhost是本地計(jì)算機(jī)。mysql.defalt_user表示登錄MySQL的用戶名,root是默認(rèn)用戶名。mysql.defalt_password表示訪問MySQL數(shù)據(jù)庫的密碼。連接服務(wù)
60、器(1)選擇Windows桌面的“開始-運(yùn)行”選項(xiàng),輸入正確的命令和用戶名及密碼后,可以登錄到MySQL服務(wù)器。命令格式:mysql -h u -p提示:命令行中的-u、-p必須小寫。和分別代表MySQL服務(wù)器運(yùn)行的主機(jī)名和MySQL賬戶用戶名。設(shè)置時(shí)替換為正確的值。連接與斷開服務(wù)器(2)直接以用戶名root的數(shù)據(jù)庫管理員身份登錄到數(shù)據(jù)庫服務(wù)器。 選擇Windows桌面的“開始-程序-appserv-MySQL command line client”選項(xiàng),出現(xiàn)如上圖所示的窗口,輸入正確的數(shù)據(jù)庫管理員的密碼,出現(xiàn)“mysql”提示符表示正確登錄MySQL服務(wù)器。密碼是“123456” 。(3)
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年農(nóng)村農(nóng)業(yè)(休閑農(nóng)業(yè)經(jīng)營與管理)技能及理論知識試題庫及答案1套
- 2025版新教材高考英語全程一輪總復(fù)習(xí)40分寫作規(guī)范練一新人教版
- 2024年汽車臨時(shí)租賃服務(wù)與二手車銷售網(wǎng)絡(luò)合作協(xié)議3篇
- 2025版高考地理第一部分微專題小練習(xí)專練22自然地理環(huán)境的整體性
- 2024年度學(xué)校與學(xué)生知識產(chǎn)權(quán)保護(hù)協(xié)議3篇
- Unit 1 A new start教學(xué)實(shí)錄2024-2025學(xué)年外研版(2024)初中英語七年級上冊
- 2024版出國派遣務(wù)工人員安全教育與培訓(xùn)協(xié)議3篇
- 2021醫(yī)院護(hù)士節(jié)活動總結(jié)范文
- 2024年度安全員應(yīng)急演練策劃合同范本3篇
- 2021年元旦手機(jī)促銷活動方案范文
- 國開2024年秋季《形勢與政策》大作業(yè)答案
- 北師大版四年級上冊除法豎式計(jì)算題300道及答案
- 2024-2030年中國橡膠伸縮縫行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報(bào)告
- 新疆和田地區(qū)2023-2024學(xué)年八年級上學(xué)期期末考試英語試題(含聽力)
- 波形護(hù)欄安裝施工合同
- 七年級上冊歷史-七上歷史 期中復(fù)習(xí)【課件】
- 瑜伽合同范本
- 魔術(shù)表演娛樂行業(yè)研究報(bào)告
- JT∕T 795-2023 事故汽車修復(fù)技術(shù)規(guī)范
- 幼兒園健康領(lǐng)域《臉上的表情》課件
- 二年級乘除法口算題計(jì)算練習(xí)大全2000題(可直接打印)
評論
0/150
提交評論