層次知識點:基本概念
在傳統(tǒng)的關(guān)系數(shù)據(jù)模型基礎(chǔ)上,提供元組、數(shù)組、集合一類更為豐富的數(shù)據(jù)類型以及處理新的數(shù)據(jù)類型操作的能力, 這樣形成的數(shù)據(jù)模型稱為“對象關(guān)系數(shù)據(jù)模型”,基于對象關(guān)系數(shù)據(jù)模型的DBS稱為對象關(guān)系數(shù)據(jù)庫系統(tǒng)(ORDBS)。
子表和超表的基本含義。
子表和超表應(yīng)滿足下列兩個一致性要求:
超表中每個元組最多可以與每個子表中的一個元組對應(yīng)。
子表中每個元組在超表中恰有一個元組對應(yīng),并在繼承的屬性上有相同的值。
8.2.1 ORDB的定義語言
(1)數(shù)據(jù)類型的定義傳統(tǒng)的關(guān)系模型中屬性只能是基本數(shù)據(jù)類型,而在對象關(guān)系模型中,屬性可以是復(fù)合類型。
復(fù)合類型有下列四種形式:結(jié)構(gòu)、數(shù)組、多集、集合;數(shù)據(jù)類型可以嵌套
(2)繼承性的定義類型級繼承性:當(dāng)繼承性發(fā)生在類型級時,子類型繼承了超類型的屬性,即超類型所具有的屬性,在子類上也具有。
表級繼承性:繼承性也可發(fā)生在表級,(就是元組集合上發(fā)生繼承),子表繼承超表全部屬性,超表中每個元組最多可以與子表中一個元組對應(yīng),而子表中的每個元組在超表中恰有一個元組對應(yīng),并在繼承的屬性值上具有相同的值。
(3)引用類型的定義數(shù)據(jù)類型可以嵌套定義,在嵌套引用時,不是引用對象本身,而是引用對象標(biāo)識符(即指針)。
8.2.2 ORDB的查詢語言
(結(jié)合例子理解一下書上的3條使用方式)
(1)當(dāng)屬性值為單值或結(jié)構(gòu)值時,引用方式仍和傳統(tǒng)的關(guān)系模型一樣,在層次之間加圓點“?!保?/p>
e.g. SELECT uname,president.fname
FROM university
WHERE city="Hangzhou"
(2)當(dāng)路徑中某個屬性值為集合時,就不能連著寫下去;
(3)聚集操作(MAX、COUNT等)可應(yīng)用于任何集合值表達(dá)式。