數(shù)據(jù)庫系統(tǒng)原理 課件全套 王勛 第1-10章 概述 -數(shù)據(jù)庫設(shè)計_第1頁
數(shù)據(jù)庫系統(tǒng)原理 課件全套 王勛 第1-10章 概述 -數(shù)據(jù)庫設(shè)計_第2頁
數(shù)據(jù)庫系統(tǒng)原理 課件全套 王勛 第1-10章 概述 -數(shù)據(jù)庫設(shè)計_第3頁
數(shù)據(jù)庫系統(tǒng)原理 課件全套 王勛 第1-10章 概述 -數(shù)據(jù)庫設(shè)計_第4頁
數(shù)據(jù)庫系統(tǒng)原理 課件全套 王勛 第1-10章 概述 -數(shù)據(jù)庫設(shè)計_第5頁
已閱讀5頁,還剩661頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第1章概述數(shù)據(jù)→處理→信息→分析/決策

數(shù)據(jù)庫技術(shù)→數(shù)據(jù)管理最有效的手段。1.1數(shù)據(jù)庫實例

學(xué)生選課數(shù)據(jù)庫/網(wǎng)上書店數(shù)據(jù)庫1.2基本知識

數(shù)據(jù)/數(shù)據(jù)庫/數(shù)據(jù)庫管理系統(tǒng)/數(shù)據(jù)庫系統(tǒng)/數(shù)據(jù)管理技術(shù)1.3數(shù)據(jù)模型

概念/組成要素/分類1.4數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)

模式結(jié)構(gòu)

/體系結(jié)構(gòu)11.1數(shù)據(jù)庫實例1.1.1學(xué)生選課數(shù)據(jù)庫2學(xué)號SNo姓名SName性別SSex年齡SAge電話SPhone照片SPhoto微信MInfoS00001楊康男2013666612316Xn.jpgXn123456S00002穆念慈女1913666612326Pj.jpgpj234567S00003歐陽克男2513666612336Ws.jpgWs345678S00004周伯通男2213666612346Wd.jpgWd456789表1.1學(xué)生Student1.1數(shù)據(jù)庫實例1.1.1學(xué)生選課數(shù)據(jù)庫3表1.2課程Course課程號CNo課程名CName先修課CPNo開課學(xué)期Seme學(xué)時Peri學(xué)分CredC001高等數(shù)學(xué)Null1644C002數(shù)據(jù)庫原理C0033483C003Python語言C00124831.1數(shù)據(jù)庫實例1.1.1學(xué)生選課數(shù)據(jù)庫4表1.3選課StudentCourse學(xué)號SNo課程號CNo成績Grade

學(xué)號SNo課程號CNo成績GradeS00001C00199

S00002C00295S00001C00298

S00003C00188S00001C00396

S00003C00389S00002C00198

S00004C002991.1數(shù)據(jù)庫實例1.1.2電子書店EBook

圖書Book/客戶Cust/出版社Press/購買Buy圖書(書號,書名,作者,社號,版次,定價,進(jìn)價,售價)Book(BNo,BName,Author,PNo,EditNo,Price,PPrice,SPrice)客戶(戶號,戶名,性別,生日,電話,婚否,照片,郵箱)Cust(CNo,CName,CSex,Birth,Phone,Marry,Photo,Email)出版社(社號,社名,郵編,社址,電話,郵箱,網(wǎng)址)Press(PNo,PName,PCode,PAddr,Phone,Email,HPage)購買(戶號,書號,購買日期)Buy(CNo,BNo,PDate)5圖書Book書號BNo書名BName作者Author社號PNo版次EditNo定價Price進(jìn)價PPrice售價SPriceISBN978-7-04-040664-1數(shù)據(jù)庫系統(tǒng)概論王珊ISBN978-7-04539.62025ISBN978-7-302-33894-9Java程序設(shè)計教程雍俊海ISBN978-7-3023692636ISBN978-7-5612-2591-2圖像技術(shù)韓培友ISBN978-7-56121361216ISBN978-7-5612-2123-1IDL可視化分析韓培友ISBN978-7-56121451922ISBN978-7-5178-0167-2Access數(shù)據(jù)庫應(yīng)用韓培友ISBN978-7-81140139.81619ISBN978-7-81140-582-8MySQL實驗指導(dǎo)韓培友ISBN978-7-8114012510156客戶Cust戶號CNo戶名CName性別CSex生日Birth電話Phone婚否Marry照片Photo郵箱EMailC001郭靖男1966-06-0113611122233是二進(jìn)制數(shù)據(jù)Hu.Jpg123450@C002黃藥師男1979-09-1013911122233是NULL543210@C003黃蓉女1988-10-0613622233355是NULL122220@C004洪七公男1999-06-1613922233355否NULL222220@C005梅超風(fēng)女2002-07-1113655566699否NULL345220@C006梅超風(fēng)女2006-08-0813955566699否NULL562220@7購買Buy戶號CNo書號BNo購買日期PDate

戶號CNo書號BNo購買日期PDateC001ISBN978-7-04-040664-12014-10-26

C002ISBN978-7-04-040664-12014-11-22C001ISBN978-7-302-33894-92014-06-16

C002ISBN978-7-302-33894-92014-08-12C001ISBN978-7-5612-2591-22010-01-12

C003ISBN978-7-5612-2591-22011-11-13C001ISBN978-7-5612-2123-12006-12-01

C005ISBN978-7-5612-2123-12008-10-09C001ISBN978-7-5178-0167-22014-03-19

C006ISBN978-7-5178-0167-22015-06-18C001ISBN978-7-81140-582-82012-09-15

C006ISBN978-7-81140-582-82013-10-178出版社Press社號PNo社名PName郵編PCode社址PAddr電話Phone郵箱EMail網(wǎng)址HPageISBN978-7-04高等教育出版社100120北京市西城區(qū)德外大街4號(010)58581118Gjdzfwb@ISBN978-7-302清華大學(xué)出版社100084清華大學(xué)學(xué)研大廈A座(010)62781733e-sale@www.tup.tsinghua.ISBN978-7-115人民郵電出版社100164北京市豐臺區(qū)成壽寺路11號(010)81055075Youdianhr@ISBN978-7-5612西北工業(yè)大學(xué)出版社710072西安市友誼西路127號(029)88493844Fxb@ISBN978-7-81140浙江工商大學(xué)出版社310012杭州市教工路198號(0571)8882370361627291@9分析電子書店數(shù)據(jù)庫:四張表

一張表是否可行?

數(shù)據(jù)只能以表的形式存儲嗎?

是否存在規(guī)范的數(shù)據(jù)結(jié)構(gòu)來組織數(shù)據(jù)?思考:使用四張表優(yōu)于使用一張表?請從多方面進(jìn)行分析提示:

從數(shù)據(jù)冗余、插入異常、修改異常、刪除異常等方面分析結(jié)論:對于實際應(yīng)用,設(shè)計數(shù)據(jù)庫中表的個數(shù),規(guī)范每個表的屬性個數(shù)以及每個屬性的特征要求、約束條件和依賴關(guān)系等,最終實現(xiàn)安全穩(wěn)定合理的數(shù)據(jù)庫系統(tǒng)。

數(shù)據(jù)庫技術(shù)會給出正確答案!101.2數(shù)據(jù)庫技術(shù)基本知識對象:數(shù)據(jù)內(nèi)容:

通過對數(shù)據(jù)的統(tǒng)一組織和管理,按照指定的數(shù)據(jù)結(jié)構(gòu)建立相應(yīng)的數(shù)據(jù)庫;利用數(shù)據(jù)庫管理系統(tǒng)實現(xiàn)對數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行添加、修改、刪除、查詢、計算和報表等多功能的應(yīng)用系統(tǒng)目的:利用數(shù)據(jù)庫系統(tǒng)實現(xiàn)對數(shù)據(jù)的處理和分析概念:數(shù)據(jù)/數(shù)據(jù)庫/數(shù)據(jù)庫管理系統(tǒng)/數(shù)據(jù)庫系統(tǒng)發(fā)展:人工管理/文件管理/數(shù)據(jù)庫系統(tǒng)/數(shù)據(jù)倉庫DW(數(shù)據(jù)挖掘DM)/大數(shù)據(jù)(BigData)111.2.1數(shù)據(jù)數(shù)據(jù)(Data):表示客觀事物的符號分類:文本、圖形、圖像、音頻、視頻、動畫等類型

