數(shù)據(jù)庫系統(tǒng)基礎知識_第1頁
數(shù)據(jù)庫系統(tǒng)基礎知識_第2頁
數(shù)據(jù)庫系統(tǒng)基礎知識_第3頁
數(shù)據(jù)庫系統(tǒng)基礎知識_第4頁
數(shù)據(jù)庫系統(tǒng)基礎知識_第5頁
已閱讀5頁,還剩85頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第一章數(shù)據(jù)庫系統(tǒng)基礎知識1.1數(shù)據(jù)庫概述1.2數(shù)據(jù)庫系統(tǒng)的組成及特點1.3數(shù)據(jù)庫管理系統(tǒng)1.4基本數(shù)據(jù)模型1.5數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.1數(shù)據(jù)庫概述1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫1.1.2數(shù)據(jù)管理技術的發(fā)展1.1數(shù)據(jù)庫概述1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫1.1.2數(shù)據(jù)管理技術的發(fā)展1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫數(shù)據(jù)(Data)信息(Information)數(shù)據(jù)庫(DataBase,簡稱DB)1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫數(shù)據(jù)(Data)數(shù)據(jù)在一般意義上被認為是對客觀事物特征所進行的一種抽象化、符號化表示。例如,某人出生日期是1988年6月28日,身高1.72m,體重66kg,其中1988年、6月、28日、1.72m、66kg等都是數(shù)據(jù),它們描述了該人的某些特征。數(shù)據(jù)可以有不同的形式。例如,出生日期可以表示為“1988.6.28”、“{06/28/88}”等形式。數(shù)據(jù)的概念,不僅包括數(shù)字、字母、漢字及其他特殊字符組成的文本形式的數(shù)據(jù),而且還包括圖形、圖像、聲音等多媒體數(shù)據(jù)。總之,凡是能夠被計算機處理的對象都稱為數(shù)據(jù)。1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫2.信息(Information)信息通常被認為是有一定含義的、經(jīng)過加工處理的、對決策有價值的數(shù)據(jù)。例如:某排球隊中,每個隊員的身高數(shù)據(jù)為1.85m、1.97m、1.86m、…,經(jīng)過計算得到平均身高為1.89m,這便是該排球隊的一條重要信息。數(shù)據(jù)與信息的聯(lián)系:信息=數(shù)據(jù)+處理

處理是指將數(shù)據(jù)轉(zhuǎn)換成為信息的過程,包括數(shù)據(jù)的收集、存儲、加工、排序、檢索等一系列活動。數(shù)據(jù)處理的目的是從大量的現(xiàn)有數(shù)據(jù)中,提取對人們有用的信息,作為決策的依據(jù)。1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫數(shù)據(jù)是信息的載體,它表示了信息;信息是數(shù)據(jù)的內(nèi)涵,即數(shù)據(jù)的語義解釋3.數(shù)據(jù)庫(DataBase,簡稱DB)數(shù)據(jù)庫是指存儲在計算機存儲設備上、結(jié)構(gòu)化的相關數(shù)據(jù)的集合。為了便于檢索和使用數(shù)據(jù),數(shù)據(jù)庫中的大量數(shù)據(jù)必須按照一定的規(guī)則(即數(shù)據(jù)模型)來存放,這就是所說的“結(jié)構(gòu)化”。存儲在數(shù)據(jù)庫中的數(shù)據(jù)彼此之間是有一定聯(lián)系的,而不是毫不相干的。數(shù)據(jù)庫不僅包括描述事物的數(shù)據(jù),而且還要詳細準確反映事物之間的聯(lián)系。1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫數(shù)據(jù)庫例子:

有一家網(wǎng)上書店,為了給其會員提供優(yōu)質(zhì)的客戶服務以及自身的經(jīng)營管理,該書店創(chuàng)建了基礎數(shù)據(jù)庫。數(shù)據(jù)庫中保留了每個會員的基本信息及其網(wǎng)上購書的銷售信息。

通過這些數(shù)據(jù),書店可以推斷出不同會員的偏好,并有針對性地給會員提供在線新書導購,以提高網(wǎng)上圖書的銷售量。同時,數(shù)據(jù)庫中保存的圖書基本信息與銷售信息很好地控制了虛擬庫存的數(shù)量,極大程度地降低了企業(yè)成本。

