美章網(wǎng) 資料文庫(kù) 對(duì)象數(shù)據(jù)庫(kù)理論研究范文

對(duì)象數(shù)據(jù)庫(kù)理論研究范文

本站小編為你精心準(zhǔn)備了對(duì)象數(shù)據(jù)庫(kù)理論研究參考范文,愿這些范文能點(diǎn)燃您思維的火花,激發(fā)您的寫(xiě)作靈感。歡迎深入閱讀并收藏。

1面向對(duì)象數(shù)據(jù)庫(kù)模型

1.1核心概念

1.i.1對(duì)象與對(duì)象標(biāo)識(shí)

對(duì)象,是現(xiàn)實(shí)世界中實(shí)體的抽象,是數(shù)據(jù)和操作的集合,是持久化到數(shù)據(jù)庫(kù)中的最小的存儲(chǔ)單位。

這里的對(duì)象其實(shí)與一般的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言中的對(duì)象并沒(méi)有很大不同。但是,這里的對(duì)象是持久性的。數(shù)據(jù)庫(kù)中的對(duì)象是數(shù)據(jù)記錄的最小單位,也就是說(shuō),數(shù)據(jù)庫(kù)中至少存在一個(gè)對(duì)象才有意義。當(dāng)然,對(duì)象中還可以有對(duì)象的屬性,方法等,但一個(gè)對(duì)象必須是完整的。

對(duì)象標(biāo)識(shí),指的是唯一標(biāo)定一個(gè)對(duì)象的標(biāo)志,一個(gè)對(duì)象對(duì)應(yīng)一個(gè)標(biāo)識(shí)符。在現(xiàn)實(shí)世界中,對(duì)象可能會(huì)隨著時(shí)間的推移而發(fā)生改變,但對(duì)象標(biāo)識(shí)不應(yīng)該改變,因此,對(duì)象標(biāo)識(shí)自對(duì)象生成后就不應(yīng)該再改變,否則無(wú)法使用對(duì)象標(biāo)識(shí)唯一確定一個(gè)對(duì)象了。即使兩個(gè)對(duì)象的屬性和方法以及狀態(tài)完全一致,只要其對(duì)象標(biāo)識(shí)不同,則兩者是不同的對(duì)象。

對(duì)象標(biāo)識(shí)一般有以下三種實(shí)現(xiàn)方式川(e}‘一r}sz}:

(1)值標(biāo)識(shí),使用對(duì)象的某一屬性作為其對(duì)象標(biāo)識(shí),不推薦此方式。

(2)名標(biāo)識(shí),使用一個(gè)名字來(lái)表示標(biāo)識(shí)。推薦此種方式。

(3)內(nèi)標(biāo)識(shí),以上兩種方式是由用戶建立的,而這種方式是由系統(tǒng)內(nèi)部建立的,不具有任何實(shí)際含義,且只有系統(tǒng)才可以“觀察”此類對(duì)象標(biāo)識(shí)。

另外,在對(duì)象數(shù)據(jù)庫(kù)中,標(biāo)識(shí)是永久不變的,即具有永久持久性,這和面向?qū)ο蟪绦蛑械膶?duì)象標(biāo)識(shí)不一樣,面向?qū)ο蟪绦蛑械膶?duì)象標(biāo)識(shí)只具有對(duì)象內(nèi)持久性。

1.1.2封裝

抽象是對(duì)象的外部界面與內(nèi)部實(shí)現(xiàn)之間實(shí)行清晰隔離的一種抽象,外部與對(duì)象的通信只能通過(guò)消息來(lái)實(shí)現(xiàn)[2)(e3o6-r}s6>.在對(duì)象數(shù)據(jù)庫(kù)中,表現(xiàn)為對(duì)象的私有和保護(hù)成員只能通過(guò)其方法來(lái)查詢得到,而公有成員可以直接查詢。這種方式的優(yōu)點(diǎn)是對(duì)象被封裝成了自含的單元,對(duì)象只接受已定義好的操作,其他對(duì)象不能直接訪問(wèn)對(duì)象的非公有成員。缺點(diǎn)是喪失了傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)中進(jìn)行即席的、按內(nèi)容的查詢,這就不夠方便靈活了,因此,需要做一些改進(jìn)和妥協(xié)。

1.1.3類

共享同一屬性和方法集的所有對(duì)象構(gòu)成的對(duì)象類,一個(gè)對(duì)象是一個(gè)類的實(shí)例。在數(shù)據(jù)庫(kù)是一種抽象的數(shù)據(jù)類型,相當(dāng)于關(guān)系數(shù)據(jù)庫(kù)中的一張表。

1.1.4類層次