文本→數(shù)值、字符、日期、時間、邏輯等類型例如:圖書定價:39.6書名:圖像技術(shù)生日:1966年6月6日(1966-6-6)婚否:是照片:Cat.jpg起飛時間:16時16分16秒(16:16:16)等121.2.1數(shù)據(jù)數(shù)值:表示年齡、工資和單價等大小多少的數(shù)據(jù)。例如:16,-10和26.6。字符:表示人名、地名和物品等名稱的數(shù)據(jù)。例如:李明、杭州和圖書。日期:表示工作日期、出生日期和入黨日期等數(shù)據(jù)。例如:2016年6月6日。時間:表示上班時間、休息時間和開飯時間等數(shù)據(jù)。例如:10:12:19。邏輯:表示是否結(jié)婚、是否黨員等邏輯判斷結(jié)果的數(shù)據(jù)。例如:真和假。圖形:表示直線、三角形和圓形等幾何圖形的數(shù)據(jù)。例如:正方形和五角星。圖像:表示人物照片、風(fēng)景照片和遙感圖像等數(shù)據(jù)。例如:貓的照片Cat.jpg。音頻:表示語音、聲效和音樂等數(shù)據(jù)。例如:一段錄音和飛機(jī)起飛的聲音。視頻:表示MTV和電影剪輯等數(shù)據(jù)。例如:精彩電影剪輯Robot.mpg。動畫:計算機(jī)三維動畫的數(shù)據(jù)。例如:Flash動畫Fly.fla和3D動畫Audi.3ds。13多媒體數(shù)據(jù)/信息多媒體數(shù)據(jù):文本、圖形、聲音、圖像、視頻和動畫等數(shù)據(jù)的集合,稱為多媒體數(shù)據(jù)(Multimedia

Data)例如:網(wǎng)站及其網(wǎng)頁和素材信息:信息來源于數(shù)據(jù),數(shù)據(jù)是信息的載體。信息是數(shù)據(jù)處理后有價值的數(shù)據(jù)原始數(shù)據(jù)需要進(jìn)行數(shù)據(jù)處理,才能成為真正有價值的信息141.2.2數(shù)據(jù)庫數(shù)據(jù)庫(DataBase,DB):長期存儲在計算機(jī)內(nèi),有組織可共享的大量數(shù)據(jù)的集合。即:存放數(shù)據(jù)的電子倉庫。數(shù)據(jù)庫對所有的數(shù)據(jù),按照指定的數(shù)據(jù)模型實行統(tǒng)一的組織、存儲和管理。數(shù)據(jù)庫獨立于程序而存在,并提供給不同的用戶共享。

例如:圖書、客戶、出版社和購買等組成電子書店數(shù)據(jù)庫EBook特點:數(shù)據(jù)結(jié)構(gòu)化存儲、冗余度低,獨立性高、共享和易擴(kuò)展等多媒體數(shù)據(jù)庫(Multimedia

DataBase,MDB):支持多媒體數(shù)據(jù)的數(shù)據(jù)庫結(jié)果:數(shù)據(jù)庫是數(shù)據(jù)的歸宿。數(shù)據(jù)經(jīng)過結(jié)構(gòu)化處理,按照統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)存入數(shù)據(jù)庫,進(jìn)而實現(xiàn)數(shù)據(jù)共享。151.2.3數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)(DataBaseManagementSystem,DBMS)是提供給用戶,并幫助用戶建立、使用和管理數(shù)據(jù)庫的軟件系統(tǒng)管理數(shù)據(jù)的軟件;用于維護(hù)數(shù)據(jù)庫、接受和完成用戶提出的訪問數(shù)據(jù)庫的請求。例如:微軟公司的SQLServer和Access、甲骨文公司的Oracle、IBM公司的DB2和開源的MySQL等目的:使用數(shù)據(jù)庫,并對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行數(shù)據(jù)處理和分析,數(shù)據(jù)庫管理系統(tǒng)是幫助達(dá)到這一目的的工具和手段作用:DBMS作為數(shù)據(jù)庫系統(tǒng)的核心,建立在操作系統(tǒng)OS之上,位于OS與用戶之間的一個數(shù)據(jù)管理軟件,負(fù)責(zé)對DB進(jìn)行統(tǒng)一的管理和控制。保證了數(shù)據(jù)的安全性和完整性,同時提供了多用戶并發(fā)控制和數(shù)據(jù)恢復(fù)機(jī)制。科學(xué)地組織和存儲數(shù)據(jù)、高效地獲取和維護(hù)數(shù)據(jù)16數(shù)據(jù)庫管理系統(tǒng)的功能數(shù)據(jù)定義:用于定義數(shù)據(jù)的數(shù)據(jù)定義語言(DataDefinitionLanguage,DDL),利用DDL可以方便的定義數(shù)據(jù)庫的數(shù)據(jù)對象及其關(guān)系數(shù)據(jù)操縱:用于操作數(shù)據(jù)的數(shù)據(jù)操縱語言(DataManipulation

Language,DML),利用DML可以靈活方便的對數(shù)據(jù)庫進(jìn)行插入、修改、刪除、查詢和報表等操作事務(wù)和運行管理:用于實現(xiàn)對數(shù)據(jù)庫的安全性、完整性、并發(fā)性和恢復(fù)性等進(jìn)行保護(hù)控制的數(shù)據(jù)控制語言(DataControlLanguage,DCL),以保證數(shù)據(jù)的安全和完整組織、存儲和管理數(shù)據(jù):實現(xiàn)對數(shù)據(jù)庫的統(tǒng)一組織、存儲和管理,確定數(shù)據(jù)庫文件的存儲結(jié)構(gòu)和訪問方式,減少數(shù)據(jù)冗余,提高數(shù)據(jù)庫的利用率數(shù)據(jù)庫的建立和維護(hù):數(shù)據(jù)定義、操縱、控制和存貯的具體實現(xiàn);數(shù)據(jù)庫的備份與重組重構(gòu)、性能監(jiān)視與分析等維護(hù)任務(wù)171.2.4數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)(DataBaseSystem,DBS):在計算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后,由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、開發(fā)工具、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用戶等構(gòu)成的完整系統(tǒng)。組成:由硬件、軟件和人員等三大部分組成硬件:計算機(jī)硬件和數(shù)據(jù)庫專用硬件。計算機(jī)硬件:計算機(jī)的CPU、內(nèi)存、硬盤、交換機(jī)和路由器等數(shù)據(jù)庫專用硬件:快速存取數(shù)據(jù)的磁盤陣列、磁帶陣列或者光盤陣列、快速傳輸設(shè)備和數(shù)據(jù)備份設(shè)備等軟件:操作系統(tǒng)(OperatingSystem,OS)、DBMS、開發(fā)工具(程序設(shè)計語言和專用工具)和應(yīng)用系統(tǒng)等人員:數(shù)據(jù)庫設(shè)計員、程序員、數(shù)據(jù)庫管理員和用戶等。181.2.4數(shù)據(jù)庫系統(tǒng)人員:數(shù)據(jù)庫設(shè)計員、程序員、數(shù)據(jù)庫管理員和用戶等。數(shù)據(jù)庫設(shè)計員:負(fù)責(zé)系統(tǒng)的需求分析、性能分析、概念結(jié)構(gòu)、邏輯結(jié)構(gòu)和物理結(jié)構(gòu)設(shè)計等。程序員:主要負(fù)責(zé)應(yīng)用系統(tǒng)的設(shè)計、實現(xiàn)和測試。數(shù)據(jù)庫管理員(DataBaseAdministrator,DBA):對數(shù)據(jù)庫進(jìn)行建立、使用和維護(hù)等的專職管理人員。DBA應(yīng)該與數(shù)據(jù)庫設(shè)計員、程序員和用戶,共同參與數(shù)據(jù)庫設(shè)計。19DBA的職責(zé)決定數(shù)據(jù)庫的信息內(nèi)容和結(jié)構(gòu)根據(jù)存儲的數(shù)據(jù),對數(shù)據(jù)庫的信息內(nèi)容和結(jié)構(gòu)作統(tǒng)一的結(jié)構(gòu)化處理。決定數(shù)據(jù)庫的存儲結(jié)構(gòu)和存取策略:確定數(shù)據(jù)在存儲設(shè)備上的存儲結(jié)構(gòu)和存取策略,提高存取效率和存儲空間的利用率。定義數(shù)據(jù)的安全性和完整性約束:定義用戶對數(shù)據(jù)庫的存取權(quán)限、數(shù)據(jù)的保密級別和完整性約束條件,從而保證數(shù)據(jù)庫的安全性和完整性監(jiān)控數(shù)據(jù)庫的使用和運行:DBA負(fù)責(zé)監(jiān)視數(shù)據(jù)庫系統(tǒng)運行的整個過程,并且及時處理運行過程中出現(xiàn)的問題。數(shù)據(jù)庫的改進(jìn)、重組和重構(gòu):分析系統(tǒng)運行的性能指標(biāo),根據(jù)實際情況,不斷改進(jìn)數(shù)據(jù)庫設(shè)計。根據(jù)影響系統(tǒng)性能的因素,DBA有權(quán)定期對數(shù)據(jù)庫進(jìn)行重組織和重構(gòu)造,以提高整個系統(tǒng)的性能。20數(shù)據(jù)庫系統(tǒng)21用戶1DB…