該數(shù)據(jù)庫中存儲的數(shù)據(jù)包括:會員信息表、圖書信息表以及銷售信息表,如表1-1、表1-2和表1-3所示。1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫表1-1會員信息表會員編號姓名性別年齡工作單位聯(lián)系電話E_mail00001李國強男35和平醫(yī)院23529768lgq@263.net00002陳新生男27新都證券交易中心23661745cxs@00003劉麗娟女40南開大學23507583llj@00004趙曉航男33軟件開發(fā)公司27466953zxh@163.com00005徐彤彤女38新蕾出版社28289405xtt@1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫表1-2圖書信息表圖書編號書名出版社書類作者單價庫存量00001數(shù)據(jù)結(jié)構(gòu)教程清華大學出版社計算機李春葆28.0010000002C++程序設計基礎南開大學出版社計算機李敏37.005000003數(shù)據(jù)庫原理與應用上海財經(jīng)大學出版社計算機趙龍強34.0015000004信息技術與管理北京大學出版社管理陳麗華68.002000005項目管理學南開大學出版社管理戚安邦25.003000006電子商務概論高等教育出版社管理覃征33.001000007網(wǎng)絡營銷技術基礎機械工業(yè)出版社管理段建38.008500008網(wǎng)頁制作使用技術清華大學出版社計算機譚浩強22.00000009數(shù)據(jù)結(jié)構(gòu)教程南開大學出版社計算機王剛懷28.0051.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫表1-3銷售信息表會員編號圖書編號購買日期數(shù)量000030000106/02/200740000030000406/02/2007200000030000606/02/200770000030000706/02/200730000040000211/23/200625000040000311/23/200610000040000511/23/200610000040001211/23/200620000020000303/12/20071000020000703/12/20071000010000804/17/20072000010000904/17/20072000050001012/21/200625000050001112/21/2006301.1數(shù)據(jù)庫概述1.1.1數(shù)據(jù)、信息和數(shù)據(jù)庫1.1.2數(shù)據(jù)管理技術的發(fā)展1.1.2數(shù)據(jù)管理技術的發(fā)展人工管理階段文件系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)階段1.1.2數(shù)據(jù)管理技術的發(fā)展人工管理階段-20世紀50年代中期以前,計算機主要用于科學計算。

-還沒有專門用于管理數(shù)據(jù)的軟件。

-數(shù)據(jù)與計算或處理它們的程序放在一起。特點一:

信息處理主要是面向科學計算,數(shù)據(jù)不需要長期保存。當人們需要使用計算機處理某一課題時,就臨時將有關數(shù)據(jù)輸入內(nèi)存。待計算機處理完畢后直接輸出處理結(jié)果,并釋放相應內(nèi)存空間。特點二:

數(shù)據(jù)處理過程中,信息系統(tǒng)處理的數(shù)據(jù)需要在編寫的程序中加以描述及定義。即程序中不僅要編寫對數(shù)據(jù)處理的具體要求,還要花費大量篇幅對使用數(shù)據(jù)的結(jié)構(gòu)、存取方法和輸入輸出方式等進行詳細敘述。

此時編寫應用程序不僅要書寫操作指令,還要書寫大量的數(shù)據(jù)說明性信息。

數(shù)據(jù)與程序不具有獨立性,應用程序不具有普遍性和通用性。特點三:

數(shù)據(jù)是面向應用的,不具有共享性。即每個應用程序中都只能使用自己定義的數(shù)據(jù),即便是某些程序使用相同的數(shù)據(jù),也必須在各自的應用程序中重新定義。

因此,各程序之間存在著大量的重復數(shù)據(jù),稱之為數(shù)據(jù)冗余。總之,在人工管理階段,數(shù)據(jù)處理的特點歸納為:數(shù)據(jù)不保存不能共享冗余度極大數(shù)據(jù)與程序捆綁在一起數(shù)據(jù)不具有獨立性1.1.2數(shù)據(jù)管理技術的發(fā)展2.文件系統(tǒng)階段-20世紀50年代后期至60年代,計算機開始大量地用于數(shù)據(jù)處理工作。-在軟件方面,出現(xiàn)了高級語言和操作系統(tǒng)。操作系統(tǒng)中的文件系統(tǒng)是專門管理存放在外存中文件的軟件。此時,程序和數(shù)據(jù)可以分別存儲為程序文件和數(shù)據(jù)文件,因而程序與數(shù)據(jù)有了一定的獨立性。常用的高級語言FORTRAN、BASIC、C等都支持使用數(shù)據(jù)文件。1.1.2數(shù)據(jù)管理技術的發(fā)展主要特點:

計算機不僅用于科學計算,也開始應用到數(shù)據(jù)管理領域,計算機的應用迅速轉(zhuǎn)向信息管理。

此時管理的數(shù)據(jù)以文件形式長期保存在外存的數(shù)據(jù)文件中,并通過對數(shù)據(jù)文件的存取實現(xiàn)對信息的查詢、修改、插入和刪除等常見的數(shù)據(jù)操作。

出現(xiàn)了操作系統(tǒng),而且操作系統(tǒng)中的文件系統(tǒng)有專門負責管理數(shù)據(jù)的軟件,并且可以提供有關數(shù)據(jù)的存取、查詢以及維護功能。但是,數(shù)據(jù)文件仍然是面向應用的,文件之間缺乏聯(lián)系,不同應用程序間不能共享數(shù)據(jù)文件。1.1.2數(shù)據(jù)管理技術的發(fā)展文件系統(tǒng)階段的數(shù)據(jù)管理方式如圖1-5。

