版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù) 據(jù) 庫 技 術(shù) 及 應(yīng) 用,,■數(shù)據(jù)庫技術(shù)是什么? 一門專門的計(jì)算機(jī)軟件技術(shù),主要用于數(shù)據(jù)處理.■數(shù)據(jù)庫技術(shù)應(yīng)用情況如何? 各行各業(yè)都在廣泛使用,和我們生活的方方面面都結(jié)合得較緊.■數(shù)據(jù)庫在通信行業(yè)應(yīng)用如何? 在網(wǎng)管、 計(jì)費(fèi)、客服、電子運(yùn)維、移動通信網(wǎng)、智能網(wǎng)等中發(fā)揮著重要作用.■學(xué)習(xí)數(shù)據(jù)庫這門課需要哪些先修課程?后面還有哪些課是基于數(shù)據(jù)庫的? 嚴(yán)格地說,本課程需要離散數(shù)學(xué)、操作系
2、統(tǒng)及數(shù)據(jù)結(jié)構(gòu)幾門課程中的部分知識為先修內(nèi)容.,參考書目,■ 數(shù)據(jù)庫基礎(chǔ)理論◆ 《數(shù)據(jù)庫系統(tǒng)概論》(第四版) 薩師煊 王珊 高等教育出版社 ◆ 《Database System Concepts》 Abraham SilberschatZ Bell-Labs 《 數(shù)據(jù)庫系統(tǒng)概念》 楊冬青 唐世渭譯 機(jī)械工業(yè)出版社 ■ SQL Server數(shù)據(jù)庫使用和管理◆ 《 Transact-SQL
3、權(quán)威指南》 中國電力出版社◆ 《 SQL Server2005 寶典》電子工業(yè)出版社■人大數(shù)據(jù)庫教學(xué)網(wǎng)站:www.chinadb.org講義下載ftp:// lab.sice.bupt.cnUsername: kejian Password: kejian,考核方法,■ 期末考查 40% ■ 實(shí)驗(yàn): 40% ■平時(shí)隨堂小作業(yè) 20%,教學(xué)思想,■ 結(jié)合本專業(yè)特點(diǎn),使同學(xué)們掌握數(shù)
4、據(jù)庫技術(shù)相應(yīng)的基本概念、理論和原理,了解當(dāng)前信息和通信領(lǐng)域數(shù)據(jù)庫技術(shù)的最新應(yīng)用■掌握數(shù)據(jù)庫管理系統(tǒng)的基本使用、管理和維護(hù),掌握數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計(jì)的基本理論和方法,教學(xué)大綱,■ 引言 ■ 數(shù)據(jù)庫系統(tǒng)概述 ■ 關(guān)系數(shù)據(jù)庫系統(tǒng) ■ SQL語言 ■ SQL Server 2005的使用與管理 ■ 數(shù)據(jù)庫設(shè)計(jì)理論 ■ SQL Ser
5、ver 2005數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā) ■ 數(shù)據(jù)庫系統(tǒng)在通信中的應(yīng)用,引言,■ 數(shù)據(jù)與數(shù)據(jù)處理 ■ 數(shù)據(jù)庫技術(shù)的發(fā)展歷程及趨勢 ■ 當(dāng)前流行的數(shù)據(jù)庫產(chǎn)品,數(shù)據(jù)與數(shù)據(jù)處理,■ 信息:人們對客觀事物的認(rèn)識和反映。 ■ 數(shù)據(jù):用以載荷信息的物理符號。 ■ 數(shù)據(jù)處理:指對各種類型的原始數(shù)據(jù)進(jìn)行收集、管理、加工利用乃至信息輸出的演變與推導(dǎo)全過程。其中,數(shù)據(jù)管理,即數(shù)
6、據(jù)的收集、整理、組織、存儲、維護(hù)、檢索、傳送等操作,是數(shù)據(jù)處理的基本環(huán)節(jié)。,數(shù)據(jù)庫技術(shù)的發(fā)展,■ 數(shù)據(jù)庫技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)中發(fā)展最快的重要分支之一,它已經(jīng)成為計(jì)算機(jī)信息系統(tǒng)和應(yīng)用系統(tǒng)的重要技術(shù)支柱。 ■它產(chǎn)生、發(fā)展于本世紀(jì)60、70年代,在短短的30年里,它從第一代的層次、網(wǎng)狀數(shù)據(jù)庫技術(shù)和第二代的關(guān)系數(shù)據(jù)庫技術(shù),發(fā)展到第三代的面向新一代應(yīng)用的數(shù)據(jù)庫技術(shù)。,第一代數(shù)據(jù)庫技術(shù),第一代數(shù)據(jù)庫技術(shù)的代表是層次和網(wǎng)狀數(shù)據(jù)庫系統(tǒng):
7、 ■ 1969年,IBM公司研制了基于層次模型的數(shù)據(jù)管理系統(tǒng)IMS(Information Management System) ■ 美國數(shù)據(jù)庫系統(tǒng)語言協(xié)會CODASYL (Conference On Data System Language)下屬的數(shù)據(jù)庫任務(wù)組DBTG(Data Base Task Group)對數(shù)據(jù)庫方法進(jìn)行了系統(tǒng)的研究、探討,于60年代末70年代初提出了若干報(bào)告,稱為DBTG報(bào)告。報(bào)告所提議的方法
8、是基于網(wǎng)狀結(jié)構(gòu)的,它是數(shù)據(jù)庫網(wǎng)狀模型的典型代表。,第二代數(shù)據(jù)庫技術(shù),第二代數(shù)據(jù)庫系統(tǒng)是關(guān)系數(shù)據(jù)庫系統(tǒng) ■ 1970年IBM公司San Jose實(shí)驗(yàn)室的研究員E.F.Codd發(fā)表了題為“大型共享數(shù)據(jù)庫數(shù)據(jù)的關(guān)系模型”的論文,提出了關(guān)系數(shù)據(jù)模型,開創(chuàng)了關(guān)系數(shù)據(jù)庫方法和關(guān)系數(shù)據(jù)庫理論,為關(guān)系數(shù)據(jù)庫技術(shù)奠定了理論基礎(chǔ)。 ■ 70年代是關(guān)系數(shù)據(jù)庫理論研究和原型系統(tǒng)開發(fā)的時(shí)代,其中以IBM公司SanJose實(shí)驗(yàn)室開發(fā)的Sy
9、stem R 和Berkeley加利福尼亞大學(xué)研制的INGRES為代表。,,■經(jīng)過大量的高層次研究和開發(fā),關(guān)系數(shù)據(jù)庫系統(tǒng)的研究取得了一系列的成績,主要包括: ◆ 奠定了關(guān)系模型的理論基礎(chǔ),給出了被人們普遍接受的關(guān)系模型的規(guī)范說明 ◆ 提出了關(guān)系數(shù)據(jù)語言,如關(guān)系代數(shù)、關(guān)系演算、SQL語言、QBE等等。這些描述性語言一改以往程序設(shè)計(jì)語言和網(wǎng)狀、層次數(shù)據(jù)庫語言的面向過程的風(fēng)格,為80年代數(shù)據(jù)庫語言標(biāo)準(zhǔn)化打下了基礎(chǔ) ◆ 研制了大量
10、的關(guān)系數(shù)據(jù)庫系統(tǒng)原型,攻克了系統(tǒng)實(shí)現(xiàn)中查詢優(yōu)化、并發(fā)控制、故障恢復(fù)等一系列關(guān)鍵技術(shù) ■ 70年代后期,關(guān)系數(shù)據(jù)庫從實(shí)驗(yàn)室走向了社會,而80年代幾乎所有新開發(fā)的數(shù)據(jù)庫系統(tǒng)均是關(guān)系型的。這些商用數(shù)據(jù)庫系統(tǒng)的運(yùn)行,特別是微機(jī)RDBMS的使用,使數(shù)據(jù)庫技術(shù)日益廣泛地應(yīng)用到企業(yè)管理、情報(bào)檢索、輔助決策等各個(gè)方面。,下一代數(shù)據(jù)庫技術(shù),傳統(tǒng)數(shù)據(jù)庫技術(shù)面臨著嚴(yán)峻的挑戰(zhàn) 80年代以來,數(shù)據(jù)庫技術(shù)在商業(yè)領(lǐng)域的巨大
11、成就刺激了其他領(lǐng)域?qū)?shù)據(jù)庫需求的迅速增長。例如,計(jì)算機(jī)輔助設(shè)計(jì)與制造、地理信息系統(tǒng)、辦公信息系統(tǒng)和web應(yīng)用等等。這些領(lǐng)域需要的數(shù)據(jù)管理功能有相當(dāng)一部分是傳統(tǒng)數(shù)據(jù)庫所不能滿足的,例如: ■ 復(fù)雜數(shù)據(jù)類型的支持。復(fù)雜數(shù)據(jù)類型包括圖像、音頻、視頻、web網(wǎng)頁、抽象數(shù)據(jù)類型、無結(jié)構(gòu)的超長數(shù)據(jù)等 ■ 復(fù)雜對象的存儲和處理。復(fù)雜對象不僅內(nèi)部結(jié)構(gòu)復(fù)雜,相互之間的聯(lián)系也很復(fù)雜 ■ 巨型數(shù)據(jù)庫(數(shù)據(jù)量可超過1012字節(jié))的管理 ■
12、數(shù)據(jù)、對象、知識的統(tǒng)一管理,下一代數(shù)據(jù)庫系統(tǒng)是什么?,數(shù)據(jù)庫工作者從多方面發(fā)展了現(xiàn)行的數(shù)據(jù)庫系統(tǒng)技術(shù),研究全新的數(shù)據(jù)庫系統(tǒng)。新一代數(shù)據(jù)庫系統(tǒng)具有如下特點(diǎn):■ 面向?qū)ο髷?shù)據(jù)模型 80年代面向?qū)ο蟮姆椒ê图夹g(shù)的出現(xiàn),對計(jì)算機(jī)各個(gè)領(lǐng)域都產(chǎn)生了深遠(yuǎn)的影響,也給面臨新挑戰(zhàn)的數(shù)據(jù)庫技術(shù)帶來了機(jī)會和希望。數(shù)據(jù)庫研究人員提出了建立面向?qū)ο髷?shù)據(jù)模型。該模型克服了傳統(tǒng)數(shù)據(jù)模型的局限性,促進(jìn)了數(shù)據(jù)庫技術(shù)在一個(gè)新的技術(shù)基礎(chǔ)
13、上繼續(xù)發(fā)展.目前在市場上已經(jīng)有大量的面向?qū)ο髷?shù)據(jù)庫產(chǎn)品:Versant,Objectivity,ObjectStore,GemStone等。,■XML (可擴(kuò)展標(biāo)記語言,Extensible Markup Language)數(shù)據(jù)庫 Internet的異軍突起以及XML語言的出現(xiàn),給數(shù)據(jù)庫系統(tǒng)的發(fā)展開辟了一片新的天地。 上世紀(jì)90年代末,隨著德國軟件股份公司(Software AG)推出世界上第一
14、個(gè)“原狀XML (Native XML)數(shù)據(jù)庫系統(tǒng)”產(chǎn)品問世,標(biāo)志著數(shù)據(jù)庫系統(tǒng)進(jìn)入了一個(gè)新的發(fā)展時(shí)期。隨后,一些大型數(shù)據(jù)庫系統(tǒng)生產(chǎn)廠家,如:Oracle、微軟公司等紛紛宣布要發(fā)展支持XML的數(shù)據(jù)庫產(chǎn)品, IBM DB2 9更聲稱是PureXML數(shù)據(jù)庫產(chǎn)品。,■非關(guān)系式/面向互聯(lián)網(wǎng)/鍵值/分布式數(shù)據(jù)庫 云計(jì)算 NoSQL Google(Bigtable),■ 數(shù)據(jù)庫技術(shù)與多學(xué)科技術(shù)的有機(jī)結(jié)合
15、 傳統(tǒng)的數(shù)據(jù)庫技術(shù)和多學(xué)科技術(shù)的結(jié)合,使數(shù)據(jù)庫的許多概念、技術(shù)內(nèi)容、應(yīng)用領(lǐng)域,甚至某些原理都有了重大的發(fā)展和變化,建立和實(shí)現(xiàn)了一系列新型數(shù)據(jù)庫:基于WWW的網(wǎng)絡(luò)數(shù)據(jù)庫、嵌入式移動數(shù)據(jù)庫、多媒體數(shù)據(jù)庫、演繹數(shù)據(jù)庫、知識數(shù)據(jù)庫、工程數(shù)據(jù)庫、地理數(shù)據(jù)庫、模糊數(shù)據(jù)庫等,它們共同構(gòu)成了數(shù)據(jù)庫大家族.■ 傳統(tǒng)數(shù)據(jù)庫即面向商業(yè)與事物處理的數(shù)據(jù)庫僅僅成大家族中的一員,當(dāng)然,也是最成熟的和應(yīng)用最廣泛的一員。它的核心理論、應(yīng)用經(jīng)驗(yàn)、設(shè)計(jì)方
16、法等仍然是整個(gè)數(shù)據(jù)庫技術(shù)發(fā)展和應(yīng)用開發(fā)的先導(dǎo)和基礎(chǔ),數(shù)據(jù)庫技術(shù)的發(fā)展概況,當(dāng)前流行的數(shù)據(jù)庫產(chǎn)品,目前,商品化的數(shù)據(jù)庫管理系統(tǒng)是以關(guān)系數(shù)據(jù)庫為主導(dǎo)產(chǎn)品,技術(shù)比較成熟。國際國內(nèi)的主導(dǎo)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)有ORACLE、SYBASE、INFORMIX、INGRES、MS SQL SERVER、DB2等■ ORACLE是Oracle軟件系統(tǒng)有限公司的產(chǎn)品。Oracle成立于1977年,總部設(shè)在加利福尼亞,是世界第二大的計(jì)算機(jī)軟件供應(yīng)商,
17、向全球百余個(gè)國家的用戶提供大量的軟件產(chǎn)品和電子化信息服務(wù)。ORACLE系列產(chǎn)品在數(shù)據(jù)庫領(lǐng)域一直居領(lǐng)先地位,它在全球的銷售份額約占50%。■ DB2關(guān)系型數(shù)據(jù)庫家庭產(chǎn)品是IBM公司的主要產(chǎn)品。80年代初DB2的發(fā)展重點(diǎn)放在大型的主機(jī)平臺,80年代中期后DB2已發(fā)展到適用于各種硬件平臺。,■ Microsoft SQL Server是微軟公司的產(chǎn)品,它建立在Microsoft Windows 操作系統(tǒng)基礎(chǔ)之上,提供了一個(gè)功能強(qiáng)大的客戶/
18、服務(wù)器平臺,是能同時(shí)支持多個(gè)并發(fā)用戶的關(guān)系數(shù)據(jù)庫系統(tǒng)。2008年,微軟發(fā)布了面向企業(yè)級市場的高端數(shù)據(jù)庫軟件SQL Server 2008?!?Sybase是SYBASE軟件公司(已被SAP收購)的系列產(chǎn)品,SYBASE公司成立于1984年。SYBASE公司是第一個(gè)提出并推出客戶/服務(wù)器(C/S)體系結(jié)構(gòu)的高性能數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)庫廠商,并促進(jìn)了它的廣泛流行?!鲫P(guān)系技術(shù)公司(Relational Technology Inc)的I
19、NGRES數(shù)據(jù)庫系統(tǒng)的多項(xiàng)技術(shù)直接采用了Berkeley大學(xué)的最新研究成果,多應(yīng)用在高等學(xué)校和科研所等,■另一陣營:開放源代碼數(shù)據(jù)庫 以瑞典的MySQL為代表(08年被Sun收購,隨后Sun已被Oracle收購):據(jù)統(tǒng)計(jì),該軟件如今的下載量已經(jīng)超過了一億份,最新版本MySQL5.5。還有Ingres 、 PostgreSQL等.,第一章 數(shù)據(jù)庫系統(tǒng)概述,■數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)與數(shù)據(jù)庫應(yīng)用系統(tǒng)■
20、計(jì)算機(jī)數(shù)據(jù)處理技術(shù)的發(fā)展 ■數(shù)據(jù)庫系統(tǒng)的特點(diǎn)與功能 ■數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)■數(shù)據(jù)庫數(shù)據(jù)模型 ■數(shù)據(jù)庫系統(tǒng)組成■數(shù)據(jù)庫技術(shù)的研究領(lǐng)域,概 要,數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)與數(shù)據(jù)庫應(yīng)用系統(tǒng)■計(jì)算機(jī)數(shù)據(jù)處理技術(shù)的發(fā)展 ■數(shù)據(jù)庫系統(tǒng)的特點(diǎn)與功能 ■數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)■數(shù)據(jù)庫數(shù)據(jù)模型 ■數(shù)據(jù)庫系統(tǒng)的組成■數(shù)據(jù)庫技術(shù)的研究領(lǐng)域,,DB、DBMS、DBS、DBAS,■什么是數(shù)據(jù)庫(DB) ■數(shù)據(jù)庫管理系統(tǒng) (DBMS)
21、 ■數(shù)據(jù)庫系統(tǒng)(DBS) ■數(shù)據(jù)庫應(yīng)用系統(tǒng)(DBAS),什么是數(shù)據(jù)庫?,■ 數(shù)據(jù)庫(DataBase,DB ) 以一定的組織方式長期存儲在計(jì)算機(jī)內(nèi)的,為多種應(yīng)用服務(wù)的,相互有關(guān)的結(jié)構(gòu)化的數(shù)據(jù)集合。 即統(tǒng)一管理的相互關(guān)聯(lián)的數(shù)據(jù)的集合,數(shù)據(jù)庫管理系統(tǒng) (DBMS),■ DBMS是位于用戶與數(shù)據(jù)庫之間的一層數(shù)據(jù)管理系統(tǒng)軟件,是數(shù)據(jù)庫的核心。它提供了一個(gè)軟件環(huán)境,使用戶能方便快速地建立、維護(hù)、檢索、存取和處理數(shù)據(jù)庫
22、中的信息 ■ DBMS的組成 ◆ 數(shù)據(jù)描述語言(DDL)及其翻譯處理程序 ◆ 數(shù)據(jù)操縱語言(DML)及其編譯程序 ◆ 系統(tǒng)建立維護(hù)程序,DBMS的功能,用戶對數(shù)據(jù)庫的所有操作以及應(yīng)用程序的執(zhí)行,都是通過DBMS進(jìn)行的,它主要有以下幾個(gè)方面的功能: ■ 數(shù)據(jù)庫的定義和建立 ■ 數(shù)據(jù)庫的操作 ■ 數(shù)據(jù)庫的管理 ■ 數(shù)據(jù)庫的維護(hù),數(shù)據(jù)庫系統(tǒng)(DBS),■引入數(shù)據(jù)
23、庫后的計(jì)算機(jī)系統(tǒng),即把數(shù)據(jù)庫、有關(guān)的硬件、軟件和人員組合起來提供信息服務(wù)的系統(tǒng)。■廣義的DBS包括:◆數(shù)據(jù)庫(DB) ◆數(shù)據(jù)庫管理系統(tǒng)DBMS◆支持DBMS的軟、硬件環(huán)境◆數(shù)據(jù)庫管理員DBA◆用戶及其應(yīng)用程序,一個(gè)簡化的數(shù)據(jù)庫系統(tǒng)環(huán)境,用戶 用戶,應(yīng)用程序,數(shù)據(jù)庫操作,數(shù) 據(jù) 庫 管 理 系 統(tǒng),數(shù)據(jù)庫操作,操 作 系 統(tǒng)
24、,數(shù)據(jù)字典,數(shù)據(jù)庫數(shù)據(jù),,,,,,,,,數(shù)據(jù)庫管理員,,,,數(shù)據(jù)庫應(yīng)用系統(tǒng)( DBAS ),■ DBAS是在DBMS支持下的一類計(jì)算機(jī)應(yīng)用系統(tǒng),是由數(shù)據(jù)庫系統(tǒng)和各種用戶應(yīng)用程序結(jié)合而成的。 它不同于使用普通文件和由文件管理程序支持的系統(tǒng),要包括專用或通用的DBMS■ DBAS中的應(yīng)用程序可以分為: ◆功能程序:完成特定的操作要求,如修改、查詢、打印等 ◆控制程序:顯示功能清單(菜單),接受用戶選擇,并調(diào)用相應(yīng)的程序來完成用戶
25、的操作意向,概 要,■數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)與數(shù)據(jù)庫應(yīng)用系統(tǒng) 計(jì)算機(jī)數(shù)據(jù)處理技術(shù)的發(fā)展 ■數(shù)據(jù)庫系統(tǒng)的特點(diǎn)與功能 ■數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)■數(shù)據(jù)庫數(shù)據(jù)模型 ■數(shù)據(jù)庫系統(tǒng)的組成■數(shù)據(jù)庫技術(shù)的研究領(lǐng)域,,本節(jié)重點(diǎn),數(shù)據(jù)庫 VS 文件系統(tǒng) 理解數(shù)據(jù)庫技術(shù)的特點(diǎn)和根本出發(fā)點(diǎn)數(shù)據(jù)庫外部體系結(jié)構(gòu)的變化數(shù)據(jù)庫系統(tǒng)的三層內(nèi)部結(jié)構(gòu),計(jì)算機(jī)數(shù)據(jù)處理技術(shù)的發(fā)展,■人工管理階段 ■文件管理階段 ■數(shù)
26、據(jù)庫系統(tǒng)階段,人工管理階段,■數(shù)據(jù)不保存 ■數(shù)據(jù)與程序不具有獨(dú)立性 ■只有程序沒有文件的概念 ■數(shù)據(jù)面向應(yīng)用,文件管理階段,文件系統(tǒng)是操作系統(tǒng)中主要用來管理輔助存儲器 上的數(shù)據(jù)的子系統(tǒng) ■數(shù)據(jù)可長期保存在磁盤上 ■數(shù)據(jù)的存取以記錄為單位
27、 ■文件系統(tǒng)提供了多種文件結(jié)構(gòu) 和存取方法,對文件的記錄可 順序訪問和隨機(jī)訪問 ■文件的形式多樣化 ■程序與數(shù)據(jù)之間有了一定的獨(dú)
28、 立性,但又緊密相關(guān) ■數(shù)據(jù)的邏輯結(jié)構(gòu)和輸入輸出格 式仍由程序員在程序中定義和
29、 管理,文件系統(tǒng)的缺陷,■數(shù)據(jù)共享性差,冗余度大 不同的應(yīng)用程序獨(dú)立地定義和處理自己的文件,相同的數(shù)據(jù)集合在不同的應(yīng)用程序中使用時(shí),經(jīng)常需要重復(fù)定義、重復(fù)存儲 ■數(shù)據(jù)不一致 相同數(shù)據(jù)的重復(fù)存儲,單獨(dú)管理,給數(shù)據(jù)的修改和維護(hù)帶來了困難,容易造成數(shù)據(jù)不一致 ■數(shù)據(jù)獨(dú)立性差 文件與應(yīng)用程序聯(lián)系緊密,當(dāng)文件的結(jié)構(gòu)發(fā)生改變時(shí),必須修改應(yīng)用程序,
30、包括修改記錄結(jié)構(gòu)的定義和應(yīng)用程序的數(shù)據(jù)處理部分 ■數(shù)據(jù)結(jié)構(gòu)化程度低 文件之間是孤立的,從整體上看是無結(jié)構(gòu) 、無聯(lián)系的,概 要,■數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)與數(shù)據(jù)庫應(yīng)用系統(tǒng)■計(jì)算機(jī)數(shù)據(jù)處理技術(shù)的發(fā)展 數(shù)據(jù)庫系統(tǒng)的特點(diǎn)與功能 ■數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)■數(shù)據(jù)庫數(shù)據(jù)模型 ■數(shù)據(jù)庫系統(tǒng)的組成■數(shù)據(jù)庫技術(shù)的研究領(lǐng)域,,數(shù)據(jù)庫系統(tǒng)的特點(diǎn)與功能,■做到了以數(shù)據(jù)為中心■為數(shù)據(jù)處理提供了一種更完善、高級的管理方式,實(shí)現(xiàn)了
31、對所有相關(guān)數(shù)據(jù)的統(tǒng)一、集中、獨(dú)立的管理. ■主要優(yōu)點(diǎn) : ◆數(shù)據(jù)集成 ◆數(shù)據(jù)的結(jié)構(gòu)化 ◆控制數(shù)據(jù)冗余 ◆數(shù)據(jù)的獨(dú)立性 ◆數(shù)據(jù)的共享性高 ◆統(tǒng)一的數(shù)據(jù)控制功能,,■數(shù)據(jù)集成 數(shù)據(jù)集成是數(shù)據(jù)庫管理系統(tǒng)的主要目的,通過數(shù)據(jù)集成來統(tǒng)一計(jì)劃與協(xié)調(diào)遍及各相關(guān)應(yīng)用領(lǐng)域的信息資源,這樣可使數(shù)據(jù)得到最大程度的共享,而冗余最少。 下圖所示的表明了一個(gè)集成的人事
32、工資信息系統(tǒng),其中的人事工資數(shù)據(jù)庫由所有相關(guān)應(yīng)用共享。,工資發(fā)放 系統(tǒng),數(shù)據(jù)庫管理軟件,勞資人事數(shù)據(jù)庫,人力資源管理系統(tǒng),薪酬管理系統(tǒng),業(yè)務(wù)管理 系統(tǒng),,,,,■控制數(shù)據(jù)冗余,在數(shù)據(jù)庫設(shè)計(jì)階段,我們只要充分考慮所有用戶的數(shù)據(jù)管理需求,將所有數(shù)據(jù)集成為單一的邏輯結(jié)構(gòu),而且每一數(shù)據(jù)項(xiàng)值可以理想地只存儲一次,即可避免數(shù)據(jù)冗余。 然而,我們并不認(rèn)為所有的冗余都可以或應(yīng)該消除,有時(shí),由于應(yīng)用業(yè)務(wù)或技術(shù)上的原因,如數(shù)據(jù)合法性檢
33、驗(yàn)、數(shù)據(jù)存取效率等方面的需要,同一數(shù)據(jù)可能在數(shù)據(jù)庫中保持多個(gè)副本。但是,在數(shù)據(jù)庫系統(tǒng)中,冗余是受控的。 ■數(shù)據(jù)一致性 通過消除或控制數(shù)據(jù)冗余,可以在一定范圍內(nèi)避免數(shù)據(jù)的不一致性 .當(dāng)發(fā)生更新時(shí),數(shù)據(jù)庫系統(tǒng)本身可以通過更新所有其他副本來自動保護(hù)數(shù)據(jù)的一致性。,,■數(shù)據(jù)的獨(dú)立性指數(shù)據(jù)與應(yīng)用程序之間不存在相互依賴關(guān)系 ◆數(shù)據(jù)的物理獨(dú)立性: 指當(dāng)數(shù)據(jù)存儲結(jié)構(gòu)(或稱物理結(jié)構(gòu))改變時(shí),數(shù)據(jù)的邏輯結(jié)構(gòu)不變,則用
34、戶編寫的應(yīng)用程序不變。 ◆數(shù)據(jù)的邏輯獨(dú)立性: 指當(dāng)數(shù)據(jù)的總體邏輯結(jié)構(gòu)改變時(shí),應(yīng)用程序可以不變。 ■統(tǒng)一的數(shù)據(jù)控制功能 ◆數(shù)據(jù)的完整性 ◆安全性保護(hù) ◆并發(fā)控制 ◆故障發(fā)現(xiàn)和恢復(fù) ◆可修改和可擴(kuò)充性,概 要,■數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)與數(shù)據(jù)庫應(yīng)用系統(tǒng)■計(jì)算機(jī)數(shù)據(jù)處理技術(shù)的發(fā)展 ■數(shù)據(jù)庫系統(tǒng)的特點(diǎn)與功能 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)■數(shù)據(jù)庫數(shù)據(jù)模型 ■數(shù)據(jù)庫系統(tǒng)的組成■數(shù)據(jù)庫技術(shù)的研究領(lǐng)
35、域,,數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu),可以從多角度來考察、描述數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)■從數(shù)據(jù)庫最終實(shí)現(xiàn)角度看,即數(shù)據(jù)庫系統(tǒng)外部的體系結(jié)構(gòu)■從數(shù)據(jù)庫管理系統(tǒng)角度看,即數(shù)據(jù)庫系統(tǒng)內(nèi)部的結(jié)構(gòu),通常是采用三級模式結(jié)構(gòu),數(shù)據(jù)庫系統(tǒng)外部的體系結(jié)構(gòu),可分為:◆ 集中式DBS(Centralized DBS) ◆ 分布式DBS(Distributed DBS) ◆ 并行式DBS(Parallel DBS) ◆ 客戶機(jī)/服務(wù)器式DBS(Client/Ser
36、ver DBS,記為C/S DBS) ◆ 瀏覽器/WEB服務(wù)器/數(shù)據(jù)庫服務(wù)器(B/W/D)結(jié)構(gòu)的DBS,單用戶數(shù)據(jù)庫系統(tǒng),整個(gè)數(shù)據(jù)庫系統(tǒng)(應(yīng)用程序、DBMS、數(shù)據(jù))裝在一臺計(jì)算機(jī)上,為一個(gè)用戶獨(dú)占,不同機(jī)器之間不能共享數(shù)據(jù)。早期的最簡單的數(shù)據(jù)庫系統(tǒng),主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng),一個(gè)主機(jī)帶多個(gè)終端的多用戶結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng),包括應(yīng)用程序、DBMS、數(shù)據(jù),都集中存放在主機(jī)上,所有處理任務(wù)都由 主機(jī)來完成各個(gè)用戶通過主機(jī)的終端并發(fā)
37、地存取數(shù)據(jù)庫,共享數(shù)據(jù)資源,主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng),主機(jī),終端,,,,,,主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)(續(xù)),優(yōu)點(diǎn)易于管理、控制與維護(hù)。缺點(diǎn)當(dāng)終端用戶數(shù)目增加到一定程度后,主機(jī)的任務(wù)會過分繁重,成為瓶頸,從而使系統(tǒng)性能下降。系統(tǒng)的可靠性依賴主機(jī),當(dāng)主機(jī)出現(xiàn)故障時(shí),整個(gè)系統(tǒng)都不能使用。,分布式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng),數(shù)據(jù)庫中的數(shù)據(jù)在邏輯上是一個(gè)整體,但物理地分布在計(jì)算機(jī)網(wǎng)絡(luò)的不同結(jié)點(diǎn)上。網(wǎng)絡(luò)中的每個(gè)結(jié)點(diǎn)都可以獨(dú)立處理本地?cái)?shù)據(jù)庫中的數(shù)據(jù),執(zhí)行
38、局部應(yīng)用同時(shí)也可以同時(shí)存取和處理多個(gè)異地?cái)?shù)據(jù)庫中的數(shù)據(jù),執(zhí)行全局應(yīng)用,分布式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)(續(xù)),優(yōu)點(diǎn)適應(yīng)了地理上分散的公司、團(tuán)體和組織對于數(shù)據(jù)庫應(yīng)用的需求。缺點(diǎn)數(shù)據(jù)的分布存放給數(shù)據(jù)的處理、管理與維護(hù)帶來困難。當(dāng)用戶需要經(jīng)常訪問遠(yuǎn)程數(shù)據(jù)時(shí),系統(tǒng)效率會明顯地受到網(wǎng)絡(luò)傳輸?shù)闹萍s。,客戶/服務(wù)器結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng),把DBMS功能和應(yīng)用分開網(wǎng)絡(luò)中某個(gè)(些)結(jié)點(diǎn)上的計(jì)算機(jī)專門用于執(zhí)行DBMS功能,稱為數(shù)據(jù)庫服務(wù)器,簡稱服務(wù)器其他結(jié)點(diǎn)
39、上的計(jì)算機(jī)安裝DBMS的外圍應(yīng)用開發(fā)工具,用戶的應(yīng)用系統(tǒng),稱為客戶機(jī),數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu) —— C/S式DBS,數(shù)據(jù)庫,DBMS,數(shù)據(jù)庫訪問接口,數(shù)據(jù)庫訪問接口,數(shù)據(jù)庫訪問接口,應(yīng)用程序,應(yīng)用程序,應(yīng)用程序,LAN,客戶/服務(wù)器數(shù)據(jù)庫系統(tǒng)的種類,集中的服務(wù)器結(jié)構(gòu) 一臺數(shù)據(jù)庫服務(wù)器,多臺客戶機(jī)分布的服務(wù)器結(jié)構(gòu)在網(wǎng)絡(luò)中有多臺數(shù)據(jù)庫服務(wù)器分布的服務(wù)器結(jié)構(gòu)是客戶/服務(wù)器與分布式數(shù)據(jù)庫的結(jié)合,客戶/服務(wù)器結(jié)構(gòu)的優(yōu)點(diǎn),顯著減少了
40、數(shù)據(jù)傳輸量數(shù)據(jù)庫更加開放客戶與服務(wù)器一般都能在多種不同的硬件和軟件平臺上運(yùn)行可以使用不同廠商的數(shù)據(jù)庫應(yīng)用開發(fā)工具,客戶/服務(wù)器結(jié)構(gòu)的缺點(diǎn),“胖客戶”問題:系統(tǒng)安裝復(fù)雜,工作量大。應(yīng)用維護(hù)困難,難于保密,造成安全性差。相同的應(yīng)用程序要重復(fù)安裝在每一臺客戶機(jī)上,從系統(tǒng)總體來看,大大浪費(fèi)了系統(tǒng)資源。 系統(tǒng)規(guī)模達(dá)到數(shù)百數(shù)千臺客戶機(jī),它們的硬件配置、操作系統(tǒng)又常常不同,要為每一個(gè)客戶機(jī)安裝應(yīng)用程序和相應(yīng)的工具模塊,其安裝維護(hù)代價(jià)
41、便不可接受了。,瀏覽器/應(yīng)用服務(wù)器/數(shù)據(jù)庫的系統(tǒng)結(jié)構(gòu),客戶端: 瀏覽器軟件、用戶界面 瀏覽器的界面統(tǒng)一,廣大用戶容易掌握 大大減少了培訓(xùn)時(shí)間與費(fèi)用。服務(wù)器端分為兩部分:Web服務(wù)器、應(yīng)用服務(wù)器數(shù)據(jù)庫服務(wù)器等 大大減少了系統(tǒng)開發(fā)和維護(hù)代價(jià),能夠支持?jǐn)?shù)萬甚至更多的用戶.,數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu) —— B/W/D式DBS,數(shù)據(jù)庫,WebServer,瀏覽器,瀏覽器,瀏覽器,數(shù)據(jù)訪問頁
42、面,數(shù)據(jù)訪問頁面,數(shù)據(jù)訪問頁面,Internet/Intranet/Extranet,,DBMS,數(shù)據(jù)庫的三級模式結(jié)構(gòu),■實(shí)際的數(shù)據(jù)庫管理系統(tǒng)雖然種類很多,但在體系結(jié)構(gòu)上都具有相同特征:即采用三級模式結(jié)構(gòu)并提供兩級映象(抽象)功能 ■三級模式結(jié)構(gòu)是指:數(shù)據(jù)庫系統(tǒng)是由外模式、概念模式和內(nèi)模式 構(gòu)成的 ■兩級抽象是指: 概念級抽象把數(shù)據(jù)庫的外模式抽象為數(shù)據(jù)庫的概念模式;物理級抽象把數(shù)據(jù)庫的概念模式抽象為數(shù)據(jù)庫的內(nèi)模式
43、 三級模式和兩種數(shù)據(jù)抽象的對應(yīng)關(guān)系如下圖所示,數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu),1.模式(Schema),模式(也稱邏輯模式)數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述所有用戶的公共數(shù)據(jù)視圖一個(gè)數(shù)據(jù)庫只有一個(gè)模式,,模式的地位:是數(shù)據(jù)庫系統(tǒng)模式結(jié)構(gòu)的中間層與數(shù)據(jù)的物理存儲細(xì)節(jié)和硬件環(huán)境無關(guān)與具體的應(yīng)用程序、開發(fā)工具及高級程序設(shè)計(jì)語言無關(guān)模式的定義數(shù)據(jù)的邏輯結(jié)構(gòu)(數(shù)據(jù)項(xiàng)的名字、類型、取值范圍等)數(shù)據(jù)之間的聯(lián)系數(shù)據(jù)
44、有關(guān)的安全性、完整性要求,2. 外模式(External Schema),外模式(也稱子模式或用戶模式)數(shù)據(jù)庫用戶(包括應(yīng)用程序員和最終用戶)使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示,外模式(續(xù)),外模式的地位:介于模式與應(yīng)用之間--模式與外模式的關(guān)系:一對多外模式通常是模式的子集一個(gè)數(shù)據(jù)庫可以有多個(gè)外模式。反映了不同的用戶的應(yīng)用需求、看待數(shù)據(jù)的方式、對數(shù)據(jù)保密的要求對模式中
45、同一數(shù)據(jù),在外模式中的結(jié)構(gòu)、類型、長度、保密級別等都可以不同,外模式(續(xù)),--外模式與應(yīng)用的關(guān)系:一對多同一外模式也可以為某一用戶的多個(gè)應(yīng)用系統(tǒng)所使用,但一個(gè)應(yīng)用程序只能使用一個(gè)外模式。外模式的用途--保證數(shù)據(jù)庫安全性的一個(gè)有力措施。--每個(gè)用戶只能看見和訪問所對應(yīng)的外模式中的數(shù)據(jù),3.內(nèi)模式(Internal Schema),內(nèi)模式(也稱存儲模式)是數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式記錄的存儲方
46、式(順序存儲,按照B樹結(jié)構(gòu)存儲,按hash方法存儲)索引的定義、組織方式數(shù)據(jù)是否壓縮存儲、數(shù)據(jù)是否加密數(shù)據(jù)存儲記錄結(jié)構(gòu)的規(guī)定所使用的設(shè)備特征一個(gè)數(shù)據(jù)庫只有一個(gè)內(nèi)模式。,二級映象,三級模式是對數(shù)據(jù)的三個(gè)抽象級別二級映象在DBMS內(nèi)部實(shí)現(xiàn)這三個(gè)抽象層次的聯(lián)系和轉(zhuǎn)換,外模式/模式映象,外模式/模式映象把數(shù)據(jù)庫的外模式抽象為數(shù)據(jù)庫的邏輯模式。數(shù)據(jù)庫的邏輯模式綜合了外模式中所有視圖,反映了所有數(shù)據(jù)庫用戶所關(guān)心的現(xiàn)實(shí)世界的抽象,形成
47、了數(shù)據(jù)庫的整體邏輯結(jié)構(gòu)。 數(shù)據(jù)庫定義機(jī)構(gòu)提供了概念抽象的工具,可以用來定義概念數(shù)據(jù)庫模式的邏輯結(jié)構(gòu)。,模式/內(nèi)模式映象,模式/內(nèi)模式映象把數(shù)據(jù)庫的概念模式進(jìn)一步抽象成為數(shù)據(jù)庫的內(nèi)模式。數(shù)據(jù)庫的內(nèi)模式描述了數(shù)據(jù)如何在物理存儲設(shè)備上存儲。 數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)定義語言的物理數(shù)據(jù)庫定義機(jī)構(gòu)提供了物理抽象的工具,可以用來定義數(shù)據(jù)庫的物理存儲結(jié)構(gòu)。,視圖,DBMS把不同用戶的觀點(diǎn)抽象為多個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)。每個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)稱為一
48、個(gè)視圖(或用戶視圖),描述了每個(gè)用戶所關(guān)心的數(shù)據(jù)。所有視圖的集合形成了數(shù)據(jù)庫的外模式(或子模式)。 數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)定義語言的視圖定義機(jī)構(gòu)提供了進(jìn)行視圖抽象的工具,可以用來定義視圖的邏輯結(jié)構(gòu)。,數(shù)據(jù)獨(dú)立性,數(shù)據(jù)庫系統(tǒng)提供的兩種數(shù)據(jù)映象能力和三級數(shù)據(jù)庫模式實(shí)現(xiàn)了兩種數(shù)據(jù)獨(dú)立性。 兩種數(shù)據(jù)獨(dú)立性的本質(zhì)是把數(shù)據(jù)定義從應(yīng)用程序中分離出來。應(yīng)用程序中的數(shù)據(jù)存取由數(shù)據(jù)庫系統(tǒng)完成從而減少了編制程序的工作量,減少了應(yīng)用程序的維
49、護(hù)和修改 值得注意的是,實(shí)際數(shù)據(jù)庫系統(tǒng)的邏輯數(shù)據(jù)獨(dú)立性不能保證直接建立在數(shù)據(jù)庫概念模式上的應(yīng)用程序與數(shù)據(jù)的獨(dú)立。當(dāng)數(shù)據(jù)庫的概念模式改變時(shí),這些應(yīng)用程序仍然需要修改。從這種意義上講,數(shù)據(jù)庫系統(tǒng)提供的邏輯數(shù)據(jù)獨(dú)立性是不完備的,小結(jié),模式是數(shù)據(jù)庫的中心與關(guān)鍵獨(dú)立于數(shù)據(jù)庫的其它層次設(shè)計(jì)數(shù)據(jù)庫模式結(jié)構(gòu)時(shí)應(yīng)首先確定數(shù)據(jù)庫的邏輯模式,小結(jié)(續(xù)),內(nèi)模式依賴于全局邏輯結(jié)構(gòu),但獨(dú)立于數(shù)據(jù)庫的用戶視圖即外模式,也獨(dú)立于具體的存儲設(shè)備。它
50、將全局邏輯結(jié)構(gòu)中所定義的數(shù)據(jù)結(jié)構(gòu)及其聯(lián)系按照一定的物理存儲策略進(jìn)行組織,以達(dá)到較好的時(shí)間與空間效率。,小結(jié)(續(xù)),外模式面向具體的應(yīng)用程序,定義在邏輯模式之上,但獨(dú)立于存儲模式和存儲設(shè)備設(shè)計(jì)外模式時(shí)應(yīng)充分考慮到應(yīng)用的擴(kuò)充性。當(dāng)應(yīng)用需求發(fā)生較大變化,相應(yīng)外模式不能滿足其視圖要求時(shí),該外模式就得做相應(yīng)改動,小結(jié)(續(xù)),應(yīng)用程序在外模式描述的數(shù)據(jù)結(jié)構(gòu)上編制的,它依賴于特定的外模式,與數(shù)據(jù)庫的模式和存儲結(jié)構(gòu)獨(dú)立。不同的應(yīng)用程序有時(shí)可以共
51、用同一個(gè)外模式。,小結(jié)(續(xù)),二級映象 - 保證了數(shù)據(jù)庫外模式的穩(wěn)定性,從而從底層保證了應(yīng)用程序的穩(wěn)定性,除非應(yīng)用需求本身發(fā)生變化,否則應(yīng)用程序一般不需要修改。 - 數(shù)據(jù)與程序之間的獨(dú)立性,使得數(shù)據(jù)的定義和描述可以從應(yīng)用程序中分離出去。,Thank You !,,數(shù) 據(jù) 庫 技 術(shù) 及 應(yīng) 用,北京郵電大學(xué)信息與通信工程學(xué)院龔萍pgong@bupt.edu.cn,本節(jié)課要解決的問題,■掌握一個(gè)工具,在設(shè)計(jì)一個(gè)
52、龐大的應(yīng)用系統(tǒng)時(shí), 逐步理清各種對象及它們之間錯(cuò)綜復(fù)雜的聯(lián)系,從而清晰地得到計(jì)算機(jī)最終要處理的數(shù)據(jù)■開始在SQL Server2005中,認(rèn)識、了解實(shí)際的關(guān)系數(shù)據(jù)庫, 從而理解對應(yīng)的概念■數(shù)據(jù)庫(一個(gè)軟件及其理論基礎(chǔ))是如何來反映、實(shí)現(xiàn)現(xiàn)實(shí)世界的對象的,是從幾個(gè)方面(或部分)來全面考慮的???,概 要,■數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)與數(shù)據(jù)庫應(yīng)用系統(tǒng)■計(jì)算機(jī)數(shù)據(jù)處理技術(shù)的發(fā)展 ■數(shù)據(jù)庫系統(tǒng)的特點(diǎn)與功能 ■數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)
53、 數(shù)據(jù)庫數(shù)據(jù)模型 ■數(shù)據(jù)庫系統(tǒng)的組成■數(shù)據(jù)庫技術(shù)的研究領(lǐng)域,,數(shù)據(jù)庫數(shù)據(jù)模型,■數(shù)據(jù)模型是對現(xiàn)實(shí)世界的抽象,是數(shù)據(jù)間的一個(gè)整體邏輯結(jié)構(gòu)圖■計(jì)算機(jī)反映現(xiàn)實(shí)世界的過程及術(shù)語現(xiàn)實(shí)世界-------->信息世界----------->計(jì)算機(jī)世界 (概念模型) (數(shù)據(jù)模型) 個(gè)體 實(shí)體(Entity)
54、 記錄(Record)或元組 特征 屬性(Attribute) 字段(Field) 關(guān)聯(lián) 關(guān)系(Relation) 數(shù)據(jù)模型(Data Model) 集合 實(shí)體集(Entity Set) 文件(File),數(shù)據(jù)模型要素,數(shù)據(jù)模型是描述數(shù)據(jù)、數(shù)據(jù)聯(lián)系、數(shù)據(jù)的語義和完整性約束的概念集合,通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完
55、整性約束三部分組成 :■數(shù)據(jù)結(jié)構(gòu) ◆數(shù)據(jù)結(jié)構(gòu)是所研究的對象的類型的集合,這些對象是數(shù)據(jù)庫的組成部分。包括兩類:一類是與數(shù)據(jù)類型、內(nèi)容有關(guān)的對象,一類是與數(shù)據(jù)之間聯(lián)系有關(guān)的對象?!?#160;數(shù)據(jù)操作 ◆ 數(shù)據(jù)操作是指對數(shù)據(jù)模型中各種對象型的實(shí)例所允許執(zhí)行的所有操作的集合,包括操作及有關(guān)的操作規(guī)則。數(shù)據(jù)模型要定義這些操作的確切含義、操作符號、操作規(guī)則如操作優(yōu)先級別以及實(shí)現(xiàn)操作的語言. 數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜
56、態(tài)特性的描述,數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述,,■數(shù)據(jù)的完整性約束條件 ◆數(shù)據(jù)的完整性約束條件是完整性規(guī)則的集合包括:數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則。 ◆數(shù)據(jù)模型既反映和規(guī)定本數(shù)據(jù)模型必須遵守的基本的通用的完整性約束條件,還應(yīng)具備定義特定完整性約束條件的機(jī)制. 在實(shí)際數(shù)據(jù)庫系統(tǒng)中,人們(主要是DBA)用DBMS提供的數(shù)據(jù)描述語言DDL,按照該DBMS支持的某種數(shù)據(jù)模型的要求來描述系統(tǒng)的概念模型,兩類
57、數(shù)據(jù)模型,根據(jù)模型應(yīng)用的不同目的,可以將數(shù)據(jù)模型劃分為不同層次的兩類: ■ 概念模型:是按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模,主要應(yīng)用在數(shù)據(jù)庫設(shè)計(jì)階段 ■數(shù)據(jù)模型:主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等,它是按計(jì)算機(jī)觀點(diǎn)對數(shù)據(jù)建模,主要用于基本DBMS的實(shí)現(xiàn),概念模型,實(shí)體(Entity):實(shí)際上就是一些名詞,是一個(gè)人、地點(diǎn)、事物或者事件。屬性(Attribute):是指實(shí)體的特性,如學(xué)生實(shí)體的姓名、性別域(Domain):屬
58、性的取值范圍稱為該屬性的域碼或鍵(Key):是能唯一標(biāo)識一個(gè)實(shí)體的屬性或?qū)傩越M實(shí)體集(Entity Set):同類型實(shí)體的集合關(guān)系(Relation):意味著實(shí)體之間的聯(lián)系,關(guān)系有一對一、一對多關(guān)系和多對多關(guān)系,,■實(shí)體之間的聯(lián)系方式 ◆一對一 例:部門 —— 經(jīng)理、班級——班長 ◆一對多(多對一) 例:部門 —— 職工、班級——學(xué)生 ◆多對多 例:訂單——貨物、學(xué)生 —— 課程,概念模型的表示方法,■概
59、念模型的表示方法很多■ 實(shí)體-聯(lián)系方法(E-R方法)(Entity-Relationship Approach),是PeterChen于1976年提出的,即用E-R圖來描述某一組織的概念模型■ E-R方法也稱為E-R模型,E-R圖,■實(shí)體型用矩形表示,矩形框內(nèi)寫明實(shí)體名。,學(xué)生,教師,E-R圖(續(xù)),■屬性用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來,E-R圖(續(xù)),■聯(lián)系聯(lián)系本身:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并
60、用無向邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(1:1、1:n或m:n) 聯(lián)系的屬性:聯(lián)系本身也是一種實(shí)體型,也可以有屬性。如果一個(gè)聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來,,,聯(lián)系的表示方法,聯(lián)系的表示方法(續(xù)),,聯(lián)系的表示方法示例,聯(lián)系的表示方法示例(續(xù)),聯(lián)系屬性的表示方法,,E-R圖實(shí)例,P38 課后作業(yè)-12:,P38 課后作業(yè)-13:,,■ E-R圖實(shí)例: P19-P20 某工廠物
61、資管理E-R圖,,,包括,,班級,,學(xué)生,,,,1,N,,班級(班號,班主任,系),,學(xué)生(學(xué)號,姓名,性別,班號),,E-R圖轉(zhuǎn)換成關(guān)系模式(示例一),1 : N,,,班主任,,系,班號,,學(xué)號,,姓名,,班號,,性別,,,,,,,,,M : N,,學(xué)生(學(xué)號,姓名,性別,班號),,課程(課程號,課程名,學(xué)分),,選課(學(xué)號,課程號,成績),,E-R圖轉(zhuǎn)換成關(guān)系模式(示例二),M : N,常用數(shù)據(jù)模型,■非關(guān)系模型層次模型(Hier
62、archical Model)網(wǎng)狀模型(Network Model )■非關(guān)系模型數(shù)據(jù)結(jié)構(gòu):以基本層次聯(lián)系為基本單位 基本層次聯(lián)系:兩個(gè)記錄以及它們之間的一對多(包括一對一)的聯(lián)系,常用數(shù)據(jù)模型(續(xù)),■關(guān)系模型(Relational Model) 數(shù)據(jù)結(jié)構(gòu):表■面向?qū)ο竽P?Object Oriented Model)數(shù)據(jù)結(jié)構(gòu):對象,層次模型,■用樹形或森林結(jié)構(gòu)來表示實(shí)體及實(shí)體間聯(lián)系的模型叫層次數(shù)據(jù)模型
63、■實(shí)體用獨(dú)立的節(jié)點(diǎn)(記錄)表示,實(shí)體間的聯(lián)系(僅限于一對多)用記錄間指針表示■較嚴(yán)格地說,層次數(shù)據(jù)模型指滿足下列條件的基本層次聯(lián)系的集合 ◆有且僅有一個(gè)節(jié)點(diǎn)無父節(jié)點(diǎn),此節(jié)點(diǎn)即根節(jié)點(diǎn) ◆根節(jié)點(diǎn)以外的其他節(jié)點(diǎn)有且僅有一個(gè)父節(jié)點(diǎn) ■層次模型中的幾個(gè)術(shù)語◆根節(jié)點(diǎn),雙親節(jié)點(diǎn),兄弟節(jié)點(diǎn),葉節(jié)點(diǎn),層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)),,層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)),■表示方法◆實(shí)體型:用記錄類型描述。 每個(gè)節(jié)點(diǎn)表
64、示一個(gè)記錄類型?!魧傩裕河米侄蚊枋?。每個(gè)記錄類型可包含若干個(gè)字段?!袈?lián)系:用節(jié)點(diǎn)之間的連線表示記錄(類)型之間的 一對多的聯(lián)系實(shí)例:教員-學(xué)生數(shù)據(jù)模型(P21),層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)),■特點(diǎn)節(jié)點(diǎn)的雙親是唯一的只能直接處理一對多的實(shí)體聯(lián)系每個(gè)記錄類型定義一個(gè)排序字段,也稱為碼字段任何記錄值只有按其路徑查看時(shí),才能顯出它的全部意義沒有一個(gè)子女記錄值能夠脫離雙親記錄值而獨(dú)立存在,層次數(shù)據(jù)模型的數(shù)
65、據(jù)結(jié)構(gòu)(續(xù)),■多對多聯(lián)系在層次模型中的表示用層次模型間接表示多對多聯(lián)系方法將多對多聯(lián)系分解成一對多聯(lián)系分解方法冗余節(jié)點(diǎn)法虛擬節(jié)點(diǎn)法,層次模型的數(shù)據(jù)操縱,查詢 插入 刪除 更新,層次模型的完整性約束,■無相應(yīng)的雙親節(jié)點(diǎn)值就不能插入子女節(jié)點(diǎn)值■如果刪除雙親節(jié)點(diǎn)值,則相應(yīng)的子女節(jié)點(diǎn)值也被同時(shí)刪除■更新操作時(shí),應(yīng)更新所有相應(yīng)記錄,以保證數(shù)據(jù)的一致性,層次數(shù)據(jù)模型的存儲結(jié)構(gòu),■鄰接法按照層次樹前序遍歷的順序把所有記錄值依
66、次鄰接存放,即通過物理空間的位置相鄰來實(shí)現(xiàn)層次順序■鏈接法用指引元來反映數(shù)據(jù)之間的層次聯(lián)系子女-兄弟鏈接法 P26層次序列鏈接法 P26,層次模型的優(yōu)缺點(diǎn),■優(yōu)點(diǎn)層次數(shù)據(jù)模型簡單,對具有一對多的層次關(guān)系的部門描述自然、直觀,容易理解性能優(yōu)于關(guān)系模型,不低于網(wǎng)狀模型層次數(shù)據(jù)模型提供了良好的完整性支持■缺點(diǎn)多對多聯(lián)系表示不自然對插入和刪除操作的限制多查詢子女節(jié)點(diǎn)必須通過雙親節(jié)點(diǎn)層次命令趨于程序化,網(wǎng)狀模型
67、,■網(wǎng)狀模型 滿足下面幾個(gè)條件的基本層次聯(lián)系的集合為網(wǎng)狀模型?!粼试S一個(gè)以上的節(jié)點(diǎn)無雙親;◆一個(gè)節(jié)點(diǎn)可以有多于一個(gè)的雙親;◆允許兩個(gè)節(jié)點(diǎn)之間有多種聯(lián)系關(guān)系。,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu),,,,,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)),■表示方法(與層次數(shù)據(jù)模型相同)◆實(shí)體型:用記錄類型描述。 每個(gè)節(jié)點(diǎn)表示一個(gè)記錄類型?!魧傩裕河米侄蚊枋觥?每個(gè)記錄類型可包含若干個(gè)字段。◆聯(lián)系:
68、用節(jié)點(diǎn)之間的連線表示記錄(類)型之間的一對多的父子聯(lián)系。,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)),■特點(diǎn)只能直接處理一對多的實(shí)體聯(lián)系每個(gè)記錄類型定義一個(gè)排序字段,也稱為碼字段任何記錄值只有按其路徑查看時(shí),才能顯出它的全部意義,網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)(續(xù)),■網(wǎng)狀模型與層次模型的區(qū)別網(wǎng)狀模型允許多個(gè)節(jié)點(diǎn)沒有雙親節(jié)點(diǎn)網(wǎng)狀模型允許節(jié)點(diǎn)有多個(gè)雙親節(jié)點(diǎn)網(wǎng)狀模型允許兩個(gè)節(jié)點(diǎn)之間有多種聯(lián)系(復(fù)合聯(lián)系)網(wǎng)狀模型可以更直接地去描述現(xiàn)實(shí)世界層次模型實(shí)
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫技術(shù)及應(yīng)用教學(xué)大綱
- 數(shù)據(jù)庫原理及應(yīng)用
- 數(shù)據(jù)庫高級應(yīng)用技術(shù)
- 數(shù)據(jù)庫技術(shù)及應(yīng)用實(shí)踐教學(xué)考試大綱
- 數(shù)據(jù)庫應(yīng)用技術(shù)復(fù)習(xí)提要
- 數(shù)據(jù)庫應(yīng)用技術(shù)復(fù)習(xí)2009
- 數(shù)據(jù)庫技術(shù)與應(yīng)用習(xí)題答案
- 數(shù)據(jù)庫應(yīng)用技術(shù)復(fù)習(xí)2009
- 數(shù)據(jù)庫應(yīng)用技術(shù)在線作業(yè)
- 數(shù)據(jù)庫應(yīng)用技術(shù)模擬試題
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)
- 工程數(shù)據(jù)處理及數(shù)據(jù)庫技術(shù)
- 數(shù)據(jù)庫應(yīng)用技術(shù)大作業(yè)
- sqlserverr數(shù)據(jù)庫技術(shù)及應(yīng)用第版配套習(xí)題
- 數(shù)據(jù)庫應(yīng)用1
- 數(shù)據(jù)庫操作及認(rèn)識數(shù)據(jù)庫
- 超市管理數(shù)據(jù)庫設(shè)計(jì)-《數(shù)據(jù)庫原理及應(yīng)用》課程大作業(yè)
- 數(shù)據(jù)庫技術(shù)試題
- 基于Web數(shù)據(jù)庫的數(shù)據(jù)庫挖掘技術(shù).pdf
- 數(shù)據(jù)庫加密技術(shù)的研究及應(yīng)用.pdf
評論
0/150
提交評論