DBA數(shù)據(jù)庫專用工具應(yīng)用系統(tǒng)用戶n程序設(shè)計語言DBMSOS開發(fā)工具數(shù)據(jù)庫系統(tǒng)與計算機(jī)系統(tǒng)的關(guān)系22用戶應(yīng)用系統(tǒng)開發(fā)工具DBMSOS

硬件1.2.5

數(shù)據(jù)管理技術(shù)數(shù)據(jù)管理技術(shù)經(jīng)歷的階段:人工管理文件管理數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)倉庫大數(shù)據(jù)231.人工管理階段利用原始計算機(jī)進(jìn)行數(shù)據(jù)處理的初級階段。程序員采用人工方式進(jìn)行數(shù)據(jù)處理,數(shù)據(jù)處理的速度慢,準(zhǔn)確性差。數(shù)據(jù)不保存,沒有結(jié)構(gòu)化

數(shù)據(jù)一般不予保存,而且沒有經(jīng)過統(tǒng)一結(jié)構(gòu)化管理數(shù)據(jù)不能共享

一個應(yīng)用程序?qū)?yīng)一組數(shù)據(jù)集合,使得數(shù)據(jù)不能共享應(yīng)用程序管理數(shù)據(jù):計算機(jī)沒有相應(yīng)的軟件管理數(shù)據(jù),數(shù)據(jù)需要應(yīng)用程序自行管理數(shù)據(jù)不具獨立性:數(shù)據(jù)和程序不具有相互獨立性,數(shù)據(jù)依賴于相應(yīng)的應(yīng)用程序。24人工管理階段應(yīng)用程序與數(shù)據(jù)集合之間的關(guān)系25應(yīng)用程序1數(shù)據(jù)集合1應(yīng)用程序n數(shù)據(jù)集合n??????2.文件系統(tǒng)階段數(shù)據(jù)以文件方式存儲,對數(shù)據(jù)文件進(jìn)行統(tǒng)一組織、存儲和管理,加快了數(shù)據(jù)處理速度,提高了準(zhǔn)確性。數(shù)據(jù)可以保存,沒有結(jié)構(gòu)化。數(shù)據(jù)可以長期保存,仍然沒有經(jīng)過統(tǒng)一結(jié)構(gòu)化管理。數(shù)據(jù)不能共享。一個應(yīng)用程序?qū)?yīng)一組文件,使得數(shù)據(jù)文件不能共享。文件系統(tǒng)管理數(shù)據(jù)。盡管計算機(jī)提供了文件管理系統(tǒng),對文件進(jìn)行統(tǒng)一管理,但是每個應(yīng)用程序仍然只能使用與自己相應(yīng)的文件組。數(shù)據(jù)不具獨立性:數(shù)據(jù)和程序不具有相互獨立性,數(shù)據(jù)依賴于相應(yīng)的應(yīng)用程序。數(shù)據(jù)冗余高:由于數(shù)據(jù)不能共享,因此存在大量的冗余數(shù)據(jù),浪費存儲空間。26文件系統(tǒng)階段應(yīng)用程序與文件組之間的關(guān)系27…應(yīng)用程序1文件組1應(yīng)用程序n文件組n…文件管理系統(tǒng)3.?dāng)?shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)結(jié)構(gòu)化且易擴(kuò)充。數(shù)據(jù)進(jìn)行有組織的統(tǒng)一結(jié)構(gòu)化管理,按照統(tǒng)一規(guī)范的結(jié)構(gòu)進(jìn)行永久存儲,實現(xiàn)整體數(shù)據(jù)的結(jié)構(gòu)化數(shù)據(jù)庫管理系統(tǒng)管理數(shù)據(jù)。功能強(qiáng)大,對數(shù)據(jù)進(jìn)行統(tǒng)一管理和控制;提供了數(shù)據(jù)安全性保護(hù)、數(shù)據(jù)完整性約束、多用戶并發(fā)控制和數(shù)據(jù)庫恢復(fù)等數(shù)據(jù)獨立性高。真正實現(xiàn)程序和數(shù)據(jù)的分離管理,程序和數(shù)據(jù)既相互獨立,程序又可以調(diào)用數(shù)據(jù),從而具有較高的數(shù)據(jù)和程序的獨立性。如果邏輯結(jié)構(gòu)或者物理結(jié)構(gòu)發(fā)生變化時,應(yīng)用程序可以不改,或少該,減輕工作數(shù)據(jù)共享性高。數(shù)據(jù)面向整個系統(tǒng),不面向應(yīng)用程序,從而具有共享性數(shù)據(jù)冗余度低。由于數(shù)據(jù)可以共享,因此只需要保留較少的用于數(shù)據(jù)管理的冗余數(shù)據(jù),從而節(jié)省了存儲空間。28數(shù)據(jù)庫系統(tǒng)階段應(yīng)用程序與數(shù)據(jù)庫之間的關(guān)系29應(yīng)用程序1應(yīng)用程序n…數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)1.3數(shù)據(jù)模型

概念

組成要素

分類301.3.1數(shù)據(jù)模型的概念數(shù)據(jù)模型(DataModel):實際問題的模擬和抽象。

針對實際問題,研究數(shù)據(jù)及其聯(lián)系,并最終解決問題的方法和步驟(數(shù)據(jù)特征的抽象+描述/組織/操作數(shù)據(jù))。例如:電子書店中圖書進(jìn)價的平均價格模型:結(jié)論:數(shù)據(jù)模型是一組概念、描述或者公式的集合。用數(shù)據(jù)模型可以抽象、表示和處理現(xiàn)實世界中客觀事物的本質(zhì)特征及其聯(lián)系。特點:(1)真實模擬實際問題。(2)容易理解。(3)易于計算機(jī)實現(xiàn)。31

數(shù)據(jù)模型的組成要素組成:數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)完整性約束等。1.?dāng)?shù)據(jù)結(jié)構(gòu)