應用需求1應用需求2應用需求5應用需求3數(shù)據(jù)集合應用需求4文件1文件2文件3文件4文件5其特點歸納為:-數(shù)據(jù)長期保存到文件中;-程序與數(shù)據(jù)分離,數(shù)據(jù)程序有一定的獨立性;實現(xiàn)了以文件為單位的數(shù)據(jù)共享。圖1-5傳統(tǒng)數(shù)據(jù)管理方式1.1.2數(shù)據(jù)管理技術的發(fā)展3.數(shù)據(jù)庫系統(tǒng)階段-從20世紀60年代后期開始,信息量迅速增長,需要計算機管理的數(shù)據(jù)量也在急劇增長,文件系統(tǒng)采用的一次存取一個記錄的訪問方式,以及不同文件之間缺乏相互聯(lián)系的存儲方式,越來越不能適應管理大量數(shù)據(jù)的需要。同時,人們對數(shù)據(jù)共享的需求日益增強。-計算機技術迅猛發(fā)展,特別是大容量磁盤開始使用。-在這種社會需求和技術成熟的條件下,數(shù)據(jù)庫技術應運而生,使得數(shù)據(jù)管理技術進入嶄新的數(shù)據(jù)庫系統(tǒng)階段。1.1.2數(shù)據(jù)管理技術的發(fā)展數(shù)據(jù)庫系統(tǒng)的管理方式如圖所示:應用程序1應用程序2應用程序n數(shù)據(jù)庫管理系統(tǒng)DBMS數(shù)據(jù)庫圖1-6應用程序與數(shù)據(jù)庫之間的關系

求和:SELECTSUM(Num)FROMData

求最大值:SELECTMAX(Num)FROMData

1.1.2數(shù)據(jù)管理技術的發(fā)展數(shù)據(jù)庫系統(tǒng)克服了文件系統(tǒng)的種種弊端,它能夠有效地儲存和管理大量的數(shù)據(jù),使數(shù)據(jù)得到充分共享,數(shù)據(jù)冗余大大減少,數(shù)據(jù)與應用程序彼此獨立,并提供數(shù)據(jù)的安全性和完整性統(tǒng)一機制。數(shù)據(jù)的安全性是指防止數(shù)據(jù)被竊取和失密,數(shù)據(jù)的完整性是指數(shù)據(jù)的正確性和一致性。用戶可以以命令方式或程序方式對數(shù)據(jù)庫進行操作,方便而高效。數(shù)據(jù)庫系統(tǒng)的優(yōu)越性使其得到迅速發(fā)展和廣泛應用。從大型機到微型機,從UNIX到Windows,推出了許多成熟的數(shù)據(jù)庫管理軟件,如ORACLE、SYBASE、VisualFoxPro和Access等等。

當今,數(shù)據(jù)庫系統(tǒng)已經(jīng)成為計算機數(shù)據(jù)管理的主流方式,而由文件系統(tǒng)支持的數(shù)據(jù)文件,僅在數(shù)據(jù)量較小的場合下使用。1.2數(shù)據(jù)庫系統(tǒng)的組成及特點1.2.1數(shù)據(jù)庫系統(tǒng)的組成1.2.2數(shù)據(jù)庫系統(tǒng)的特點1.2數(shù)據(jù)庫系統(tǒng)的組成及特點1.2.1數(shù)據(jù)庫系統(tǒng)的組成1.2.2數(shù)據(jù)庫系統(tǒng)的特點1.2.1數(shù)據(jù)庫系統(tǒng)的組成

通常把引進了數(shù)據(jù)庫技術的計算機系統(tǒng)稱為數(shù)據(jù)庫系統(tǒng)(DataBaseSystem,簡稱DBS)。數(shù)據(jù)庫系統(tǒng)主要由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、相應的計算機軟硬件、數(shù)據(jù)庫管理員及其他人員幾部分組成。1.計算機硬件系統(tǒng)

需要有容量足夠大的內(nèi)存和外存,用來運行操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)核心模塊和應用程序,以及存儲數(shù)據(jù)庫。2.數(shù)據(jù)庫集合

數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)庫集合(DataBase,簡稱DB)是存儲在計算機外存上的若各個設計合理、滿足應用需求的數(shù)據(jù)庫。3.數(shù)據(jù)庫管理系統(tǒng)

這是運行在操作系統(tǒng)之上的系統(tǒng)軟件,是數(shù)據(jù)庫系統(tǒng)的核心。它不僅可以幫助用戶創(chuàng)建、維護和使用數(shù)據(jù)庫,而且數(shù)據(jù)庫系統(tǒng)中的各種功能和特性都是由DBMS提供的。流行的DBMS有Sybase、Oracel、Informix、VisualFoxPro、Access等。4.相關的軟件系統(tǒng)

包括操作系統(tǒng)、編譯系統(tǒng)、應用開發(fā)工具軟件和計算機網(wǎng)絡軟件等。較大型的數(shù)據(jù)庫系統(tǒng),通常是建立在多用戶系統(tǒng)或網(wǎng)絡環(huán)境中的。5.數(shù)據(jù)庫管理員及其他人員