這里涉及到繼承的概念,即類可以繼承類,從而具有與父類(或稱超類)的所有符合條件(只保護(hù)類型或公有類型)的屬性和方法。這是關(guān)系數(shù)據(jù)庫(kù)中所沒(méi)有的。

1.1.5消息

指的是對(duì)象的方法調(diào)用。通過(guò)對(duì)象的方法調(diào)用可以訪問(wèn)對(duì)象的屬性數(shù)據(jù)和執(zhí)行業(yè)務(wù)邏輯。這也是關(guān)系數(shù)據(jù)庫(kù)中沒(méi)有的。

1.2對(duì)象與對(duì)象標(biāo)識(shí)

1.2.1對(duì)象結(jié)構(gòu)

包括兩部分,一個(gè)是屬性集合,一個(gè)是方法集合。屬性集合將用于存儲(chǔ)數(shù)據(jù),方法集合將用于操作數(shù)據(jù)。屬性集合即是對(duì)象的成員變量,其中又可以分為公有類型的成員、私有類型的成員和保護(hù)類型的成員。公有類型的成員可以直接使用查詢語(yǔ)句進(jìn)行查詢,保護(hù)型成員可以在該類的子類的對(duì)象中直接訪問(wèn),私有類型的成員只能在本類的對(duì)象中訪問(wèn),外部對(duì)象只能通過(guò)實(shí)現(xiàn)定義好的方法(即操作)進(jìn)行訪問(wèn)。如果沒(méi)有事先定義好的方法,則外部將無(wú)法訪問(wèn)這些變量的值,這就實(shí)現(xiàn)了對(duì)象的封裝性了。在00數(shù)據(jù)庫(kù)中,對(duì)象結(jié)構(gòu)同樣分成這兩種集合。

1.2.2對(duì)象標(biāo)識(shí)

表示在一個(gè)數(shù)據(jù)庫(kù)中一個(gè)對(duì)象僅有一個(gè)唯一不變的標(biāo)識(shí)就是對(duì)象標(biāo)識(shí)。這個(gè)標(biāo)識(shí)用來(lái)精確定位一個(gè)對(duì)象。在00數(shù)據(jù)庫(kù)中,對(duì)象標(biāo)識(shí)是唯一標(biāo)定這一持久性存儲(chǔ)單元的唯一依據(jù)。其它對(duì)象或方法訪問(wèn)本對(duì)象的屬性和方法必須先找到該對(duì)象的對(duì)象標(biāo)識(shí),否則無(wú)法訪問(wèn)。

1.2.3封裝

即將一個(gè)對(duì)象的屬性和方法封裝在對(duì)象內(nèi)部,外部只能通過(guò)對(duì)象提供的外部接口進(jìn)行訪問(wèn)。這樣就提高了數(shù)據(jù)的安全性和代碼的重用性。

I.3類與類層次

相似對(duì)象的集合稱為類,在數(shù)據(jù)庫(kù)中表現(xiàn)為面向?qū)ο髷?shù)據(jù)庫(kù)模式的集合,它規(guī)定了該類的對(duì)象的數(shù)據(jù)結(jié)構(gòu)規(guī)則和操作規(guī)則。在面向?qū)ο髷?shù)據(jù)庫(kù)中,一個(gè)類相當(dāng)于關(guān)系數(shù)據(jù)庫(kù)中的一張表。它同樣有字段和屬性,甚至還有關(guān)系數(shù)據(jù)庫(kù)表所沒(méi)有的方法。這種思路將使得可以在面向?qū)ο髷?shù)據(jù)庫(kù)中實(shí)現(xiàn)復(fù)雜的邏輯。

類層次表現(xiàn)在繼承上,即父類和子類的層級(jí)關(guān)系。這是為了多態(tài)和數(shù)據(jù)共享的目的。這種思路可以象Java中那樣使用接口和基類來(lái)完成設(shè)計(jì)。

1.4繼承

就像類層次中所說(shuō)的,繼承是為了多態(tài)和數(shù)據(jù)共享的目的,也是面向?qū)ο蟠a重用的重要機(jī)制之一。

I.5滯后聯(lián)編

即實(shí)現(xiàn)了重載的效果,OODBMS不能在編譯時(shí)把操作名聯(lián)編到程序上,必須在運(yùn)行時(shí)根據(jù)需要進(jìn)行抉擇。

1.6對(duì)象的嵌套

是一種設(shè)計(jì)模式-組合。將多個(gè)類的對(duì)象加人到一個(gè)類的屬性中,使之實(shí)現(xiàn)復(fù)雜的功能。

2面向?qū)ο髷?shù)據(jù)庫(kù)語(yǔ)言