數(shù)據(jù)庫中數(shù)據(jù)對象特性的靜態(tài)描述。數(shù)據(jù)結(jié)構(gòu)用于描述數(shù)據(jù)庫的組成對象及其聯(lián)系。即:數(shù)據(jù)對象及其特征的集合:數(shù)據(jù)對象的特性、類型和屬性等。數(shù)據(jù)對象之間的聯(lián)系:數(shù)據(jù)對象之間的一對一聯(lián)系、一對多聯(lián)系和多對多聯(lián)系等。例如:在電子書店中,出版社的數(shù)據(jù)結(jié)構(gòu)可以設(shè)計如下:出版社(社號,社名,郵編,社址,電話,郵箱,網(wǎng)址)32數(shù)據(jù)模型的組成要素2.?dāng)?shù)據(jù)操作數(shù)據(jù)操作:數(shù)據(jù)庫中數(shù)據(jù)對象具體內(nèi)容的動態(tài)描述。數(shù)據(jù)操作是對數(shù)據(jù)庫中數(shù)據(jù)對象所執(zhí)行的操作以及操作規(guī)則的集合。數(shù)據(jù)模型必須嚴(yán)格定義操作的確切含義、操作符號、操作規(guī)則以及實現(xiàn)操作的語言。即:(1)檢索操作:數(shù)據(jù)對象的索引、排序和查詢等。例如:在EBook中,對出版社按照“社號”建立索引。查詢銷售信息。(2)更新操作:數(shù)據(jù)對象的插入、修改和刪除等。例如:在電子書店中,刪除“購買”表中戶號為“C005”的客戶的購買信息。33數(shù)據(jù)模型的組成要素3.?dāng)?shù)據(jù)完整性約束數(shù)據(jù)完整性約束是為了確保數(shù)據(jù)的正確性和相容性,而對數(shù)據(jù)對象約定的一系列約束條件和約束規(guī)則。例如:在電子書店中,客戶的性別只能是“男”或者“女”。數(shù)據(jù)完整性約束:實體完整性、參照完整性和用戶定義完整性等。數(shù)據(jù)模型需要提供定義數(shù)據(jù)完整性的機(jī)制。341.3.3.數(shù)據(jù)模型的分類概念模型邏輯模型物理模型351.概念模型概念模型:數(shù)據(jù)及其關(guān)系的圖形表示。利用專用描述工具,按照統(tǒng)一的描述方法,對實際問題抽象后,而建立的體現(xiàn)數(shù)據(jù)及其關(guān)系的結(jié)構(gòu)模型。例如:E-R圖專用描述工具:具有較強(qiáng)語義表達(dá)能力,且擁有統(tǒng)一的語法格式和描述方法,能夠方便地表達(dá)應(yīng)用中的各種語義。例如:實體-聯(lián)系方法(Entity

Relationship

Approach,E-R方法)。特點:簡單、清晰、易于理解,獨立于DBMS等組成:實體、屬性和聯(lián)系等36(1)實體(Entity)實體(記錄,元組):客觀存在且相互區(qū)別的事物

實體可以是具體的人、事、物或者抽象對象等

例如:客戶實體:戶號,戶名,性別,生日,手機(jī),婚否,郵箱圖書實體:書號,書名,作者,社號,版次,定價,進(jìn)價、售價(C001,李明,男,1966-06-01是,123450@)(ISBN978-7-04-040664-1,數(shù)據(jù)庫系統(tǒng)概論,王珊,ISBN978-7-04,5,39.6,25,20)實體集(表,關(guān)系):同類實體組成的實體集合例如:客戶實體:戶號,戶名,性別,生日,手機(jī),婚否,郵箱(C001,李明,男,1966-06-01是,123450@)(C002,吳光,男,1979-09-10是,543210@)(C003,王英,女,1988-10-06是,122220@)(C004,趙慶,男,1999-06-16否,222220@)(C005,李麗,女,2002-07-11否,345220@)(C006,李麗,女,2006-08-08否,562220@)37(2)屬性(Attribute)屬性(字段,數(shù)據(jù)項):實體所具有的特性。由多個屬性來描述例如:戶號特征:C001,C002,C003,C004,C005和C006

戶名特征:李明,吳光,王英,趙慶,李麗和李麗例如:客戶實體和圖書實體的屬性如下:客戶實體(戶號、戶名、性別、生日、手機(jī)、婚否,郵箱)圖書實體(書號、書名、作者、社號、版次、定價、進(jìn)價和售價)域:屬性的取值范圍例如:戶號的域:{C開頭且后面為三位數(shù)字}

性別的域:{“男”,“女”}38(2)屬性(Attribute)候選鍵/碼(Candidate

Key,CK):區(qū)分實體的最小屬性集候選鍵可以一個屬性,或多個屬性;一個實體集可以有多個候選鍵例如:出版社實體集的候選鍵有兩個:社號和社名;因為出版社的社名一般不相同??蛻魧嶓w集的候選鍵為戶號。主鍵/碼(Primary

Key,PK):被選中使用的候選鍵主鍵的取值唯一,且一個實體集只能有一個主鍵全鍵/碼(AllKey,AK):實體集的所有屬性組成候選鍵主屬性:候選鍵的屬性。非主屬性:不包含在任何候選鍵中的屬性型和值:屬性和實體集均有型和值之分。屬性型:描述了屬性的本質(zhì)特征。屬性值:給出屬性的具體數(shù)據(jù)。屬性=屬性型+屬性值39實體集的型與值實體集型:描述同類實體的靜態(tài)結(jié)構(gòu);實體集值:同類實體的具體數(shù)據(jù)

實體的所有屬性構(gòu)成實體集型;所有實體的屬性值構(gòu)成實體集值。

實體集=實體集型+實體集值屬性名:每個屬性的名稱。表示屬性的本質(zhì)特性實體集名:實體集的名稱。表示實體的本質(zhì)特性實體集名和屬性名二者一起共同組成實體集型;即:實體集的結(jié)構(gòu)。例如:多個客戶實體所組成的實體集的名稱命名為“客戶”??蛻魧傩裕☉籼枺瑧裘?,性別,生日,手機(jī),婚否,郵箱)共同組成客戶實體集的型,即:客戶(戶號,戶名,性別,生日,手機(jī),婚否,郵箱)40實體集的型與值再如:多個圖書實體所組成的實體集的名稱可以命名為“圖書”。圖書實體集的屬性(書號,書名,作者,社號,版次,定價,進(jìn)價,售價)共同組成了圖書實體集的型,即:圖書(書號,書名,作者,社號,版次,定價,進(jìn)價,售價)說明:在不引起混淆的情況下,如果沒有特殊聲明,通常使用“屬性名”代替屬性,實體名代替實體集例如:用“圖書”代表“圖書實體集”;用“客戶”表示“客戶實體集”。用屬性名“書號”代表圖書的一個屬性(書號型+書號值);用屬性名“戶號”代表客戶的一個屬性(戶號型+戶號值)41(3)聯(lián)系(Relationship)聯(lián)系:實體集之間或?qū)嶓w集內(nèi)部的關(guān)聯(lián)關(guān)系。1:1;1:n;n:m

實體集與實體集之間(內(nèi)部)存在一定聯(lián)系。內(nèi)部聯(lián)系稱為自聯(lián)系例如:客戶和圖書之間存在客戶購買圖書的聯(lián)系一對一聯(lián)系(1:1):對于實體集A中的每一個實體,實體集B中有且只能有一個實體與之聯(lián)系,反之亦然。例如:出版社與社長之間的聯(lián)系;學(xué)校與校長之間的聯(lián)系等。一對多聯(lián)系(1:n):對于實體集A中的每一個實體,實體集B中有n(n≥2)個實體與之聯(lián)系;反之,對于實體集B中的每一個實體,實體集A中有且只能有一個實體與之聯(lián)系。例如:出版社與圖書之間的聯(lián)系;學(xué)院與班級之間的聯(lián)系;班級與學(xué)生之間的聯(lián)系等。42(3)聯(lián)系(Relationship)多對多聯(lián)系(m:n):對于實體集A中的每一個實體,實體集B中有n(n≥2)個實體與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中有n(n≥2)實體與之聯(lián)系多對多聯(lián)系是一種復(fù)雜的聯(lián)系例如:客戶和圖書之間的購買聯(lián)系。因為一本電子圖書可以賣給多個客戶,而且一個客戶可以購買多本圖書。表1.4是客戶和圖書的聯(lián)系再如:學(xué)生與課程之間的選修聯(lián)系。因為一門課程可以供多個學(xué)生選修,而且一個學(xué)生可以選修多門課聯(lián)系的屬性:聯(lián)系可以擁有屬性。聯(lián)系及其屬性構(gòu)成聯(lián)系的完整描述例如:客戶和圖書之間的購買聯(lián)系產(chǎn)生一個新屬性:購買日期43E-R圖E-R圖:使用實體-聯(lián)系方法所建立的用于描述概念模型中實體及其聯(lián)系的圖形。E-R圖是概念模型的一種常用的表述方法。E-R圖是一種概念模型。