數(shù)據(jù)庫管理員系統(tǒng)分析和設計人員應用程序員用戶專業(yè)用戶:側(cè)重于設計數(shù)據(jù)庫、開發(fā)應用系統(tǒng)程序最終用戶:側(cè)重于對數(shù)據(jù)庫的使用1.2數(shù)據(jù)庫系統(tǒng)的組成及特點1.2.1數(shù)據(jù)庫系統(tǒng)的組成1.2.2數(shù)據(jù)庫系統(tǒng)的特點1.2.2數(shù)據(jù)庫系統(tǒng)的特點

數(shù)據(jù)庫技術是在文件系統(tǒng)的基礎上發(fā)展起來的技術。數(shù)據(jù)庫系統(tǒng)克服了文件系統(tǒng)的缺陷,它不僅可以實現(xiàn)對數(shù)據(jù)的集中統(tǒng)一管理,而且還可以使數(shù)據(jù)的存儲和維護不受任何用戶的影響,為用戶提供了對數(shù)據(jù)更高級、更有效的管理手段。數(shù)據(jù)庫系統(tǒng)的主要特點是:1.數(shù)據(jù)冗余度小、數(shù)據(jù)共享性高2.具有較高的數(shù)據(jù)獨立性3.數(shù)據(jù)結(jié)構(gòu)化4.具有統(tǒng)一的數(shù)據(jù)控制功能1.2.2數(shù)據(jù)庫系統(tǒng)的特點數(shù)據(jù)冗余度小、數(shù)據(jù)共享性高數(shù)據(jù)共享是指數(shù)據(jù)庫中的數(shù)據(jù)可以被多個用戶、多種應用訪問,這是數(shù)據(jù)庫系統(tǒng)最重要的特點。由于數(shù)據(jù)庫中的數(shù)據(jù)被集中管理、統(tǒng)一組織、定義和存儲,可以避免不必要的冗余,因而也避免了數(shù)據(jù)的不一致性。與此同時,這種處理模式便于數(shù)據(jù)的靈活應用,可以取整體數(shù)據(jù)的各種合理子集用于不同的應用系統(tǒng)。1.2.2數(shù)據(jù)庫系統(tǒng)的特點2.具有較高的數(shù)據(jù)獨立性

在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)與應用程序之間的相互依賴大大減小,數(shù)據(jù)的修改對程序不會產(chǎn)生大的影響或沒有影響,數(shù)據(jù)具有較高的獨立性。

應用程序1應用程序2應用程序n數(shù)據(jù)庫管理系統(tǒng)DBMS數(shù)據(jù)庫圖1-6應用程序與數(shù)據(jù)庫之間的關系1.2.2數(shù)據(jù)庫系統(tǒng)的特點

從圖1.6中可以看出,無論應用程序要對數(shù)據(jù)(數(shù)據(jù)保存在數(shù)據(jù)庫DB中)進行何種操作,都是通過DBMS(數(shù)據(jù)庫管理系統(tǒng))來完成的。也就是說,由于DBMS提供了數(shù)據(jù)定義功能,以及數(shù)據(jù)管理功能,程序中所需要的數(shù)據(jù)定義、查詢、刪除、插入、修改等操作,都是由DBMS完成的,應用程序中不用再包含這方面的內(nèi)容。因此,當數(shù)據(jù)的結(jié)構(gòu)(無論是物理結(jié)構(gòu)即存儲方式,還是邏輯界結(jié)構(gòu)即數(shù)據(jù)項之間的關系)發(fā)生變化時,應用程序都是不變的。這樣一來,數(shù)據(jù)和程序相互之間的依賴性很低、獨立性很高,這種特性就是我們所說的數(shù)據(jù)獨立性高。

數(shù)據(jù)獨立性高給應用程序的開發(fā)、維護、擴充帶來極大的方便,從而大大減輕了程序設計的負擔。1.2.2數(shù)據(jù)庫系統(tǒng)的特點3.數(shù)據(jù)結(jié)構(gòu)化

數(shù)據(jù)庫中的數(shù)據(jù)是有結(jié)構(gòu)的,這種結(jié)構(gòu)是由數(shù)據(jù)庫管理系統(tǒng)所支持的數(shù)據(jù)模型表現(xiàn)出來的。數(shù)據(jù)庫系統(tǒng)不僅可以表示事物內(nèi)部各數(shù)據(jù)項之間的聯(lián)系,而且可以表示事物與事物之間的聯(lián)系。

這一特點決定了利用數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)管理的設計方法,即系統(tǒng)設計時應該先準確地規(guī)劃出數(shù)據(jù)庫中數(shù)據(jù)的結(jié)構(gòu)(數(shù)據(jù)模型),然后再設計具體的處理功能程序。4.具有統(tǒng)一的數(shù)據(jù)控制功能數(shù)據(jù)并發(fā)操作:多個用戶同時使用同一個數(shù)據(jù)庫。數(shù)據(jù)庫系統(tǒng)必須提供必要的保護措施,主要包括如下數(shù)據(jù)控制功能:⑴數(shù)據(jù)安全性控制

⑵數(shù)據(jù)完整性控制

⑶數(shù)據(jù)的并發(fā)控制

⑷數(shù)據(jù)的恢復

