



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1第12章 面向?qū)ο髷?shù)據(jù)庫 12.1 12.1 面向?qū)ο髷?shù)據(jù)庫概述面向?qū)ο髷?shù)據(jù)庫概述12.2 12.2 面向?qū)ο髷?shù)據(jù)模型面向?qū)ο髷?shù)據(jù)模型12.3 12.3 面向?qū)ο髷?shù)據(jù)庫管理系統(tǒng)面向?qū)ο髷?shù)據(jù)庫管理系統(tǒng)12.4 12.4 對象對象- -關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 212.1 面向?qū)ο髷?shù)據(jù)庫概述12.1.1 12.1.1 面向?qū)ο髷?shù)據(jù)庫的產(chǎn)生背景面向?qū)ο髷?shù)據(jù)庫的產(chǎn)生背景12.1.2 12.1.2 面向?qū)ο髷?shù)據(jù)庫設(shè)計思想面向?qū)ο髷?shù)據(jù)庫設(shè)計思想12.1.3 12.1.3 面向?qū)ο髷?shù)據(jù)庫的應(yīng)用和功能面向?qū)ο髷?shù)
2、據(jù)庫的應(yīng)用和功能12.1.4 12.1.4 面向?qū)ο髷?shù)據(jù)庫的發(fā)展前景面向?qū)ο髷?shù)據(jù)庫的發(fā)展前景第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 312.1.1 面向?qū)ο髷?shù)據(jù)庫的產(chǎn)生背景 關(guān)系數(shù)據(jù)庫有許多優(yōu)點,但它存在以下局限性:數(shù)據(jù)關(guān)系數(shù)據(jù)庫有許多優(yōu)點,但它存在以下局限性:數(shù)據(jù)模型強調(diào)數(shù)據(jù)的高度結(jié)構(gòu)化,面向機器而不是面向用戶;模型強調(diào)數(shù)據(jù)的高度結(jié)構(gòu)化,面向機器而不是面向用戶;數(shù)據(jù)類型簡單、固定;結(jié)構(gòu)與行為分離,語義表達(dá)能力差;數(shù)據(jù)類型簡單、固定;結(jié)構(gòu)與行為分離,語義表達(dá)能力差;將復(fù)雜對象分解為多個基本關(guān)系來管理,查詢實現(xiàn)復(fù)雜等將復(fù)雜對象分解為多個基本關(guān)系來管理,查詢實現(xiàn)復(fù)雜等等。等。 隨著計算
3、機應(yīng)用領(lǐng)域的拓廣,關(guān)系數(shù)據(jù)庫系統(tǒng)已不能隨著計算機應(yīng)用領(lǐng)域的拓廣,關(guān)系數(shù)據(jù)庫系統(tǒng)已不能滿足新的應(yīng)用領(lǐng)域如計算機輔助設(shè)計滿足新的應(yīng)用領(lǐng)域如計算機輔助設(shè)計/ /制造(制造(CAD/CAMCAD/CAM)、)、計算機輔助軟件工程(計算機輔助軟件工程(CASECASE)、地理信息系統(tǒng)()、地理信息系統(tǒng)(GISGIS)、)、辦公自動化系統(tǒng)(辦公自動化系統(tǒng)(OASOAS)等的需要,這些應(yīng)用領(lǐng)域面臨的)等的需要,這些應(yīng)用領(lǐng)域面臨的共同問題是大型工程復(fù)雜數(shù)據(jù)的管理問題。新一代應(yīng)用系共同問題是大型工程復(fù)雜數(shù)據(jù)的管理問題。新一代應(yīng)用系統(tǒng)提出了以下要求統(tǒng)提出了以下要求: :第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)
4、庫概述 412.1.1 面向?qū)ο髷?shù)據(jù)庫的產(chǎn)生背景 (1 1)支持復(fù)雜的數(shù)據(jù)類型。新一代應(yīng)用領(lǐng)域的數(shù)據(jù)往往)支持復(fù)雜的數(shù)據(jù)類型。新一代應(yīng)用領(lǐng)域的數(shù)據(jù)往往是幾十種或上百種元素組成的對象,具有許多傳統(tǒng)數(shù)據(jù)庫是幾十種或上百種元素組成的對象,具有許多傳統(tǒng)數(shù)據(jù)庫中沒有的數(shù)據(jù)類型,如變長數(shù)據(jù)、非結(jié)構(gòu)化字符串、圖形、中沒有的數(shù)據(jù)類型,如變長數(shù)據(jù)、非結(jié)構(gòu)化字符串、圖形、圖象、聲音、動畫信息等,這些信息在傳統(tǒng)數(shù)據(jù)庫中一般圖象、聲音、動畫信息等,這些信息在傳統(tǒng)數(shù)據(jù)庫中一般難以描述、操縱和檢索。難以描述、操縱和檢索。 (2 2)支持復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。工程設(shè)計往往是采用分層的)支持復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。工程設(shè)計往往是采用分層的
5、設(shè)計方法(自頂向下或自底向上),分層設(shè)計不僅要求有設(shè)計方法(自頂向下或自底向上),分層設(shè)計不僅要求有層次結(jié)構(gòu),而且對于不同的設(shè)計對象,層次數(shù)目也不一樣。層次結(jié)構(gòu),而且對于不同的設(shè)計對象,層次數(shù)目也不一樣。 (3 3)對象實例和類的演進(jìn)。工程設(shè)計是一個漸進(jìn)的過程,)對象實例和類的演進(jìn)。工程設(shè)計是一個漸進(jìn)的過程,特別是在大規(guī)模應(yīng)用中,類是隨著環(huán)境、需求、研究人員特別是在大規(guī)模應(yīng)用中,類是隨著環(huán)境、需求、研究人員研究的深入而發(fā)生變化的,這些變化稱為模式演進(jìn)。研究的深入而發(fā)生變化的,這些變化稱為模式演進(jìn)。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 512.1.1 面向?qū)ο髷?shù)據(jù)庫的產(chǎn)生背景 (
6、4 4)支持工程事務(wù)管理。工程事務(wù)的特點表現(xiàn)為長時)支持工程事務(wù)管理。工程事務(wù)的特點表現(xiàn)為長時間、協(xié)作性和試探性。傳統(tǒng)數(shù)據(jù)庫的并發(fā)控制策略無法間、協(xié)作性和試探性。傳統(tǒng)數(shù)據(jù)庫的并發(fā)控制策略無法滿足這類事務(wù)的要求。滿足這類事務(wù)的要求。 (5 5)一個復(fù)雜對象有許多子對象組成,而這些子對象)一個復(fù)雜對象有許多子對象組成,而這些子對象又有多個版本,這就需要用版本配置來組合成一個合理又有多個版本,這就需要用版本配置來組合成一個合理的復(fù)雜對象。持久性對象也同樣存在版本的管理問題。的復(fù)雜對象。持久性對象也同樣存在版本的管理問題。 (6 6)航式查詢和關(guān)聯(lián)查詢訪問。復(fù)雜應(yīng)用中的對象)航式查詢和關(guān)聯(lián)查詢訪問。復(fù)
7、雜應(yīng)用中的對象- -關(guān)系是大型的樹狀結(jié)構(gòu),需要系統(tǒng)提供在對象圖中的高關(guān)系是大型的樹狀結(jié)構(gòu),需要系統(tǒng)提供在對象圖中的高效導(dǎo)航能力,特別是多媒體對象實時性強,要求更高的效導(dǎo)航能力,特別是多媒體對象實時性強,要求更高的交互性能。另一方面,大型應(yīng)用通過關(guān)聯(lián)查詢來訪問對交互性能。另一方面,大型應(yīng)用通過關(guān)聯(lián)查詢來訪問對象也是必須的。象也是必須的。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 612.1.1 面向?qū)ο髷?shù)據(jù)庫的產(chǎn)生背景 (7 7)支持分布式系統(tǒng)中獨立于平臺的大型對象的存儲。)支持分布式系統(tǒng)中獨立于平臺的大型對象的存儲。新一代應(yīng)用領(lǐng)域表現(xiàn)為數(shù)據(jù)密集,如圖形圖象等多媒體新一代應(yīng)用領(lǐng)域表現(xiàn)為
8、數(shù)據(jù)密集,如圖形圖象等多媒體對象需要占用大量的存儲空間,所以系統(tǒng)提供有效的存對象需要占用大量的存儲空間,所以系統(tǒng)提供有效的存儲和控制手段是十分必要的。儲和控制手段是十分必要的。 (8 8)對約束、觸發(fā)、規(guī)則等方面的支持。新一代應(yīng)用)對約束、觸發(fā)、規(guī)則等方面的支持。新一代應(yīng)用系統(tǒng)的特點是對象的結(jié)構(gòu)和操作非常復(fù)雜,有著豐富的系統(tǒng)的特點是對象的結(jié)構(gòu)和操作非常復(fù)雜,有著豐富的語義信息。為了保證數(shù)據(jù)庫的完整性和一致性,引入約語義信息。為了保證數(shù)據(jù)庫的完整性和一致性,引入約束機制是非常必要的。束機制是非常必要的。 因此,把先進(jìn)的面向?qū)ο髾C制和方法與數(shù)據(jù)庫技術(shù)相因此,把先進(jìn)的面向?qū)ο髾C制和方法與數(shù)據(jù)庫技術(shù)相
9、結(jié)合而形成新一代的面向?qū)ο髷?shù)據(jù)庫系統(tǒng)是面向?qū)ο蠹冀Y(jié)合而形成新一代的面向?qū)ο髷?shù)據(jù)庫系統(tǒng)是面向?qū)ο蠹夹g(shù)和數(shù)據(jù)庫技術(shù)發(fā)展的必然產(chǎn)物。術(shù)和數(shù)據(jù)庫技術(shù)發(fā)展的必然產(chǎn)物。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 712.1.2 面向?qū)ο髷?shù)據(jù)庫設(shè)計思想 面向?qū)ο髷?shù)據(jù)庫的基本設(shè)計思想是一方面把面向?qū)ο笳Z面向?qū)ο髷?shù)據(jù)庫的基本設(shè)計思想是一方面把面向?qū)ο笳Z言向數(shù)據(jù)庫方向擴展,使應(yīng)用程序能存取并處理對象,另一言向數(shù)據(jù)庫方向擴展,使應(yīng)用程序能存取并處理對象,另一方面擴展數(shù)據(jù)庫系統(tǒng),使其具有面向?qū)ο蟮奶卣?,提供一種方面擴展數(shù)據(jù)庫系統(tǒng),使其具有面向?qū)ο蟮奶卣鳎峁┮环N綜合的語義數(shù)據(jù)建模概念集,以便對現(xiàn)實世界中復(fù)雜
10、應(yīng)用的綜合的語義數(shù)據(jù)建模概念集,以便對現(xiàn)實世界中復(fù)雜應(yīng)用的實體和聯(lián)系建模。具體的策略或方案有以下幾種:實體和聯(lián)系建模。具體的策略或方案有以下幾種: (1 1)建立全新的數(shù)據(jù)庫模型和數(shù)據(jù)語言。不借助現(xiàn)有任)建立全新的數(shù)據(jù)庫模型和數(shù)據(jù)語言。不借助現(xiàn)有任何系統(tǒng),開發(fā)一個全新的面向?qū)ο蟮臄?shù)據(jù)庫語言和數(shù)據(jù)庫管何系統(tǒng),開發(fā)一個全新的面向?qū)ο蟮臄?shù)據(jù)庫語言和數(shù)據(jù)庫管理系統(tǒng)。理系統(tǒng)。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 812.1.2 面向?qū)ο髷?shù)據(jù)庫設(shè)計思想 (2 2)用對象能力擴充數(shù)據(jù)庫)用對象能力擴充數(shù)據(jù)庫SQLSQL語言。在語言。在SQLSQL語言中加入面語言中加入面向?qū)ο髾C制的方法多為關(guān)
11、系數(shù)據(jù)庫廠商所采用,目前流行的向?qū)ο髾C制的方法多為關(guān)系數(shù)據(jù)庫廠商所采用,目前流行的關(guān)系數(shù)據(jù)庫系統(tǒng)如關(guān)系數(shù)據(jù)庫系統(tǒng)如OracleOracle、SysbaseSysbase、InformixInformix等都按這種方等都按這種方式進(jìn)行了擴充,使其具有一定的面向?qū)ο蠊δ?。式進(jìn)行了擴充,使其具有一定的面向?qū)ο蠊δ堋?(3 3)用數(shù)據(jù)庫能力擴充面向?qū)ο蟪绦蛟O(shè)計語言()用數(shù)據(jù)庫能力擴充面向?qū)ο蟪绦蛟O(shè)計語言(OOPLOOPL)。)。OOPLOOPL本身就具有抽象數(shù)據(jù)類型、繼承、封裝等特征,擴展僅本身就具有抽象數(shù)據(jù)類型、繼承、封裝等特征,擴展僅需加入數(shù)據(jù)庫特征,如持久性、事務(wù)管理、查詢等。需加入數(shù)據(jù)庫特征,
12、如持久性、事務(wù)管理、查詢等。 (4 4)提供一個可擴充的面向?qū)ο蟮臄?shù)據(jù)庫管理系統(tǒng)類庫。)提供一個可擴充的面向?qū)ο蟮臄?shù)據(jù)庫管理系統(tǒng)類庫。這些類庫包含若干系統(tǒng)類,用于提供事務(wù)控制、對象簇聚的這些類庫包含若干系統(tǒng)類,用于提供事務(wù)控制、對象簇聚的方法等。方法等。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 912.1.2 面向?qū)ο髷?shù)據(jù)庫設(shè)計思想 (5 5)把面向?qū)ο笳Z言結(jié)構(gòu)嵌入到傳統(tǒng)的宿主語言中。)把面向?qū)ο笳Z言結(jié)構(gòu)嵌入到傳統(tǒng)的宿主語言中。這類似于把這類似于把SQLSQL語言嵌入到語言嵌入到C C、FORTRANFORTRAN等語言中,用這種等語言中,用這種方法實現(xiàn)的典型產(chǎn)品是方法實現(xiàn)的典型產(chǎn)
13、品是O2 O2 。 (6 6)為特定的應(yīng)用領(lǐng)域提供一個底層的面向?qū)ο髷?shù)據(jù))為特定的應(yīng)用領(lǐng)域提供一個底層的面向?qū)ο髷?shù)據(jù)庫管理。這種方案無法提供一個通用的數(shù)據(jù)庫環(huán)境,所庫管理。這種方案無法提供一個通用的數(shù)據(jù)庫環(huán)境,所以只能針對特定應(yīng)用領(lǐng)域。以只能針對特定應(yīng)用領(lǐng)域。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1012.1.3 面向?qū)ο髷?shù)據(jù)庫的應(yīng)用和功能 1. 1.面向?qū)ο髷?shù)據(jù)庫的應(yīng)用面向?qū)ο髷?shù)據(jù)庫的應(yīng)用 。面向?qū)ο髷?shù)據(jù)庫的應(yīng)用。面向?qū)ο髷?shù)據(jù)庫的應(yīng)用主要集中在以下幾個方面主要集中在以下幾個方面 : (1 1)計算機輔助設(shè)計)計算機輔助設(shè)計/ /制造(制造(CAD/CAMCAD/CAM) (2
14、 2)計算機集成制造系統(tǒng)()計算機集成制造系統(tǒng)(CIMSCIMS) (3 3)計算機輔助軟件工程()計算機輔助軟件工程(CASECASE) (4 4)地理信息系統(tǒng)()地理信息系統(tǒng)(GISGIS) (5 5)辦公自動化系統(tǒng)()辦公自動化系統(tǒng)(OASOAS) (6 6)超大規(guī)模集成電路設(shè)計()超大規(guī)模集成電路設(shè)計(VLSI DesignVLSI Design) 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1112.1.3 面向?qū)ο髷?shù)據(jù)庫的應(yīng)用和功能 2. 2.面向?qū)ο髷?shù)據(jù)庫的功能面向?qū)ο髷?shù)據(jù)庫的功能 : :(1 1)復(fù)雜的信息建模能力)復(fù)雜的信息建模能力 (2 2)語義模式的設(shè)計)語義模式
15、的設(shè)計 (3 3)豐富的約束管理)豐富的約束管理 (4 4)動態(tài)模式演進(jìn))動態(tài)模式演進(jìn) (5 5)大規(guī)模數(shù)據(jù)管理)大規(guī)模數(shù)據(jù)管理 (6 6)對象的版本管理)對象的版本管理 (7 7)可伸縮性事務(wù)管理)可伸縮性事務(wù)管理 (8 8)計算完整的數(shù)據(jù)庫編程語言)計算完整的數(shù)據(jù)庫編程語言 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1212.1.4 面向?qū)ο髷?shù)據(jù)庫的發(fā)展前景 十多年中,面向?qū)ο髷?shù)據(jù)庫領(lǐng)域得到了很大的發(fā)展,已十多年中,面向?qū)ο髷?shù)據(jù)庫領(lǐng)域得到了很大的發(fā)展,已有許多實用的面向?qū)ο髷?shù)據(jù)庫系統(tǒng)面世。面向?qū)ο蟮姆椒ㄓ扔性S多實用的面向?qū)ο髷?shù)據(jù)庫系統(tǒng)面世。面向?qū)ο蟮姆椒ㄓ绕溥m合于表示結(jié)構(gòu)化的知識
16、的特點,預(yù)示著面向?qū)ο髷?shù)據(jù)庫其適合于表示結(jié)構(gòu)化的知識的特點,預(yù)示著面向?qū)ο髷?shù)據(jù)庫向智能型數(shù)據(jù)庫即知識庫的方向發(fā)展。智能型數(shù)據(jù)庫的許多向智能型數(shù)據(jù)庫即知識庫的方向發(fā)展。智能型數(shù)據(jù)庫的許多領(lǐng)域已開始使用面向?qū)ο髷?shù)據(jù)模型技術(shù),并產(chǎn)生了巨大的效領(lǐng)域已開始使用面向?qū)ο髷?shù)據(jù)模型技術(shù),并產(chǎn)生了巨大的效果。果。 但是,目前面向?qū)ο髷?shù)據(jù)庫系統(tǒng)還存在一些問題,如缺但是,目前面向?qū)ο髷?shù)據(jù)庫系統(tǒng)還存在一些問題,如缺乏堅實的形式化理論支持,沒有一個切實可行的標(biāo)準(zhǔn),缺乏乏堅實的形式化理論支持,沒有一個切實可行的標(biāo)準(zhǔn),缺乏數(shù)據(jù)庫的許多功能,產(chǎn)品之間的兼容性和可移植性較差;不數(shù)據(jù)庫的許多功能,產(chǎn)品之間的兼容性和可移植性較差;
17、不能與關(guān)系數(shù)據(jù)庫系統(tǒng)兼容,沒有提供使關(guān)系數(shù)據(jù)庫和面向?qū)δ芘c關(guān)系數(shù)據(jù)庫系統(tǒng)兼容,沒有提供使關(guān)系數(shù)據(jù)庫和面向?qū)ο髷?shù)據(jù)庫相互轉(zhuǎn)換的象數(shù)據(jù)庫相互轉(zhuǎn)換的“通道通道”;缺乏關(guān)系數(shù)據(jù)庫系統(tǒng)成功使;缺乏關(guān)系數(shù)據(jù)庫系統(tǒng)成功使用的一些功能特點,如非過程化查詢語言、視圖、授權(quán)等等。用的一些功能特點,如非過程化查詢語言、視圖、授權(quán)等等。第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1312.1.4 面向?qū)ο髷?shù)據(jù)庫的發(fā)展前景 為了解決以上這些問題,面向?qū)ο髷?shù)據(jù)庫還需更深為了解決以上這些問題,面向?qū)ο髷?shù)據(jù)庫還需更深一步的研究。以下是幾個研究方向:一步的研究。以下是幾個研究方向: 1.1.標(biāo)準(zhǔn)化和形式化。對面向?qū)ο蟮?/p>
18、數(shù)據(jù)模型和相應(yīng)標(biāo)準(zhǔn)化和形式化。對面向?qū)ο蟮臄?shù)據(jù)模型和相應(yīng)的程序接口語言進(jìn)行標(biāo)準(zhǔn)化是必要的。在面向?qū)ο蟮臄?shù)的程序接口語言進(jìn)行標(biāo)準(zhǔn)化是必要的。在面向?qū)ο蟮臄?shù)據(jù)庫建立之前,強調(diào)對面向?qū)ο蠛诵母拍畹哪承┓矫孢M(jìn)據(jù)庫建立之前,強調(diào)對面向?qū)ο蠛诵母拍畹哪承┓矫孢M(jìn)行形式化也是必要的。行形式化也是必要的。 2.2.性能改進(jìn)性能改進(jìn) 。從一代數(shù)據(jù)庫技術(shù)向另一代轉(zhuǎn)變,程。從一代數(shù)據(jù)庫技術(shù)向另一代轉(zhuǎn)變,程序員的工作變得相對容易的同時,數(shù)據(jù)庫系統(tǒng)的性能成序員的工作變得相對容易的同時,數(shù)據(jù)庫系統(tǒng)的性能成為要考慮的主要問題。因此需要投入相當(dāng)多的研究和開為要考慮的主要問題。因此需要投入相當(dāng)多的研究和開發(fā)力量,改善新一代數(shù)據(jù)庫
19、的性能,使其達(dá)到一種可接發(fā)力量,改善新一代數(shù)據(jù)庫的性能,使其達(dá)到一種可接受的水平。受的水平。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1412.1.4 面向?qū)ο髷?shù)據(jù)庫的發(fā)展前景 3. 3.數(shù)據(jù)庫的異質(zhì)混合。管理異質(zhì)數(shù)據(jù)庫混合是面向數(shù)據(jù)庫的異質(zhì)混合。管理異質(zhì)數(shù)據(jù)庫混合是面向?qū)ο髷?shù)據(jù)庫系統(tǒng)付諸實現(xiàn)的過程。對象數(shù)據(jù)庫系統(tǒng)付諸實現(xiàn)的過程。 4.4.數(shù)據(jù)庫工具數(shù)據(jù)庫工具 。面向?qū)ο髷?shù)據(jù)模型的豐富語義是它。面向?qū)ο髷?shù)據(jù)模型的豐富語義是它的優(yōu)勢所在。一方面,它使用戶很容易建立他們的應(yīng)用的優(yōu)勢所在。一方面,它使用戶很容易建立他們的應(yīng)用系統(tǒng),但另一方面,具有類等級和類復(fù)合等級的面向?qū)ο到y(tǒng),但另一方面
20、,具有類等級和類復(fù)合等級的面向?qū)ο髷?shù)據(jù)庫模式的復(fù)雜性使數(shù)據(jù)庫的邏輯設(shè)計和物理設(shè)計象數(shù)據(jù)庫模式的復(fù)雜性使數(shù)據(jù)庫的邏輯設(shè)計和物理設(shè)計問題變得相當(dāng)復(fù)雜。所以,為面向?qū)ο髷?shù)據(jù)庫的邏輯設(shè)問題變得相當(dāng)復(fù)雜。所以,為面向?qū)ο髷?shù)據(jù)庫的邏輯設(shè)計和物理設(shè)計提供有效的設(shè)計工具比關(guān)系數(shù)據(jù)庫更為迫計和物理設(shè)計提供有效的設(shè)計工具比關(guān)系數(shù)據(jù)庫更為迫切。切。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1512.1.4 面向?qū)ο髷?shù)據(jù)庫的發(fā)展前景 5. 5.附加的數(shù)據(jù)庫特征附加的數(shù)據(jù)庫特征 。在視圖、演繹能力、語義模。在視圖、演繹能力、語義模型、長事務(wù)處理模型等數(shù)據(jù)庫特征方面進(jìn)行附加。型、長事務(wù)處理模型等數(shù)據(jù)庫特征方面
21、進(jìn)行附加。 6.6.可擴充的結(jié)構(gòu)可擴充的結(jié)構(gòu) 。(。(1 1)支持不同的數(shù)據(jù)模型。在)支持不同的數(shù)據(jù)模型。在面向?qū)ο髷?shù)據(jù)庫中,對面向?qū)ο髷?shù)據(jù)模型做小的改變可面向?qū)ο髷?shù)據(jù)庫中,對面向?qū)ο髷?shù)據(jù)模型做小的改變可能會引起數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)產(chǎn)生重大變化。能會引起數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)產(chǎn)生重大變化。 (2 2)支持語)支持語義擴充。由于版本的語義在設(shè)備之間存在著不同程度的義擴充。由于版本的語義在設(shè)備之間存在著不同程度的差異,所以一種比較有價值的方法是對版本提供一個分差異,所以一種比較有價值的方法是對版本提供一個分層結(jié)構(gòu),在低層支持一個通用的低級版本語義的基本機層結(jié)構(gòu),在低層支持一個通用的低級版本語義的基本機制,將高層
22、作成可擴充的適合各種特定設(shè)備的版本語義。制,將高層作成可擴充的適合各種特定設(shè)備的版本語義。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1612.2 面向?qū)ο髷?shù)據(jù)模型12.2.1 12.2.1 對象對象12.2.2 12.2.2 類類12.2.3 12.2.3 類層次類層次12.2.4 12.2.4 繼承繼承12.2.5 12.2.5 多重繼承性多重繼承性12.2.6 12.2.6 對象標(biāo)識對象標(biāo)識12.2.7 12.2.7 對象包含對象包含第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1712.2.1 對象 對象(對象(ObjectObject)是現(xiàn)實世界中的一個實體在計算機系
23、)是現(xiàn)實世界中的一個實體在計算機系統(tǒng)中的抽象表示。一切概念上的實體都可以稱作對象,如統(tǒng)中的抽象表示。一切概念上的實體都可以稱作對象,如一個數(shù)字、一個人、一本書、一所學(xué)校。一個數(shù)字、一個人、一本書、一所學(xué)校。對象是包含屬性對象是包含屬性和方法的封裝結(jié)構(gòu)。和方法的封裝結(jié)構(gòu)。一個對象包括以下幾個部分:一個對象包括以下幾個部分: (1 1)實例變量集合。實例變量也稱屬性。所有實例變)實例變量集合。實例變量也稱屬性。所有實例變量的集合構(gòu)成對象數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),每個實例變量的值本量的集合構(gòu)成對象數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),每個實例變量的值本身也是一個對象。身也是一個對象。 (2 2)消息集合。消息指的是不考慮特定實現(xiàn)細(xì)
24、節(jié)情況)消息集合。消息指的是不考慮特定實現(xiàn)細(xì)節(jié)情況下對象間請求的傳遞,每個消息都能由該對象接收和響應(yīng),下對象間請求的傳遞,每個消息都能由該對象接收和響應(yīng),是對象對外提供的界面。是對象對外提供的界面。 (3 3)方法集合。方法是指加在對象上的操作。每個方)方法集合。方法是指加在對象上的操作。每個方法都是實現(xiàn)一個消息的程序編碼,它返回一個值作為對消法都是實現(xiàn)一個消息的程序編碼,它返回一個值作為對消息的響應(yīng)。息的響應(yīng)。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1812.2.2 類 類(類(ClassClass)是具有相同特征(相同數(shù)據(jù)結(jié)構(gòu)和相同)是具有相同特征(相同數(shù)據(jù)結(jié)構(gòu)和相同操作)的
25、對象的集合。每一個對象成為它所在類的一個操作)的對象的集合。每一個對象成為它所在類的一個實例。一個類中的所有對象共享一個公共的定義,盡管實例。一個類中的所有對象共享一個公共的定義,盡管它們對變量所賦予的值不同。它們對變量所賦予的值不同。 類與對象是相對的,可以把類本身也看作一個對象,類與對象是相對的,可以把類本身也看作一個對象,稱為類對象,它包含如下內(nèi)容:稱為類對象,它包含如下內(nèi)容: (1 1)一個集合變量,它的值是該類的所有實例對象)一個集合變量,它的值是該類的所有實例對象所組成的集合。所組成的集合。 (2 2)消息)消息newnew,表示建立這個類的一個新實例。,表示建立這個類的一個新實例
26、。 (3 3)實現(xiàn)消息)實現(xiàn)消息newnew的方法及其程序代碼。的方法及其程序代碼。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 1912.2.3 類層次 在面向?qū)ο竽P椭?,一個類可以是另一個類的子類,在面向?qū)ο竽P椭?,一個類可以是另一個類的子類,或反之,一個類可以是另一個類的父類(又稱超類)。這或反之,一個類可以是另一個類的父類(又稱超類)。這樣,面向?qū)ο竽P偷囊唤M類可以形成一個有限的層次結(jié)構(gòu),樣,面向?qū)ο竽P偷囊唤M類可以形成一個有限的層次結(jié)構(gòu),稱為類層次。在一個類層次中,一個類繼承其所有超類稱為類層次。在一個類層次中,一個類繼承其所有超類(包括超類的超類)的全部實例變量、方法和消息
27、。(包括超類的超類)的全部實例變量、方法和消息。 在類層次結(jié)構(gòu)中,從上而下是一個特殊化的過程,子在類層次結(jié)構(gòu)中,從上而下是一個特殊化的過程,子類是超類的特例。反之,自下而上是一個普遍化、抽象化類是超類的特例。反之,自下而上是一個普遍化、抽象化的過程,超類是子類的概括,子類與超類之間的關(guān)系是的過程,超類是子類的概括,子類與超類之間的關(guān)系是IS-AIS-A關(guān)系。關(guān)系。第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 2012.2.3 類層次 圖圖12.1是一個企業(yè)職工數(shù)據(jù)庫的類層次結(jié)構(gòu)的例子:是一個企業(yè)職工數(shù)據(jù)庫的類層次結(jié)構(gòu)的例子:圖圖12.1 12.1 類層次結(jié)構(gòu)圖類層次結(jié)構(gòu)圖職工職工工人工人
28、管理人員管理人員清潔工清潔工焊工焊工鉗工鉗工第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 2112.2.4 繼承 繼承(繼承(InheritanceInheritance)是面向?qū)ο笙到y(tǒng)中最重要的概念,)是面向?qū)ο笙到y(tǒng)中最重要的概念,是自動地共享類、子類和對象中的實例變量和方法的機制。是自動地共享類、子類和對象中的實例變量和方法的機制。上層對象具有的變量和方法,下層對象可以繼承,從而使得上層對象具有的變量和方法,下層對象可以繼承,從而使得具有不同結(jié)構(gòu)但有層次聯(lián)系的對象可以共享它們共同部分上具有不同結(jié)構(gòu)但有層次聯(lián)系的對象可以共享它們共同部分上的方法。的方法。 在面向?qū)ο笙到y(tǒng)中,對象是封裝的
29、,如果沒有繼承機制,在面向?qū)ο笙到y(tǒng)中,對象是封裝的,如果沒有繼承機制,類中的實例變量和方法就可能出現(xiàn)大量重復(fù)。類中的實例變量和方法就可能出現(xiàn)大量重復(fù)。 例如,工人類和管理人員類同為職工類的子類,都有姓例如,工人類和管理人員類同為職工類的子類,都有姓名、性別、年齡等屬性,因而可以將工人和管理人員共有的名、性別、年齡等屬性,因而可以將工人和管理人員共有的屬性和方法在職工類中定義,工人特有的屬性和方法在工人屬性和方法在職工類中定義,工人特有的屬性和方法在工人類中定義,管理人員特有的屬性和方法在管理人員類中定義。類中定義,管理人員特有的屬性和方法在管理人員類中定義。第第1111章章 WebWeb數(shù)據(jù)庫
30、概述數(shù)據(jù)庫概述 2212.2.5 多重繼承性 在多數(shù)情況下,類的樹形層次結(jié)構(gòu)可以滿足實際應(yīng)在多數(shù)情況下,類的樹形層次結(jié)構(gòu)可以滿足實際應(yīng)用需要,在這些樹形結(jié)構(gòu)中,一個類的所有超類都在層用需要,在這些樹形結(jié)構(gòu)中,一個類的所有超類都在層次結(jié)構(gòu)中互為祖先或后代,即任何兩個超類之間都是祖次結(jié)構(gòu)中互為祖先或后代,即任何兩個超類之間都是祖先和后代的關(guān)系。但也有一些應(yīng)用場合,僅有樹形層次先和后代的關(guān)系。但也有一些應(yīng)用場合,僅有樹形層次結(jié)構(gòu)是不夠的。結(jié)構(gòu)是不夠的。 多重繼承性可以解決此類問題。它是指一個類具有多重繼承性可以解決此類問題。它是指一個類具有從多個超類中繼承變量、方法和消息的能力。在多重繼從多個超類中
31、繼承變量、方法和消息的能力。在多重繼承情況下,類承情況下,類子類的關(guān)系可用一個有向無環(huán)圖(子類的關(guān)系可用一個有向無環(huán)圖(DAGDAG)來表示,其中一個類可有多于一個的超類。來表示,其中一個類可有多于一個的超類。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 2312.2.6 對象標(biāo)識 面向?qū)ο竽P吞峁┝艘环N機制,使得系統(tǒng)中任何對面向?qū)ο竽P吞峁┝艘环N機制,使得系統(tǒng)中任何對象都是唯一的,每個對象實例都被賦予一個唯一的標(biāo)識象都是唯一的,每個對象實例都被賦予一個唯一的標(biāo)識符,作為對象的標(biāo)識。在對象創(chuàng)建時由系統(tǒng)自動生成的,符,作為對象的標(biāo)識。在對象創(chuàng)建時由系統(tǒng)自動生成的,在概念上獨立于對象的狀態(tài)
32、和行為。對象標(biāo)識一旦生成在概念上獨立于對象的狀態(tài)和行為。對象標(biāo)識一旦生成是不能改變的,即使對象的狀態(tài)發(fā)生了變化而對象標(biāo)識是不能改變的,即使對象的狀態(tài)發(fā)生了變化而對象標(biāo)識不變,還是被看作同一對象。用戶可以查看、查詢對象不變,還是被看作同一對象。用戶可以查看、查詢對象標(biāo)識,但不能改變它的值。標(biāo)識,但不能改變它的值。 對象標(biāo)識的概念是一個比在程序設(shè)計語言或不是基對象標(biāo)識的概念是一個比在程序設(shè)計語言或不是基于面向?qū)ο蟮臄?shù)據(jù)模型中所用到的標(biāo)識概念更強的概念。于面向?qū)ο蟮臄?shù)據(jù)模型中所用到的標(biāo)識概念更強的概念。 內(nèi)置標(biāo)識是數(shù)據(jù)模型或程序設(shè)計語言中內(nèi)置的一種內(nèi)置標(biāo)識是數(shù)據(jù)模型或程序設(shè)計語言中內(nèi)置的一種標(biāo)識方法
33、,不需要用戶提供標(biāo)識符。面向?qū)ο竽P褪褂脴?biāo)識方法,不需要用戶提供標(biāo)識符。面向?qū)ο竽P褪褂眠@種標(biāo)識,每個對象在創(chuàng)建時由系統(tǒng)自動賦予一個標(biāo)識這種標(biāo)識,每個對象在創(chuàng)建時由系統(tǒng)自動賦予一個標(biāo)識符。符。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 2412.2.7 對象包含 對象的變量的值也是一個對象,這就在對象之間產(chǎn)對象的變量的值也是一個對象,這就在對象之間產(chǎn)生一個嵌套層次結(jié)構(gòu)。假設(shè)生一個嵌套層次結(jié)構(gòu)。假設(shè)Object1Object1和和Object2Object2是兩個對是兩個對象,如果象,如果Object2Object2是是Object1Object1的某個變量的值,則稱的某個變量的值,則
34、稱Object2Object2屬于屬于Object1Object1,或,或Object1Object1包含包含Object2Object2,也稱,也稱Object2Object2是是Object1Object1的子對象。的子對象。 包含其他對象的對象稱為復(fù)雜對象或復(fù)合對象??砂渌麑ο蟮膶ο蠓Q為復(fù)雜對象或復(fù)合對象??梢源嬖诙鄬影?,圖以存在多層包含,圖12.212.2所示的情形就產(chǎn)生了對象間的所示的情形就產(chǎn)生了對象間的包含層次。包含層次。臺式計算機臺式計算機圖圖12.2 12.2 臺式計算機結(jié)構(gòu)的包含層次臺式計算機結(jié)構(gòu)的包含層次顯示器顯示器鍵盤鍵盤電源電源硬盤硬盤機箱機箱主機主機鼠標(biāo)鼠標(biāo)光驅(qū)
35、光驅(qū)軟驅(qū)軟驅(qū)第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 2512.2.7 對象包含 包含是面向?qū)ο竽P偷囊粋€重要概念,它允許不同包含是面向?qū)ο竽P偷囊粋€重要概念,它允許不同的用戶從不同的角度來觀察數(shù)據(jù)。如一個顯示器制造商的用戶從不同的角度來觀察數(shù)據(jù)。如一個顯示器制造商可以只專注于顯示器對象,而不用去關(guān)心主機類的對象。可以只專注于顯示器對象,而不用去關(guān)心主機類的對象。 在某些應(yīng)用中,一個對象可能要包含在多個對象中,在某些應(yīng)用中,一個對象可能要包含在多個對象中,這時包含關(guān)系要用一個有向無環(huán)圖(這時包含關(guān)系要用一個有向無環(huán)圖(DAGDAG)而不是用層次)而不是用層次來表示。來表示。 第第11
36、11章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 2612.3 面向?qū)ο髷?shù)據(jù)庫管理系統(tǒng)12.3.1 12.3.1 類管理類管理12.3.2 12.3.2 對象管理對象管理12.3.3 12.3.3 對象控制對象控制第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 2712.3.1 類管理 類管理主要負(fù)責(zé)對類的定義、類的操作進(jìn)行管理,類管理主要負(fù)責(zé)對類的定義、類的操作進(jìn)行管理,具體包括:具體包括: (1 1)類定義。包括定義類的屬性集、類的方法、類)類定義。包括定義類的屬性集、類的方法、類的繼承性以及完整性約束條件等,通過類定義可以建立的繼承性以及完整性約束條件等,通過類定義可以建立一個類層次結(jié)構(gòu)。
37、一個類層次結(jié)構(gòu)。 (2 2)類層次結(jié)構(gòu)的查詢。包括對類的數(shù)據(jù)結(jié)構(gòu)、類)類層次結(jié)構(gòu)的查詢。包括對類的數(shù)據(jù)結(jié)構(gòu)、類的方法、類間關(guān)系的查詢等。的方法、類間關(guān)系的查詢等。 (3 3)類模型演進(jìn)。面向?qū)ο髷?shù)據(jù)庫模式是類的集合,)類模型演進(jìn)。面向?qū)ο髷?shù)據(jù)庫模式是類的集合,類模式為適應(yīng)需求的變化而隨時間不斷變化稱為類模式類模式為適應(yīng)需求的變化而隨時間不斷變化稱為類模式演進(jìn),它包括創(chuàng)建新類、刪除或修改已有的類屬性和方演進(jìn),它包括創(chuàng)建新類、刪除或修改已有的類屬性和方法等。法等。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 2812.3.1 類管理 OODB OODB應(yīng)用環(huán)境對應(yīng)用環(huán)境對OODBOODB類
38、模式演進(jìn)提出了許多新的要求類模式演進(jìn)提出了許多新的要求(如需要頻繁地改變(如需要頻繁地改變OODBOODB數(shù)據(jù)庫模式且類模式的演進(jìn)是數(shù)據(jù)庫模式且類模式的演進(jìn)是動態(tài)的等),使得動態(tài)的等),使得OODBOODB模式的修改比關(guān)系模式的修改更模式的修改比關(guān)系模式的修改更加復(fù)雜。類模式演進(jìn)的主要內(nèi)容有:加復(fù)雜。類模式演進(jìn)的主要內(nèi)容有: (1 1)類中內(nèi)容變化,如增、刪、修改類中的屬性和方)類中內(nèi)容變化,如增、刪、修改類中的屬性和方法等;法等; (2 2)類間關(guān)系的變化,如類間繼承關(guān)系的改變等;)類間關(guān)系的變化,如類間繼承關(guān)系的改變等; (3 3)類結(jié)構(gòu)重組,如在類層次結(jié)構(gòu)中增加、刪除類等。)類結(jié)構(gòu)重組,
39、如在類層次結(jié)構(gòu)中增加、刪除類等。 (4 4)類管理中的其他功能。如類的權(quán)限建立與刪除、)類管理中的其他功能。如類的權(quán)限建立與刪除、顯示、打印等。顯示、打印等。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 2912.3.2 對象管理 對象管理主要完成對類中對象的操縱管理,主要內(nèi)容對象管理主要完成對類中對象的操縱管理,主要內(nèi)容有:有: (1 1)對象的查詢。即在類層次結(jié)構(gòu)中,通過查詢路徑)對象的查詢。即在類層次結(jié)構(gòu)中,通過查詢路徑查找所需對象。查詢路徑由類、屬性、繼承路徑等部分查找所需對象。查詢路徑由類、屬性、繼承路徑等部分組成,一個查詢可用一個路徑表達(dá)式。組成,一個查詢可用一個路徑表達(dá)式
40、。 (2 2)對象的增加、刪除和修改操作。)對象的增加、刪除和修改操作。 (3 3)索引與簇集。為提高對象的查詢效率,按類中屬)索引與簇集。為提高對象的查詢效率,按類中屬性及路徑建立索引以及對類及路徑建立簇集。性及路徑建立索引以及對類及路徑建立簇集。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 3012.3.3 對象控制 對象控制所采用的基本方法與傳統(tǒng)數(shù)據(jù)庫系統(tǒng)有相對象控制所采用的基本方法與傳統(tǒng)數(shù)據(jù)庫系統(tǒng)有相似之處,但似之處,但OODBMSOODBMS為實現(xiàn)新的功能使具體處理變得更為為實現(xiàn)新的功能使具體處理變得更為復(fù)雜。對象控制包括以下內(nèi)容:復(fù)雜。對象控制包括以下內(nèi)容: (1 1)通過
41、方法與消息實現(xiàn)完整性約束條件的表示及檢)通過方法與消息實現(xiàn)完整性約束條件的表示及檢驗。驗。 (2 2)引入授權(quán)機制等實現(xiàn)安全性功能。)引入授權(quán)機制等實現(xiàn)安全性功能。 (3 3)并發(fā)控制與事務(wù)處理的具體實現(xiàn)更為復(fù)雜,事務(wù))并發(fā)控制與事務(wù)處理的具體實現(xiàn)更為復(fù)雜,事務(wù)處理還需要增加長事務(wù)及嵌套事務(wù)處理的功能。處理還需要增加長事務(wù)及嵌套事務(wù)處理的功能。 (4 4)故障恢復(fù)。)故障恢復(fù)。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 3112.4 對象-關(guān)系數(shù)據(jù)庫12.4.1 12.4.1 對象對象- -關(guān)系數(shù)據(jù)庫系統(tǒng)的定義關(guān)系數(shù)據(jù)庫系統(tǒng)的定義12.4.2 12.4.2 對象對象- -關(guān)系數(shù)據(jù)庫系
42、統(tǒng)的特點關(guān)系數(shù)據(jù)庫系統(tǒng)的特點12.4.3 12.4.3 對象對象- -關(guān)系數(shù)據(jù)庫系統(tǒng)的實現(xiàn)方法關(guān)系數(shù)據(jù)庫系統(tǒng)的實現(xiàn)方法第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 3212.4.1 對象-關(guān)系數(shù)據(jù)庫系統(tǒng)的定義 在傳統(tǒng)的關(guān)系數(shù)據(jù)模型基礎(chǔ)上,提供元組、數(shù)組、在傳統(tǒng)的關(guān)系數(shù)據(jù)模型基礎(chǔ)上,提供元組、數(shù)組、集合一類豐富的數(shù)據(jù)類型以及處理新的數(shù)據(jù)類型操作的集合一類豐富的數(shù)據(jù)類型以及處理新的數(shù)據(jù)類型操作的能力,并且具有繼承性和對象標(biāo)識等面向?qū)ο筇攸c,這能力,并且具有繼承性和對象標(biāo)識等面向?qū)ο筇攸c,這樣形成的數(shù)據(jù)模型,稱為對象樣形成的數(shù)據(jù)模型,稱為對象- -關(guān)系數(shù)據(jù)模型?;趯ο箨P(guān)系數(shù)據(jù)模型?;趯ο?
43、 -關(guān)系數(shù)據(jù)模型的數(shù)據(jù)庫系統(tǒng)稱為對象關(guān)系數(shù)據(jù)模型的數(shù)據(jù)庫系統(tǒng)稱為對象- -關(guān)系數(shù)據(jù)庫系統(tǒng),關(guān)系數(shù)據(jù)庫系統(tǒng),簡稱簡稱ORDBSORDBS。 ORDBSORDBS為那些希望使用具有面向?qū)ο筇卣鞯年P(guān)系數(shù)據(jù)為那些希望使用具有面向?qū)ο筇卣鞯年P(guān)系數(shù)據(jù)庫用戶提供了一條捷徑。在對象庫用戶提供了一條捷徑。在對象- -關(guān)系模型中,關(guān)系模型中,ERER模型的模型的許多概念,如實體標(biāo)識、多值屬性、泛化許多概念,如實體標(biāo)識、多值屬性、泛化/ /細(xì)化等,無需細(xì)化等,無需經(jīng)過變換轉(zhuǎn)化可直接引用。經(jīng)過變換轉(zhuǎn)化可直接引用。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 3312.4.2 對象-關(guān)系數(shù)據(jù)庫系統(tǒng)的特點 對象對
44、象- -關(guān)系數(shù)據(jù)庫系統(tǒng)兼有關(guān)系數(shù)據(jù)庫和面向?qū)ο髷?shù)據(jù)關(guān)系數(shù)據(jù)庫系統(tǒng)兼有關(guān)系數(shù)據(jù)庫和面向?qū)ο髷?shù)據(jù)庫兩方面的特征,它除了具有原來關(guān)系數(shù)據(jù)庫的特點外,還庫兩方面的特征,它除了具有原來關(guān)系數(shù)據(jù)庫的特點外,還具有以下特點:具有以下特點: (1 1)允許用戶擴充基本數(shù)據(jù)類型,即允許用戶根據(jù)應(yīng)用)允許用戶擴充基本數(shù)據(jù)類型,即允許用戶根據(jù)應(yīng)用需求自己定義數(shù)據(jù)類型、函數(shù)和操作符,而且一經(jīng)定義,這需求自己定義數(shù)據(jù)類型、函數(shù)和操作符,而且一經(jīng)定義,這些新的數(shù)據(jù)類型、函數(shù)和操作符將放在數(shù)據(jù)庫管理系統(tǒng)核心些新的數(shù)據(jù)類型、函數(shù)和操作符將放在數(shù)據(jù)庫管理系統(tǒng)核心中供所有用戶公用。中供所有用戶公用。 (2 2)能在)能在SQLS
45、QL中支持復(fù)雜對象,即由多種基本類型或用中支持復(fù)雜對象,即由多種基本類型或用戶定義類型構(gòu)成的對象。戶定義類型構(gòu)成的對象。ORDBSORDBS通過對通過對SQLSQL語言的語言的 SELECTSELECT句句型使用方式稍加修改就能處理帶有復(fù)合類型、嵌套和引用類型使用方式稍加修改就能處理帶有復(fù)合類型、嵌套和引用類型的型的ORDBORDB查詢。查詢。 第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 3412.4.2 對象-關(guān)系數(shù)據(jù)庫系統(tǒng)的特點 (3 3)能夠支持子類對超類的各種特性的繼承,支持)能夠支持子類對超類的各種特性的繼承,支持?jǐn)?shù)據(jù)繼承和函數(shù)繼承,支持多重繼承,支持函數(shù)重載。數(shù)據(jù)繼承和函數(shù)
46、繼承,支持多重繼承,支持函數(shù)重載。如在如在ORDBSORDBS中支持類型一級的繼承性,也可實現(xiàn)表級繼承中支持類型一級的繼承性,也可實現(xiàn)表級繼承性。性。 (4 4)能夠提供功能強大的通用規(guī)則系統(tǒng),而且規(guī)則)能夠提供功能強大的通用規(guī)則系統(tǒng),而且規(guī)則系統(tǒng)與其他的對象系統(tǒng)與其他的對象關(guān)系能力是集成為一體的。例如,關(guān)系能力是集成為一體的。例如,規(guī)則中的事件和動作可以是任意的規(guī)則中的事件和動作可以是任意的SQLSQL語句,可以使用用語句,可以使用用戶自定義的函數(shù),規(guī)則能夠被繼承等。戶自定義的函數(shù),規(guī)則能夠被繼承等。第第1111章章 WebWeb數(shù)據(jù)庫概述數(shù)據(jù)庫概述 3512.4.3 對象-關(guān)系數(shù)據(jù)庫系統(tǒng)的
47、實現(xiàn)方法 實現(xiàn)對象實現(xiàn)對象- -關(guān)系數(shù)據(jù)庫系統(tǒng)的方法主要有以下關(guān)系數(shù)據(jù)庫系統(tǒng)的方法主要有以下5 5種:種:(1 1)從頭開發(fā))從頭開發(fā)ORDBMSORDBMS。這種方法費時費力,不太現(xiàn)實。這種方法費時費力,不太現(xiàn)實。(2 2)從現(xiàn)有的關(guān)系型)從現(xiàn)有的關(guān)系型DBMSDBMS基礎(chǔ)上進(jìn)行擴展。擴展方法有兩基礎(chǔ)上進(jìn)行擴展。擴展方法有兩種:種: 對關(guān)系型對關(guān)系型DBMSDBMS核心進(jìn)行擴充,逐漸增加面向?qū)ο筇匦?。核心進(jìn)行擴充,逐漸增加面向?qū)ο筇匦?。這是一種比較安全的方法,新系統(tǒng)的性能往往比較好。這是一種比較安全的方法,新系統(tǒng)的性能往往比較好。 不修改現(xiàn)有的關(guān)系型不修改現(xiàn)有的關(guān)系型DBMSDBMS核心,而是在現(xiàn)有關(guān)系型核心,而是在現(xiàn)有關(guān)系型DBMSDBMS外面加一個包裝層,由包裝層提供對象外面加一個包裝層,由包裝層提供對象- -關(guān)系型應(yīng)用編程接關(guān)系型應(yīng)用編程接口,并負(fù)責(zé)將用戶提交的對象口,并負(fù)責(zé)將用戶提交的對象- -關(guān)系
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度房產(chǎn)抵押小微企業(yè)貸款合同模板
- 2025年度兒童房安全木門定制合同
- 2025年度專利技術(shù)許可協(xié)議模板-智能硬件
- 2025年度家具行業(yè)專利技術(shù)許可合同
- 冷藏肉類電商運輸合同
- 2025年度導(dǎo)演聘用合同范例:院線電影導(dǎo)演合作協(xié)議書
- 2025年吉安職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性測試題庫完整
- 2025年度農(nóng)業(yè)種植合同解除協(xié)議樣本
- 親子教育居間合同
- 2025年度文化旅游產(chǎn)業(yè)投資合作協(xié)議書范文
- 英語-廣東省上進(jìn)聯(lián)考領(lǐng)航高中聯(lián)盟2025屆高三下學(xué)期開學(xué)考試題和答案
- 2025年春季新北師大版生物七年級下冊全冊教學(xué)課件
- 培訓(xùn)課件:律師客戶溝通技巧
- 2025年春新外研版(三起)英語三年級下冊課件 Unit5第1課時Startup
- 2025年春新外研版(三起)英語三年級下冊課件 Unit1第2課時Speedup
- 生物新教材培訓(xùn)的心得體會
- 2024年07月長沙農(nóng)村商業(yè)銀行股份有限公司2024年招考3名信息科技專業(yè)人才筆試歷年參考題庫附帶答案詳解
- 中醫(yī)預(yù)防流感知識講座
- 上海市2024年中考英語試題及答案
- 臨床患者體位管理
- 砂光機培訓(xùn)課件
評論
0/150
提交評論