E-R圖簡單易學(xué),在DB設(shè)計中得到了廣泛應(yīng)用。詳見第5章例如:在電子書店中,客戶購買圖書的概念模型(即:E-R圖)如圖1.6所示。44nm書號客戶購買圖書書名售價戶號戶名電話購買日期2.邏輯模型邏輯模型:概念結(jié)構(gòu)的DBMS表示。即:為了能夠用DBMS實現(xiàn)用戶需求,將概念結(jié)構(gòu)轉(zhuǎn)化為適用于DBMS表示和實現(xiàn)的數(shù)據(jù)結(jié)構(gòu)模型。例如:關(guān)系模式的集合。分類:層次模型、網(wǎng)狀模型、關(guān)系模型和面向?qū)ο竽P偷?。通常把相同特征的?shù)據(jù)所組成的整體稱為集合(例如:實體集)。集合之間或者集合內(nèi)部通常存在著一定的聯(lián)系。45(1)層次模型層次模型(HierarchicalModel):具有樹型結(jié)構(gòu)的數(shù)據(jù)模型(圖1.7)

層次模型是最早出現(xiàn)的數(shù)據(jù)模型46記錄集記錄集記錄集記錄集…記錄集記錄集記錄集………記錄集(1)層次模型特點:存在唯一的沒有雙親的根節(jié)點

非根節(jié)點均有唯一的雙親節(jié)點

記錄集之間的聯(lián)系是一對多聯(lián)系。反映事物之間的一對多聯(lián)系層次數(shù)據(jù)庫:支持層次模型的數(shù)據(jù)庫思考:層次模型的優(yōu)缺點例如:學(xué)校的組織機(jī)構(gòu)可以表示為如圖1.8所示的層次模型。即:學(xué)校為根節(jié)點,其下級有兩個孩子節(jié)點學(xué)院和處;學(xué)院又有兩個孩子節(jié)點系和班級;處有一個孩子節(jié)點科。例如:1968年IBM公司的IMS(Information

ManagementSystem)47學(xué)校的組織機(jī)構(gòu)(層次模型)48學(xué)校學(xué)院處系班級科(2)網(wǎng)狀模型網(wǎng)狀模型(NetworkModel):具有網(wǎng)狀結(jié)構(gòu)數(shù)據(jù)模型(圖1.9)

網(wǎng)狀模型是最復(fù)雜的數(shù)據(jù)模型。49記錄集記錄集11記錄集記錄集…記錄集記錄集記錄集…記錄集記錄集記錄集(2)網(wǎng)狀模型特點:

可以存在多個沒有雙親的節(jié)點。

節(jié)點可以有多個雙親節(jié)點。記錄集之間的聯(lián)系是多對多聯(lián)系。反映事物之間的多對多聯(lián)系網(wǎng)狀數(shù)據(jù)庫:支持網(wǎng)狀模型的數(shù)據(jù)庫思考:網(wǎng)狀模型的優(yōu)缺點例如:20~70年數(shù)據(jù)系統(tǒng)語言研究會的DBTG系統(tǒng)方案。HP公司的IMAGE。例如:速遞公司需要管理車隊、車輛和司機(jī),車隊需要聘任司機(jī),車隊需要擁有車輛,司機(jī)可以駕駛車輛,則速遞公司的數(shù)據(jù)模型可以表示為如圖所示的網(wǎng)狀模型。50速遞公司車隊組織機(jī)構(gòu)(網(wǎng)狀模型)51車輛司機(jī)車隊擁有聘用駕駛(3)關(guān)系模型關(guān)系模型(RelationalModel):具有規(guī)范二維表格結(jié)構(gòu)數(shù)據(jù)模型

表1.1~表1.4:圖書Book/客戶Cust/出版社Press/購買BuyIBM公司的E.F.Codd于1970年首次提出關(guān)系數(shù)據(jù)庫:支持關(guān)系模型的數(shù)據(jù)庫。最流行的數(shù)據(jù)模型特點:關(guān)系模型結(jié)構(gòu)簡單,符合人類的思維方式,容易被接受和使用易于計算機(jī)實現(xiàn)容易從概念模型轉(zhuǎn)換過來52(3)關(guān)系模型定義1.1

笛卡爾積:元組t(Tuple):分量(Component)t[Ai]:域:取值范圍。所有元素的集合;度(Degree):屬性個數(shù)n基數(shù)(CardinalNumber)(有限集合):笛卡爾積:用二維表格表示,每一列數(shù)據(jù)是類型相同的一個屬性理論價值:針對實際問題,笛卡爾積的很多元組是沒有意義的需要篩選出有實際意義的元組→關(guān)系53定義1.2關(guān)系關(guān)系:笛卡爾積的子集。關(guān)系名:關(guān)系的名稱關(guān)系=關(guān)系型+關(guān)系值關(guān)系型:組成關(guān)系的屬性型的集合。結(jié)構(gòu)。關(guān)系值:組成關(guān)系的屬性值的集合。即:元組的集合元組(實體,記錄):關(guān)系值的每一行54定義1.2關(guān)系例1.1

如果客戶的姓名和性別的取值如下:姓名={張三,李四,王五};性別={男,女}姓名和性別的笛卡爾積(圖1.11)如下:姓名×性別={(張三,男),(張三,女),

(李四,男),(李四,女),

(王五,男),(王五,女)}姓名和性別組成的關(guān)系(不妨命名為:客戶)如下:客戶(姓名,性別)={(張三,男),(李四,女),(王五,女)}關(guān)系型:客戶(姓名,性別)關(guān)系值:{("張三","男"),("李四","女"),("王五","女")}關(guān)系:笛卡爾積的一個子集,且具有實際意義(圖1.11)55笛卡兒積與關(guān)系56

×張三

李四

王五姓名

性別

張三

男張三

女李四

男李四

女王五

男王五

女姓名

性別

張三

男李四

女王五

姓名性別

姓名×性別

客戶(姓名,性別)定義1.3

關(guān)系模式關(guān)系模式:組成關(guān)系的關(guān)系型。即:關(guān)系的結(jié)構(gòu)描述關(guān)系=關(guān)系模式+元組集合=關(guān)系模式+關(guān)系值關(guān)系與關(guān)系模式的關(guān)系:關(guān)系模式是關(guān)系型。關(guān)系的結(jié)構(gòu)部分。關(guān)系特征的靜態(tài)描述。關(guān)系模式?jīng)Q定關(guān)系,即:關(guān)系模式一旦確定,則關(guān)系的取值必須滿足關(guān)系模式的類型和域的要求。關(guān)系模式是元組個數(shù)為0時的關(guān)系(空關(guān)系)關(guān)系是關(guān)系模式及其某一時刻的值所組成的整體。關(guān)系是關(guān)系模式下關(guān)系值的動態(tài)描述。一個關(guān)系模式對應(yīng)多個關(guān)系。一個關(guān)系模式下,可以存在多個與之相應(yīng)的關(guān)系,從而表現(xiàn)出關(guān)系模式在不同時刻的動態(tài)數(shù)據(jù)狀態(tài)57定義1.3關(guān)系模式例如:二維表格由表頭和表體組成。

表頭就是關(guān)系模式,表體就是元組集合。思考:在例1.1中,添加年齡屬性:年齡={16,18,19},則姓名×性別×年齡=?,姓名×性別×年齡中元組的個數(shù)是多少?構(gòu)造一個有意義的客戶關(guān)系:客戶(姓名,性別,年齡)。58定義1.4關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫:所有關(guān)系的集合。例如:電子書店的數(shù)據(jù)庫(本書范例數(shù)據(jù)庫):