1.2.2數(shù)據(jù)庫系統(tǒng)的特點⑴數(shù)據(jù)安全性控制

數(shù)據(jù)安全性遭到破壞:是指信息系統(tǒng)中出現(xiàn)用戶看到了不該看的數(shù)據(jù)、修改了無權(quán)修改的數(shù)據(jù)、刪除了不能刪除的數(shù)據(jù)等現(xiàn)象。

數(shù)據(jù)安全性控制:數(shù)據(jù)庫系統(tǒng)設置了一整套安全保護措施,只有合法用戶才能進行指定權(quán)限的操作,有了數(shù)據(jù)安全控制就可以保護數(shù)據(jù)庫,防止對數(shù)據(jù)庫進行非法操作,避免引起數(shù)據(jù)丟失、泄露和破壞。1.2.2數(shù)據(jù)庫系統(tǒng)的特點⑵數(shù)據(jù)完整性控制

數(shù)據(jù)的完整性控制是指數(shù)據(jù)庫系統(tǒng)提供了一種機制,這種機制可以保證系統(tǒng)中數(shù)據(jù)的正確性、有效性和相容性,以防止不符合系統(tǒng)語義要求的數(shù)據(jù)輸入系統(tǒng)或者輸出系統(tǒng)。此外,當計算機系統(tǒng)發(fā)生故障而破壞了數(shù)據(jù)或?qū)?shù)據(jù)的操作發(fā)生錯誤時,系統(tǒng)能提供相應機制,將數(shù)據(jù)恢復到正確狀態(tài)。例1:(數(shù)據(jù)的相容性)圖書銷售系統(tǒng),其中銷售信息表(表1-3)中的圖書編號必須是圖書信息表(表1-2)中存在的圖書編號,同樣,表1-3中的會員編號必須是會員信息表(表1-1)中存在的會員編號。例2:規(guī)定性別數(shù)據(jù)項只能存入“男”或“女”兩種值;規(guī)定單價這類的數(shù)值型數(shù)據(jù)的取值范圍等等。1.2.2數(shù)據(jù)庫系統(tǒng)的特點⑶數(shù)據(jù)的并發(fā)控制

當多個用戶的并發(fā)進程同時存取、修改數(shù)據(jù)庫時,可能會相互干擾而得到錯誤的結(jié)果,并使數(shù)據(jù)庫的完整性遭到破壞。因此,必須對多用戶的并發(fā)操作予以控制和協(xié)調(diào)。

事務(Transaction)是并發(fā)控制的基本單位與控制對象。事務是一系列的操作。這些操作要么都做,要么都不做。兩事務的并發(fā)操作可能造成數(shù)據(jù)的錯誤。

通常采用封鎖措施來保證數(shù)據(jù)的正確性。例如,事務T1要修改數(shù)據(jù)A,首先封鎖它,執(zhí)行完讀寫操作之后才解鎖A。在事務T1的執(zhí)行過程中,如果事務T2也提出對數(shù)據(jù)A的封鎖要求,則必須等待,直到事務T1解鎖數(shù)據(jù)A后,事務T2才能獲得對數(shù)據(jù)A的控制權(quán)。1.2.2數(shù)據(jù)庫系統(tǒng)的特點⑷數(shù)據(jù)的恢復

數(shù)據(jù)恢復是通過記錄數(shù)據(jù)庫運行的日志文件和定期做數(shù)據(jù)備份工作,保證當數(shù)據(jù)庫中的數(shù)據(jù)由于種種原因(如系統(tǒng)故障、介質(zhì)故障、計算機病毒等)遭到破壞導致不正確,或者部分甚至全部丟失時,系統(tǒng)有能力將數(shù)據(jù)庫恢復到最近某個時刻的一個正確狀態(tài)。1.3數(shù)據(jù)庫管理系統(tǒng)1.數(shù)據(jù)定義語言2.數(shù)據(jù)操作語言3.

數(shù)據(jù)控制語言1.數(shù)據(jù)定義語言

數(shù)據(jù)定義語言

(DataDefinitionLanguage,簡稱DDL),用于描述數(shù)據(jù)庫的結(jié)構(gòu)。DDL子系統(tǒng)幫助人們在數(shù)據(jù)庫中建立和維護數(shù)據(jù)字典,并且定義數(shù)據(jù)庫中的文件結(jié)構(gòu),也就是說DDL主要用于描述數(shù)據(jù)庫中信息的邏輯結(jié)構(gòu)。例如信息的名稱、信息的類型和格式等特性都屬于邏輯結(jié)構(gòu)的范疇。例:關系數(shù)據(jù)庫標準語言SQL的DDL語言,一般設置有createtable/index,altertable,droptable/index等語句,可以分別用于建立、修改或刪除關系數(shù)據(jù)庫的二維表結(jié)構(gòu)、定義或刪除數(shù)據(jù)庫表的索引。2.數(shù)據(jù)操作語言數(shù)據(jù)操作語言(DataManipulationLanguage,簡稱DML),支持用戶對數(shù)據(jù)庫中的數(shù)據(jù)進行查詢、追加、插入、刪除、修改等操作,支持用戶對數(shù)據(jù)庫中的數(shù)據(jù)進行各種基本操作。在大多數(shù)的DBMS中,都包含各種各樣的數(shù)據(jù)操作工具。