ool}B語(yǔ)言用于描述面向?qū)ο髷?shù)據(jù)庫(kù)模式,說(shuō)明并操作類定義和對(duì)象實(shí)例。ooDB語(yǔ)言主要包括對(duì)象定義語(yǔ)言(ODL)和對(duì)象操作語(yǔ)言(OML),其中對(duì)象操作語(yǔ)言又包括一個(gè)重要子集-對(duì)象查詢語(yǔ)言(OQL)t3)。OODB語(yǔ)言一般應(yīng)該具備下列功能。

2.1類的定義與操作

包括定義、生成、存取、修改和撤銷(xiāo)類。其中類的定義包括定義類的屬性,操作特征、繼承性與約束等。

2.2操作/方法的定義

面向?qū)ο髷?shù)據(jù)庫(kù)語(yǔ)言可以用來(lái)定義操作/方法,在操作實(shí)現(xiàn)中,語(yǔ)言的命令可用于操作對(duì)象局部數(shù)據(jù)結(jié)構(gòu)。

2.3對(duì)象的查詢

OODB語(yǔ)言可以用于操作(包括生成、存取、修改與刪除)實(shí)例對(duì)象。對(duì)于對(duì)象的存取-查詢部分,OODB語(yǔ)言可以直接查詢對(duì)象個(gè)公有成員而不必向每一個(gè)對(duì)象“-單”發(fā)送消息。而對(duì)于非公有成員,則只能通過(guò)發(fā)送消息來(lái)實(shí)現(xiàn)存取、修改與刪除了。通過(guò)發(fā)送消息的查詢效率可能會(huì)很低,因此對(duì)于一些經(jīng)常要查詢的數(shù)據(jù)應(yīng)該盡量定義為公有類型。

3面向?qū)ο髷?shù)據(jù)庫(kù)模式

3.1模式的一致性

(1)唯一性約束:即同一模式中所有類的名字必須唯一、類中屬性名和方法名必須唯一。

(2)存在性約束:每個(gè)被引用的類必須在模式中定義、某操作代碼中調(diào)用的操作不需給出說(shuō)明、每一個(gè)說(shuō)明的操作必須存在一個(gè)現(xiàn)實(shí)程序。

(3)子類型約束:子類和父類(或超類)不能有環(huán)、不能有多繼承(向Java學(xué)習(xí))、單一超類必須加以說(shuō)明。

3.2模式演進(jìn)操作

主要包括以下幾個(gè)部分:

(功類集的改變

(2)已有類的成分的改變

(3)子類/超類聯(lián)系的改變

面向?qū)ο髷?shù)據(jù)庫(kù)將有可能成為以后數(shù)據(jù)庫(kù)發(fā)展的方向。我國(guó)目前在操作系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)方面是嚴(yán)重的依賴于他國(guó)的,沒(méi)有自己成功的作品(包括商業(yè)上的成功),特別是在面向?qū)ο髷?shù)據(jù)庫(kù)領(lǐng)域幾乎是一個(gè)空白。因此,我們有機(jī)會(huì)填補(bǔ)這個(gè)空白。

主站蜘蛛池模板: 亚洲色偷偷av男人的天堂| 国产欧美在线一区二区三区| 中字幕视频在线永久在线| 最新国产在线拍揄自揄视频| 亚洲精品在线免费看| 精品欧美一区二区三区在线| 国产午夜精品理论片| 骚包在线精品国产美女| 在线天堂bt种子| yw在线观看成人免费| 撅起小屁股扒开调教bl| 久久国产精品女| 欧美一区二区三区久久综合| 亚洲精品免费观看| 真实国产乱子伦对白视频| 四虎在线成人免费网站| 野花香高清在线观看视频播放免费 | 黑人巨鞭大战中国妇女| 国产精品国产三级国产在线观看 | 人妻少妇被猛烈进入中文字幕 | 男人把女人桶到爽| 午夜影院a级片| 色www视频永久免费男的天堂| 国产另类ts人妖一区二区| 欧美一级久久久久久久大片| 国产精品手机在线亚洲| 91精品国产免费久久久久久青草| 女欢女爱第一季| 一本大道久久a久久精品综合| 精品视频在线看| 国产乱理伦片在线观看| 黑粗硬大欧美在线视频试看| 国产福利免费视频| 天堂久久久久久中文字幕| 国产精成人品日日拍夜夜免费| aaaa级少妇高潮大片在线观看| 好吊妞视频988在线播放| 一级做a爰片性色毛片男| 成人欧美一区二区三区视频| 中文字幕视频一区| 无码人妻熟妇av又粗又大|