電子書店EBook=R{圖書Book,客戶Cust,出版社Press,購買Buy}關(guān)系模型的特點:屬性(或數(shù)據(jù)項)是同類型的不可再分的最小單位,即滿足第一范式(1NF)。屬性不能重名(即:不同的字段不能重名)。元組不能重復(fù)(即:不同的記錄不能重復(fù))。屬性的順序可以互換。元組的順序可以互換。59定義1.4關(guān)系數(shù)據(jù)庫例如:表1.5所示的圖書價格表不是關(guān)系。因為屬性“價格”又分為定價、進(jìn)價和售價,所以“價格”不是不可再分的最小單位。表1.5不是規(guī)范的二維表,因為規(guī)范的表中不能嵌套子表。60書號書名作者價格定價進(jìn)價售價ISBN978-7-04-040664-1數(shù)據(jù)庫系統(tǒng)概論王珊39.62025ISBN978-7-302-33894-9Java程序設(shè)計教程雍俊海692636ISBN978-7-5612-2591-2圖像技術(shù)韓培友361216ISBN978-7-5612-2123-1IDL可視化分析韓培友451922ISBN978-7-5178-0167-2Access數(shù)據(jù)庫應(yīng)用韓培友39.81619ISBN978-7-81140-582-8MySQL實驗指導(dǎo)韓培友251015關(guān)系模型的組成層次組成層次:屬性、元組、關(guān)系和數(shù)據(jù)庫等。若干屬性值組成元組,若干元組組成關(guān)系,若干關(guān)系組成數(shù)據(jù)庫。規(guī)范的二維表是關(guān)系的常用表示方法。結(jié)論:關(guān)系模型具有結(jié)構(gòu)簡單清晰、表達(dá)能力強(qiáng)、易懂易用和擁有嚴(yán)謹(jǐn)數(shù)學(xué)理論支持等優(yōu)點。使得它成為目前最流行的數(shù)據(jù)模型。61(4)面向?qū)ο竽P兔嫦驅(qū)ο竽P停∣bjectOrientedModel):20世紀(jì)80年代把面向?qū)ο蟪绦蛟O(shè)計(ObjectOrientedProgramming,OOP)方法和技術(shù)引入到數(shù)據(jù)庫技術(shù)之后發(fā)展起來的新數(shù)據(jù)模型。面向?qū)ο竽P筒粌H支持傳統(tǒng)的數(shù)據(jù)庫應(yīng)用,而且支持CAD、OA和GIS等多媒體領(lǐng)域。遺憾的是面向?qū)ο竽P蜎]有推廣成功。623.物理模型物理模型:數(shù)據(jù)的存儲模型,用于描述數(shù)據(jù)在計算機(jī)內(nèi)部的存儲結(jié)構(gòu)和存取方法的模型

物理模型是對數(shù)據(jù)最底層的抽象目的:利用合理的存儲結(jié)構(gòu)和存取策略,充分利用存儲空間,實現(xiàn)快速存取,提高數(shù)據(jù)存取效率和存儲空間利用率物理模型是邏輯模型的最終物理實現(xiàn),為邏輯模型選取最適合的物理環(huán)境。概念模型、邏輯模型和物理模型的關(guān)系(圖1.12)63邏輯模型物理模型概念模型

實際問題

1.4數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)模式結(jié)構(gòu)從數(shù)據(jù)庫管理系統(tǒng)角度分析數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu)從最終用戶角度分析641.4.1

數(shù)據(jù)庫系統(tǒng)的模式結(jié)構(gòu)模式結(jié)構(gòu):三級模式:外模式、模式和內(nèi)模式二級映像:外模式/模式和模式/內(nèi)模式65

DBMS

數(shù)據(jù)庫外模式/模式映象模式/內(nèi)模式映象應(yīng)用應(yīng)用應(yīng)用應(yīng)用應(yīng)用應(yīng)用外模式外模式外模式模式內(nèi)模式操作系統(tǒng)1.三級模式(1)外模式外模式(子模式;用戶模式):面向用戶的數(shù)據(jù)庫局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖。它是局部應(yīng)用數(shù)據(jù)的邏輯表示。一個數(shù)據(jù)庫可以有多個外模式。不同的外模式反映了不同用戶的應(yīng)用需求、看待數(shù)據(jù)的方式、以及對數(shù)據(jù)保密的要求。模式中的同一數(shù)據(jù),在外模式中的結(jié)構(gòu)、類型、長度、保密級別等都可以不同;外模式與應(yīng)用的關(guān)系為一對多關(guān)系。同一外模式可以為用戶的多個應(yīng)用系統(tǒng)所使用,但是一個應(yīng)用程序只能使用一個外模式。661.三級模式(2)模式模式(結(jié)構(gòu)模式;邏輯模式):數(shù)據(jù)庫中全部數(shù)據(jù)的整體邏輯結(jié)構(gòu)和特征的描述,即數(shù)據(jù)庫中數(shù)據(jù)的邏輯表示,是所有用戶的公共數(shù)據(jù)視圖,體現(xiàn)了數(shù)據(jù)庫的總體特征。數(shù)據(jù)庫模式是以某一種數(shù)據(jù)模型為基礎(chǔ),統(tǒng)一綜合地考慮所有用戶的需求,并將這些需求結(jié)合成為一個邏輯整體。一個數(shù)據(jù)庫只能有一個模式。(3)內(nèi)模式內(nèi)模式(存儲模式;物理模式):對數(shù)據(jù)庫物理結(jié)構(gòu)和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的組織存儲方式。一個數(shù)據(jù)庫只能有一個內(nèi)模式。672.二級映像外模式/模式映像外模式/模式映像實現(xiàn)了用戶級的數(shù)據(jù)庫和邏輯層的數(shù)據(jù)庫之間的轉(zhuǎn)換,并通過映像提供的上下級服務(wù)把二者聯(lián)系起來。外模式/模式映像的用途:保證數(shù)據(jù)的邏輯獨立性。即:當(dāng)模式發(fā)生改變時,數(shù)據(jù)庫管理員修改有關(guān)的外模式/模式映像,使外模式保持不變。應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨立性,即數(shù)據(jù)的邏輯獨立性。682.二級映像模式/內(nèi)模式映像模式/內(nèi)模式映像實現(xiàn)了邏輯層的數(shù)據(jù)庫和物理層的數(shù)據(jù)庫之間的轉(zhuǎn)換,并通過映像提供的上下級服務(wù)把二者聯(lián)系起來。模式/內(nèi)模式映像的用途:保證數(shù)據(jù)的物理獨立性。即:當(dāng)數(shù)據(jù)庫的存儲結(jié)構(gòu)發(fā)生改變時(例如:選用新的存儲結(jié)構(gòu)),數(shù)據(jù)庫管理員修改模式/內(nèi)模式映像,使模式保持不變,應(yīng)用程序不受影響。保證了數(shù)據(jù)與程序的物理獨立性,即數(shù)據(jù)的物理獨立性。數(shù)據(jù)的邏輯獨立性和數(shù)據(jù)的物理獨立性合稱為數(shù)據(jù)獨立性。通過二級映像,保證了數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨立性,同時使用戶使用數(shù)據(jù)庫更加靈活方便。數(shù)據(jù)庫系統(tǒng)的二級映像反映出了三級模式之間的相互關(guān)系:模式是內(nèi)模式的邏輯表示;內(nèi)模式是模式的物理實現(xiàn);外模式則是模式的部分抽象和提取。69數(shù)據(jù)庫系統(tǒng)模式結(jié)構(gòu)的優(yōu)點確保數(shù)據(jù)庫的數(shù)據(jù)獨立性確保數(shù)據(jù)庫的安全性和保密性用戶使用數(shù)據(jù)庫更加靈感方便提高了數(shù)據(jù)庫的共享性,減少了數(shù)據(jù)冗余701.4.2數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)單用戶數(shù)據(jù)庫系統(tǒng)主從式數(shù)據(jù)庫系統(tǒng)分布式數(shù)據(jù)庫系統(tǒng)客戶/服務(wù)器數(shù)據(jù)庫系統(tǒng)瀏覽器/應(yīng)用服務(wù)器/數(shù)據(jù)庫服務(wù)器數(shù)據(jù)庫系統(tǒng)等711.5小結(jié)數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng)的概念及其關(guān)系數(shù)據(jù)管理階段:人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫管理系統(tǒng)的功能數(shù)據(jù)庫系統(tǒng)的組成。DBA的職責(zé)數(shù)據(jù)模型的概念和組成要素以及常用的數(shù)據(jù)模型:概念模型、邏輯模型(層次模型,網(wǎng)狀模型,關(guān)系模型和面向?qū)ο竽P停┖臀锢砟P蛿?shù)據(jù)庫系統(tǒng)的模式結(jié)構(gòu)與數(shù)據(jù)獨立性研究內(nèi)容:數(shù)據(jù)庫理論研究、數(shù)據(jù)庫設(shè)計、數(shù)據(jù)庫管理系統(tǒng)的研發(fā)和數(shù)據(jù)庫應(yīng)用系統(tǒng)(Management

Info

System,MIS)的開發(fā)等72第2章關(guān)系運算關(guān)系數(shù)據(jù)語言基本集合運算