例如,視圖、報表生成器、范例查詢工具以及結(jié)構(gòu)化查詢語言等工具,這些工具協(xié)助用戶對數(shù)據(jù)庫中的數(shù)據(jù)進行各種操作。數(shù)據(jù)操作語言(按語法格式的實現(xiàn)方法分類)自含型或自主型語言數(shù)據(jù)操作語言可以獨立使用,不依賴于任何其他程序設計語言宿主型數(shù)據(jù)操作語言需要嵌入宿主語言(例如FORTRAN,COBOL,C等)中使用在使用高級語言編寫應用程序時,如果需要調(diào)用數(shù)據(jù)庫中的數(shù)據(jù),則需要用宿主型數(shù)據(jù)操作語言的語句來實現(xiàn)。因此,數(shù)據(jù)庫管理系統(tǒng)必須包含數(shù)據(jù)操作語言的編譯或解釋程序。3.數(shù)據(jù)控制語言數(shù)據(jù)庫管理系統(tǒng)必須具有控制和管理功能來保障數(shù)據(jù)不被破壞,其中包括:在多用戶使用數(shù)據(jù)庫時對數(shù)據(jù)進行的“并發(fā)控制”;對用戶權(quán)限實施監(jiān)督的“安全性檢查”;數(shù)據(jù)的備份、恢復和轉(zhuǎn)儲功能;對數(shù)據(jù)庫運行情況的監(jiān)控和報告等。數(shù)據(jù)庫系統(tǒng)的規(guī)模越大,這類功能就越強,大型機數(shù)據(jù)庫管理系統(tǒng)的管理功能一般比微型機數(shù)據(jù)庫管理系統(tǒng)更強。3.數(shù)據(jù)控制語言數(shù)據(jù)庫管理系統(tǒng)能夠向用戶提供數(shù)據(jù)控制語言

(DataControlLanguage,簡稱DCL),用于安全性、完整性、并發(fā)性、故障恢復等控制功能。

關系型數(shù)據(jù)庫管理系統(tǒng):它們提供的數(shù)據(jù)庫語言都具有“一體化”的特點,即集數(shù)據(jù)定義語言DDL、數(shù)據(jù)操作語言DML和數(shù)據(jù)控制語言DCL于一體,在數(shù)據(jù)庫管理系統(tǒng)的統(tǒng)一管理下完成上述各種功能。1.4基本數(shù)據(jù)模型1.4.1基本數(shù)據(jù)模型1.4.2面向?qū)ο竽P?.4基本數(shù)據(jù)模型1.4.1基本數(shù)據(jù)模型1.4.2面向?qū)ο竽P?.4.1

基本數(shù)據(jù)模型層次模型網(wǎng)狀模型關系模型1.4.1

基本數(shù)據(jù)模型1.層次模型:利用樹型結(jié)構(gòu)表示實體及其之間聯(lián)系的模型?,F(xiàn)出實體之間一對多的聯(lián)系?!痢链髮W專業(yè)學院1專業(yè)學院2專業(yè)學院n系所1系所m圖1-7層次結(jié)構(gòu)數(shù)據(jù)模型1.4.1

基本數(shù)據(jù)模型2.網(wǎng)狀模型:利用網(wǎng)狀結(jié)構(gòu)表示實體及實體之間聯(lián)系的模型。體現(xiàn)多對多的聯(lián)系,具有很大的靈活性。圖1-8網(wǎng)狀結(jié)構(gòu)數(shù)據(jù)模型系所教師學生課程歸屬歸屬開設講授選修師從1.4.1

基本數(shù)據(jù)模型3.關系模型:用二維表結(jié)構(gòu)表示實體以及實體之間聯(lián)系的模型。關系模型把各種聯(lián)系都統(tǒng)一描述成一些二維表,即由若干行和若干列組成的表格。每一個這樣的二維表格就稱為一個關系。關系模型很容易被用戶所接受,且關系模型有嚴格的理論基礎(關系數(shù)學理論),因此,基于關系模型的關系型數(shù)據(jù)庫管理系統(tǒng)成為當今最為流行的數(shù)據(jù)庫管理系統(tǒng)。1.4.1

