oracle8i學習筆記(3)
來源:互聯網
上載者:User
oracle|筆記 oracle8.0是一個對象關聯式資料庫,因為它非純物件導向資料庫也非純關聯式資料庫,代表兩者的組合。
以下理由可以使大家相信物件導向的方法將成為主流
1:物件導向資料庫對使用者當前的關聯式資料庫是向下相容的,因為使用者可以把當前關聯式資料庫和應用移植到oracle8i中而不用重寫。
2:現在的對象資料庫支援sql資料庫標準的特定查詢,企業界過去迅速接受關聯式資料庫的原因之一就是可以建立特別的查詢的能力。現在對象資料庫已經提供給標準sql工具介面了。意味著可以輕鬆地從關聯式資料庫過渡到對象資料庫。
3:物件導向與關係表達的結合在oracle8i中是語義清晰的,比單獨的關係或物件導向的表達更加有力得多。這使設計緊湊有效資料庫更加容易。
4:對象關聯式資料庫是一個能存資料、資料間的關係以及資料的行為(即它與其他資料相互作用的方式)的資料庫。它不只是停留在處理資料這一低級的層次上,而且上升到處理包裹著資料的對象的層次。
以下將學習物件導向的基本概念,不過會偏向於面向資料庫的對象:
對象(object):是現實世界實體的軟體表示,由屬性和操作組成。
類(class):可以把相互間的行為和屬性類似的多個對象歸成類。類即為對象的模板。對象為類包含了血肉的實體。
封裝(encapsulation):指資料繫結與特定的對象中,使它的訪問僅能通過該對象提供或接受的動作來進行(這樣能避免非法的訪問)。封裝意味著資料庫中每個對象都具有清晰的定義良好的介面。
資料觸發器(database trigger):關聯式資料庫具有的一種封裝形式,但是它不具備成為提供封裝功能的工具的能力,因為用過多的資料庫觸發器將降低整個資料庫的效能。
可擴充性(extensibility):是物件導向資料庫增加新對象及其行為而不會影響其他對象和應用的一種能力。
繼承(inheritance):一種代碼共用的形式。子類可以擁有父類的資料和行為。它是建立對象新類作為已有類的特殊化的一種能力。
多態(polymorphism):它是對象對相同訊息做出不同反應的功能。同一對象基於提供的資訊做出不同的反應,並且能理解輸入資訊的上下文。