笛卡爾積/并集/差集/交集專用關(guān)系運算

選擇/投影/連接/除運算更新運算綜合實例查詢優(yōu)化

示例分析

/查詢處理與查詢優(yōu)化/等價變換/優(yōu)化規(guī)則/優(yōu)化方法小結(jié)732.1關(guān)系數(shù)據(jù)語言關(guān)系數(shù)據(jù)語言:一種抽象的查詢語言;關(guān)系代數(shù)/元組(域)關(guān)系演算特點:操作對象和操作結(jié)果都是集合74

常用運算:笛卡爾積、并集、差集、交集、選擇、投影、連接、除運算符號:∪,∩,-,×,σ,π,÷,┒,∨,∧,≤,<,≥,>,=,≠,

2.1關(guān)系數(shù)據(jù)語言電子書店EBook

圖書Book/客戶Cust/出版社Press/購買Buy圖書(書號,書名,作者,社號,版次,定價,進(jìn)價,售價)Book(BNo,BName,Author,PNo,EditNo,Price,PPrice,SPrice)客戶(戶號,戶名,性別,生日,電話,婚否,照片,郵箱)Cust(CNo,CName,CSex,Birth,Phone,Marry,Photo,Email)出版社(社號,社名,郵編,社址,電話,郵箱,網(wǎng)址)Press(PNo,PName,PCode,PAddr,Phone,Email,HPage)購買(戶號,書號,購買日期)Buy(CNo,BNo,PDate)75圖書Book書號BNo書名BName作者Author社號PNo版次EditNo定價Price進(jìn)價PPrice售價SPriceISBN978-7-04-040664-1數(shù)據(jù)庫系統(tǒng)概論王珊ISBN978-7-04539.62025ISBN978-7-302-33894-9Java程序設(shè)計教程雍俊海ISBN978-7-3023692636ISBN978-7-5612-2591-2圖像技術(shù)韓培友ISBN978-7-56121361216ISBN978-7-5612-2123-1IDL可視化分析韓培友ISBN978-7-56121451922ISBN978-7-5178-0167-2Access數(shù)據(jù)庫應(yīng)用韓培友ISBN978-7-81140139.81619ISBN978-7-81140-582-8MySQL實驗指導(dǎo)韓培友ISBN978-7-81140125101576客戶Cust戶號CNo戶名CName性別CSex生日Birth電話Phone婚否Marry照片Photo郵箱EMailC001李明男1966-06-0113611122233是二進(jìn)制數(shù)據(jù)Hu.Jpg123450@C002吳光男1979-09-1013911122233是NULL543210@C003王英女1988-10-0613622233355是NULL122220@C004趙慶男1999-06-1613922233355否NULL222220@C005李麗女2002-07-1113655566699否NULL345220@C006李麗女2006-08-0813955566699否NULL562220@77購買Buy戶號CNo書號BNo購買日期PDate

戶號CNo書號BNo購買日期PDateC001ISBN978-7-04-040664-12014-10-26

C002ISBN978-7-04-040664-12014-11-22C001ISBN978-7-302-33894-92014-06-16

C002ISBN978-7-302-33894-92014-08-12C001ISBN978-7-5612-2591-22010-01-12

C003ISBN978-7-5612-2591-22011-11-13C001ISBN978-7-5612-2123-12006-12-01

C005ISBN978-7-5612-2123-12008-10-09C001ISBN978-7-5178-0167-22014-03-19

C006ISBN978-7-5178-0167-22015-06-18C001ISBN978-7-81140-582-82012-09-15

C006ISBN978-7-81140-582-82013-10-1778出版社Press社號PNo社名PName郵編PCode社址PAddr電話Phone郵箱EMail網(wǎng)址HPageISBN978-7-04高等教育出版社100120北京市西城區(qū)德外大街4號(010)58581118Gjdzfwb@ISBN978-7-302清華大學(xué)出版社100084清華大學(xué)學(xué)研大廈A座(010)62781733e-sale@www.tup.tsinghua.ISBN978-7-115人民郵電出版社100164北京市豐臺區(qū)成壽寺路11號(010)81055075Youdianhr@ISBN978-7-5612西北工業(yè)大學(xué)出版社710072西安市友誼西路127號(029)88493844Fxb@ISBN978-7-81140浙江工商大學(xué)出版社310012杭州市教工路198號(0571)8882370361627291@792.2基本集合運算

笛卡爾積

并集

差集

交集802.2.1笛卡爾積R×S:把R的每一個元組和S的每一個元組依次對接起來,對接后所生成的分量個數(shù)為n+m的所有元組的集合。屬性:分量個數(shù):R的分量個數(shù)和S的分量個數(shù)的和元組個數(shù):R的元組個數(shù)和S的元組個數(shù)的乘積元組關(guān)系演算:域關(guān)系演算:812.2.1笛卡爾積例2.1

已知R和S,則R×S

=?笛卡爾積中包含有較多無意義的元組?82×姓名

性別

張良

男李麗

女年齡

成績

189816991996姓名

性別

年齡

成績

張良

男1898張良

男1699張良

男1996李麗

女1898李麗

女1699李麗

女1996

=(a)R(b)S(c)R×S2.2.2并集R∪S:具有相同屬性的關(guān)系R和S中的所有元組的集合屬性:分量個數(shù):等于R的分量個數(shù),或等于S的分量個數(shù)元組個數(shù):小于等于k1+k2。k1和k2分別為R和S的元組的個數(shù)元組關(guān)系演算:域關(guān)系演算:832.2.2并集例2.2已知R和S,則R∪S

=?84=∪RSR∪S姓名

性別

張良

男李麗

女姓名

性別

張良

男李麗

女王海

姓名

性別

李麗

女王海

2.2.3差集R?S:具有相同屬性的關(guān)系R和S中屬于R,但不屬于S的所有元組的集合屬性:分量個數(shù):等于R的分量個數(shù),或等于S的分量個數(shù)元組個數(shù):小于等于k1。k1為R的元組的個數(shù)元組關(guān)系演算:域關(guān)系演算:852.2.3差集例2.3已知R和S,則R─S

=?86=─RSR─S姓名

性別

張良

男李麗

女姓名

性別

張良

姓名

性別

李麗

女王海

2.2.4交集R∩S:具有相同屬性的關(guān)系R和S中相同元組的集合屬性:分量個數(shù):等于R的分量個數(shù),或等于S的分量個數(shù)元組個數(shù):小于等于Min(k1,k2)。K1,k2分別為R和S的元組的個數(shù)元組關(guān)系演算:域關(guān)系演算:872.2.4交集例2.4已知R和S,則R∩S

=?88=∩RSR∩S姓名

性別

張良

男李麗

女姓名

性別

李麗

姓名

性別

李麗

女王海

綜合示例例2.5關(guān)系R和關(guān)系S及其并集、交集、差集和笛卡爾積89XYZ222255552XYZ255265552R.XR.YR.ZS.XS.YS.Z222255222265222552255255255265255552552255552265552552R×SXYZ222XYZ222255552265XYZ255552RSR-SR∪SR∩S2.3專用關(guān)系運算

選擇

投影

連接

除運算90選擇選擇(Selection):在R中選擇出滿足給定條件的元組。關(guān)系代數(shù):

是邏輯表達(dá)式屬性:分量個數(shù):等于R的元組的分量個數(shù)。元組個數(shù):小于等于k1。k1是R的元組的個數(shù)。元組關(guān)系演算:域關(guān)系演算:91選擇例2.6從關(guān)系R中,查詢90分以上(不含90分)的女生92姓名

性別

年齡

成績王娟

女1996孫麗

女1898姓名

性別

年齡

成績張軍

男1888李明

男1699王娟

女1996孫麗

女1898R選擇例2.7查詢“高等教育出版社”的出版社信息93

選擇例2.8查詢作者是“王珊”,或者售價大于等于15且小于25的圖書信息94

2.3.2投影投影(Projection):在R中選擇出若干屬性列組成的關(guān)系關(guān)系代數(shù):屬性:A中的屬性分量個數(shù):等于A中的屬性的個數(shù)。元組個數(shù):小于等于k1。k1是R的元組的個數(shù)。因為要去掉重復(fù)元組。元組關(guān)系演算:域關(guān)系演算:952.3.2投影例2.9從關(guān)系R中,查詢所有人的姓名和性別96姓名