基本數(shù)據(jù)模型基于不同數(shù)據(jù)模型的數(shù)據(jù)庫管理系統(tǒng)階段第一階段:層次模型和網(wǎng)狀模型第二階段:關系模型第三階段:面向?qū)ο蟮臄?shù)據(jù)模型等非傳統(tǒng)數(shù)據(jù)模型1.4基本數(shù)據(jù)模型1.4.1基本數(shù)據(jù)模型1.4.2面向?qū)ο竽P?.4.2面向?qū)ο竽P蛡鹘y(tǒng)數(shù)據(jù)庫技術的制約2.新一代數(shù)據(jù)庫技術的代表—面向?qū)ο竽P?.數(shù)據(jù)庫技術與其它相關技術緊密結(jié)合1.4.2面向?qū)ο竽P蛡鹘y(tǒng)數(shù)據(jù)庫技術的制約⑴數(shù)據(jù)模型的構(gòu)成限制了處理數(shù)據(jù)的范疇傳統(tǒng)數(shù)據(jù)庫中采用的數(shù)據(jù)模型,即便是關系模型,它的主要特點也要強調(diào)數(shù)據(jù)的高度結(jié)構(gòu)化。這樣的數(shù)據(jù)模型所能處理的數(shù)據(jù)是離散式的,其數(shù)據(jù)之間的關系也很簡單,不能完全表達客觀世界中的復雜對象,例如大塊文本的處理、超文本、圖形圖像、聲音等復雜對象。⑵數(shù)據(jù)類型過于簡單傳統(tǒng)數(shù)據(jù)庫中存儲、處理的數(shù)據(jù)類型大多是數(shù)值型(包括整數(shù)和1.4.2面向?qū)ο竽P秃行?shù)的浮點數(shù))、字符型、日期型、邏輯型(即存儲真、假值的布爾型)等。這些數(shù)據(jù)類型包含的種類是很有限的(取值的范圍集合也是離散數(shù)據(jù)集合),無法表示變化性很強的矢量集合。⑶處理的對象是靜態(tài)的缺乏抽象與歸納傳統(tǒng)數(shù)據(jù)庫中雖然用數(shù)據(jù)模型表示了客觀對象的主要特征,但是,其所描述的對象主要是一種靜態(tài)對象,缺乏利用數(shù)據(jù)抽象、歸納知識的特性,即不具有演繹和推理的能力,因此很難滿足更高層次的信息管理和決策支持的需求,使數(shù)據(jù)庫技術的應用范疇只能限定在一定的范圍之內(nèi)。1.4.2面向?qū)ο竽P?.新一代數(shù)據(jù)庫技術的代表—面向?qū)ο竽P蛿?shù)據(jù)庫技術發(fā)展的基礎是數(shù)據(jù)模型的變革。面向?qū)ο蟮臄?shù)據(jù)模型的主要特點是:⑴面向?qū)ο蟮臄?shù)據(jù)模型能完整地描述現(xiàn)實世界的數(shù)據(jù)結(jié)構(gòu),能表達數(shù)據(jù)之間的嵌套、遞歸聯(lián)系。因此,這種數(shù)據(jù)模型處理的數(shù)據(jù)類型更加廣泛,表示的實際對象更加豐富。⑵具有面向?qū)ο蠹夹g的封裝型(即把數(shù)據(jù)與操作定義在一起)和繼承性(即繼承數(shù)據(jù)結(jié)構(gòu)的特性和操作的特性)的特點,提高了軟件的重復使用性。1.4.2面向?qū)ο竽P?.數(shù)據(jù)庫技術與其它相關技術緊密結(jié)合⑴數(shù)據(jù)庫技術與分布式處理技術相結(jié)合,產(chǎn)生了分布式數(shù)據(jù)庫系統(tǒng)。⑵數(shù)據(jù)庫技術與并行處理技術相結(jié)合,產(chǎn)生了并行數(shù)據(jù)庫系統(tǒng)。⑶數(shù)據(jù)庫技術與人工智能技術相結(jié)合,產(chǎn)生了知識庫系統(tǒng)、演繹數(shù)據(jù)庫系統(tǒng)以及主動數(shù)據(jù)庫系統(tǒng)。⑷數(shù)據(jù)庫技術與多媒體技術相結(jié)合,產(chǎn)生了多媒體數(shù)據(jù)庫系統(tǒng)。⑸數(shù)據(jù)庫技術與模糊技術相結(jié)合,產(chǎn)生了模糊數(shù)據(jù)庫系統(tǒng)。

另外還有數(shù)據(jù)倉庫、統(tǒng)計數(shù)據(jù)庫、時態(tài)數(shù)據(jù)庫、基于邏輯的數(shù)據(jù)庫、內(nèi)存數(shù)據(jù)庫、聯(lián)邦數(shù)據(jù)庫、工作流數(shù)據(jù)庫、工程數(shù)據(jù)庫、地理數(shù)據(jù)庫、空間數(shù)據(jù)庫、科學數(shù)據(jù)庫等等系統(tǒng)。這些數(shù)據(jù)庫雖然采用了不同的數(shù)據(jù)模型,但都具有面向?qū)ο竽P偷奶卣鳌?.4.2面向?qū)ο竽P偷谝淮鷶?shù)據(jù)庫系統(tǒng):非關系型數(shù)據(jù)庫系統(tǒng),包括層次型和網(wǎng)狀型數(shù)據(jù)庫系統(tǒng)。第二代數(shù)據(jù)庫系統(tǒng):關系型數(shù)據(jù)庫系統(tǒng)。與第一代數(shù)據(jù)庫系統(tǒng)相比,第二代數(shù)據(jù)庫系統(tǒng)的突出優(yōu)點有兩個:一是采用二維表作為數(shù)據(jù)結(jié)構(gòu),簡單明了、易學易用;二是查詢效率高,僅用一條命令即可訪問整個二維表,而第一代數(shù)據(jù)庫每次僅能訪問一條記錄。此外,通過多表聯(lián)合操作還能對有聯(lián)系的若干個二維表實現(xiàn)“關聯(lián)”查詢。1.5數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.5.1數(shù)據(jù)庫系統(tǒng)模式的概念1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)1.5.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性1.5數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.5.1數(shù)據(jù)庫系統(tǒng)模式的概念1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)1.5.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性1.5.1數(shù)據(jù)庫系統(tǒng)模式的概念型(Type)是指對某一類數(shù)據(jù)的結(jié)構(gòu)和屬性的說明。值(Value)是型的一個具體賦值。

例如:學生記錄定義為(學號,姓名,性別,姓名,系別,年齡,籍貫)這樣的記錄型,而(900201,李明,男,計算機,22,江蘇)則是該記錄型的一個具體記錄值。模式(Schema)是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,它僅僅涉及到型的描述,不涉及到具體的值。模式的一個具體值稱為模式的一個實例(Instance)。同一個模式可以有很多實例。模式與實例的關系:模式是相對穩(wěn)定的,而實例是相對變動的,因為數(shù)據(jù)庫中的數(shù)據(jù)是在不斷變化、更新的。模式反映的是數(shù)據(jù)的結(jié)構(gòu)及其聯(lián)系,而實例反映的是數(shù)據(jù)庫某一時刻的具體狀態(tài)。1.5.1數(shù)據(jù)庫系統(tǒng)模式的概念雖然實際的數(shù)據(jù)管理系統(tǒng)產(chǎn)品種類很多,他們支持不同的數(shù)據(jù)模型,使用不同的數(shù)據(jù)語言,建立在不同的操作系統(tǒng)之上,數(shù)據(jù)的存儲結(jié)構(gòu)也各不相同,但它們在體系結(jié)構(gòu)上通常都具有相同的特征,即采用三級模式結(jié)構(gòu)并提供兩級映像功能。1.5數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.5.1數(shù)據(jù)庫系統(tǒng)模式的概念1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)1.5.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)模式(Schema)外模式(ExternalSchema)內(nèi)模式(InternalSchema)1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)圖1-9數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)1.模式(Schema)模式也稱邏輯模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是所有用戶的公共數(shù)據(jù)視圖。它是數(shù)據(jù)庫系統(tǒng)模式結(jié)構(gòu)中的中間層,既不涉及數(shù)據(jù)的物理存儲細節(jié)和硬件環(huán)境,也與具體的應用程序,與所使用的應用開發(fā)工具及高級程序設計語言無關。一個數(shù)據(jù)庫只有一個模式。數(shù)據(jù)庫模式以某一種數(shù)據(jù)模型為基礎,統(tǒng)一綜合地考慮了所有用戶的需求,并將這些需求有機地結(jié)合成一個邏輯整體。定義模式時不僅要定義數(shù)據(jù)的邏輯結(jié)構(gòu),例如數(shù)據(jù)記錄由哪些數(shù)據(jù)項構(gòu)成,數(shù)據(jù)項的名字、類型、取值范圍等,而且要定義數(shù)據(jù)之間的聯(lián)系,定義與

數(shù)據(jù)有關的安全性、完整性要求等。1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)2.外模式(ExternalSchema)外模式也稱子模式(Subschema)或用戶模式,它是數(shù)據(jù)庫用戶(包括應用程序員和最終用戶)能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖。外模式通常是模式的子集。一個數(shù)據(jù)庫可以有多個外模式。由于它是各個用戶的數(shù)據(jù)視圖,如果不同的用戶在應用的需求、看待數(shù)據(jù)方式、對數(shù)據(jù)保密的要求等方面存在差異,則其外模式描述就是不同的。即使對模式中同一數(shù)據(jù),在外模式中的結(jié)構(gòu)、類型、長度、保密級別等都可以不同。另一方面,同一外模式也可以為某一用戶的多個應用系統(tǒng)所使用,但一個應用程序只能使用一個外模式。1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)外模式是保證數(shù)據(jù)庫安全性的一個有力措施。每個用戶只能看見和訪問所對應的外模式中的數(shù)據(jù),數(shù)據(jù)庫中的其余數(shù)據(jù)是不可見的。1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)3.內(nèi)模式(InternalSchema)內(nèi)模式也稱存儲模式(StorageSchema),一個數(shù)據(jù)庫只有一個內(nèi)模式。它是數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式。例如,記錄的存儲方式是順序存儲、按索引順序存儲、按照B樹結(jié)構(gòu)存儲、……;索引按照什么方式組織;數(shù)據(jù)是否壓縮,是否加密;數(shù)據(jù)的存儲記錄結(jié)構(gòu)有何規(guī)定等。1.5數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)1.5.1數(shù)據(jù)庫系統(tǒng)模式的概念1.5.2數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)1.5.3數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)獨立性1.5.3數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論