性別

年齡

成績

張軍

男1888李明

男1699王海

女1996孫麗

女1898姓名

性別

張軍

男李明

男王海

女孫麗

女2.3.2投影例2.10從R中,查詢所有90分以上(不含90分)的女生的姓名和性別97姓名

性別

年齡

成績

張軍

男1888李明

男1699王海

女1996孫麗

女1898姓名

性別

王海

女孫麗

女2.3.2投影例2.11查詢圖書的書名、作者和定價98

2.3.2投影例2.12查詢客戶的戶名和電話99

2.3.3連接連接(Join):把兩個關(guān)系按照連接條件進(jìn)行連接后生成一個新關(guān)系的過程。即:根據(jù)指定的連接條件,依次檢測R和S中的每一個元組,如果R中的某個元組與S中的某個元組滿足了連接條件,則把這兩個元組對接起來,而最終所有對接后的元組的集合即為R和S的連接。100連接方法和連接過程嵌套循環(huán)法(NestedLoop)首先在R中找到第一個元組,然后從頭開始掃描S逐一查找滿足連接件的元組,找到后就將R中的第一個元組與該元組拼接起來,形成結(jié)果關(guān)系中一個元組。S全部查找完后,再找R中第二個元組,然后再從頭開始掃描S,逐一查找滿足連接條件的元組,找到后就將R中的第二個元組與該元組拼接起來,形成結(jié)果表中一個元組。重復(fù)上述操作,直到R中的全部元組都處理完畢。排序合并法(SortMerge)首先按連接屬性對R和S排序。對R的第一個元組,從頭開始掃描S,順序查找滿足連接條件的元組,找到后就將R中的第一個元組與該元組拼接起來,形成結(jié)果關(guān)系中一個元組。當(dāng)遇到S中第一條大于R連接字段值的元組時,對S的查詢不再繼續(xù)。找到R的第二個元組,然后從剛才的中斷點處繼續(xù)順序掃描S,查找滿足連接條件的元組,找到后就將R中的第二個元組與該元組拼接起來,形成結(jié)果關(guān)系中一個元組。直接遇到S中大于R連接字段值的元組時,對S的查詢不再繼續(xù)。重復(fù)上述操作,直到R或S中的全部元組都處理完畢為止。101連接方法和連接過程索引連接(IndexJoin)對S按連接字段建立索引對R的每個元組,依次根據(jù)其連接字段值查詢S的索引,從中找到滿足條件的索引值,進(jìn)而在S中找到與之對應(yīng)的元組,找到后就將R中的第一個元組與該元組拼接起來,形成結(jié)果表中一個元組;依次進(jìn)行下去,直到結(jié)束。102連接關(guān)系代數(shù):R和S的笛卡爾積中選擇出滿足條件的元組。R和S笛卡爾積的選擇操作;由笛卡爾積和選擇運算導(dǎo)出屬性:分量個數(shù):等于R和S分量個數(shù)的和元組個數(shù):小于等于k1×k2。k1是R的元組的個數(shù);k2是S的元組的個數(shù)元組關(guān)系演算:

域關(guān)系演算:103等值連接和自然連接等值連接:連接條件取相等的連接運算自然連接:去掉重復(fù)屬性列的等值連接區(qū)別與聯(lián)系:等值連接和自然連接都是要求屬性間按照等值進(jìn)行連接,而自然連接要求兩個關(guān)系中相等的分量必須是相同的屬性組而等值連接不需要,且自然連接要在結(jié)果中把重復(fù)的屬性列去掉而等值連接不需要104

連接示例例2.14已知R和S,則R和S的條件(C<D)連接、等值連接和自然連接105ABCa1b15a2b16a3b27a4b39AR.BCS.BDa1b15b26a1b15b49a2b16b49a3b27b49

BDb13b26b33b49ABCDa1b153a2b163a3b276a4b393

AR.BCS.BDa1b15b13a2b16b13a3b27b26a4b39b33

RS連接示例例2.15查詢作者是“王珊”的書名、定價、社名和電話106

關(guān)系代數(shù):

元組演算:域演算:

除關(guān)系R與S的除運算:已知關(guān)系R(X,Y)和S(Y,Z),R與S的除運算的結(jié)果是一個屬性組為X的關(guān)系P(X),并且滿足:對于P(X)中的元組p,R中在X上的投影值等于p的諸元組,在Y上的投影包含S在Y上的投影。關(guān)系代數(shù):R

S屬性:X分量個數(shù):X的分量個數(shù)元組個數(shù):小于等于k1。k1是R的元組的個數(shù)關(guān)系演算:107除例2.17已知關(guān)系R與S,則R

S=?108

AB

1

2

3

1

1

1

3

4

2B12A

RS除例2.19已知關(guān)系R與S,則R

S=?

109XYZx2y2z4x4y6z6x6y8z5x2y4z6x8y5z5x4y4z6x2y4z2x3y3z6x1x1z3YZWy2z4w2y4z2w2y4z6w5XX2RSR

S計算方法1)計算2)計算

即:計算T×S中不在R中的元組3)計算4)計算110除例2.20對于關(guān)系R和S,則R÷S的計算過程111除例2.16已知成績Grade和條件Cond,在Grade中選擇滿足條件的學(xué)生Result,即在Grade中選擇高等數(shù)學(xué)和數(shù)據(jù)結(jié)構(gòu)均為A的學(xué)生信息112對于Grade在SName、SSex和SDept上的投影的一個元組t,如果Grade中在SName、SSex和SDept上的投影值等于t的諸元組,在CName和Grade上的投影包含Cond中的元組,則該元組t

是一個結(jié)果元組(t

Grade÷Cond)。所有這樣的t就組成了Grade÷CondSNameSSexCNameSDeptGrade李思

高等數(shù)學(xué)

計算機(jī)A劉英

高等數(shù)學(xué)

數(shù)學(xué)

B吳康

高等數(shù)學(xué)

計算機(jī)A王晶

數(shù)據(jù)結(jié)構(gòu)

數(shù)學(xué)

A吳康

英語

計算機(jī)B王晶

高等數(shù)學(xué)

數(shù)學(xué)

ACNameGrade高等數(shù)學(xué)A數(shù)據(jù)結(jié)構(gòu)ASNameSSexSDept王晶

數(shù)學(xué)除例2.18查詢至少購買書號是ISBN978-7-04-040664-1和ISBN978-7-302-33894-9的兩本書的客戶的戶號。113

BNoISBN978-7-04-040664-1ISBN978-7-302-33894-92.4更新運算插入運算(Insert):首先用需要插入的元組,創(chuàng)建一個與R同屬性的臨時關(guān)系T,然后計算修改運算(Update):首先用差運算把需要修改的元組從R中刪除,得到

;然后利用元組的更新數(shù)據(jù)創(chuàng)建一個與

同屬性的臨時關(guān)系

,最后計算刪除運算(Delete):首先從R中選擇出需要刪除的元組,并構(gòu)造一個臨時關(guān)系

,創(chuàng)建一個與R同屬性的臨時關(guān)系T,然后計算1142.5綜合實例例2.21查詢Book、Cust、Buy和Press的笛卡爾積(不難看出,該查詢沒有實際意義)115

2.5綜合實例例2.22查詢客戶、圖書和出版社的詳細(xì)信息及其所有購買信息116BookCustBuyPress2.5綜合實例例2.23查詢圖書的書名、作者、社名和售價117πBName,A??thor,PName,SPrice(BookPress)2.5綜合實例例2.24查詢圖書的書名、作者、售價、社名和購買圖書的客戶姓名118πBName,Author,SPrice,PName,CName(BookCustBuyPress)2.5綜合實例例2.25查詢客戶李明購買的作者是韓培友的出版社是浙江工商大學(xué)出版的圖書的戶名、書名、作者、定價、售價、社名和購買日期119πCName,BName,Author,PName,Price,SPrice,PName,PName

(

σBName=‘李明’∧Author=‘韓培友’∧PName=‘浙江工商大學(xué)出版社’

(

BookCustBuyPress))

2.5綜合實例例2.26查詢購買王珊或者雍俊海書的客戶的戶號和戶名120思

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論