第二章 關系數(shù)據(jù)庫
學習重點:關系模型的三個組成部分刽锤;關系的三類完整性約束倔丈。
學習難點:參照完整性的約束;
2.1 關系模型概述
關系模型由三個部分組成,分別是:關系數(shù)據(jù)結構呜达、關系操作集合、關系完整性約束粟耻。
2.2 關系數(shù)據(jù)結構
2.2.1 關系
2.2.1.1 域(Domain)
定義:域是一組具有相同數(shù)據(jù)類型的值的集合查近。在關系中用域來表示屬性的取值范圍。
2.2.1.2 笛卡爾積(Cartesian Product)
定義:給定一組域(允許部分或全部相同挤忙。)
笛卡爾積可表示為一個二維表霜威。
2.2.1.3 關系(Relation)
定義:的子集稱為在域上的關系,表示為册烈。
當時戈泼,稱為單元關系,當時稱為二元關系赏僧。
基本關系
實際存在的表大猛,是實際存儲數(shù)據(jù)的邏輯表示。
查詢表
查詢結果對應的表
視圖表
由基本表或其他視圖表到處的表淀零,是虛表挽绩,不對應實際存儲的數(shù)據(jù)。
2.2.1.4 候選碼(Candidate Key)
若關系中某一屬性組的值能唯一的標識一個元組驾中,稱該屬性組為候選碼唉堪。
2.2.1.5 主碼(Primary Key)
若一個關系有多個候選碼,則選定其中的一個為主碼肩民。
2.2.1.6 主屬性(Prime Attribute)
主碼的諸屬性稱為主屬性唠亚。
2.2.1.7 非碼屬性(Non-key Attribute)
不包含在任何候選碼中的屬性稱為非碼屬性。
2.2.1.8 全碼(All-key)
關系模式的所有屬性組是這個關系模式的候選碼持痰,稱為全碼灶搜。
2.2.1.9 外部碼(Foreign Key)
關系R的某一屬性組X不是R的碼,但是是其他某一關系的碼工窍,稱X為R 的外部碼占调。
2.2.2 關系模式
定義:對關系的描述稱為關系模式,記為移剪;
關系模式是型,是靜態(tài)的薪者,穩(wěn)定的纵苛;
關系是關系模式的值,是動態(tài)的、隨時間變化的攻人。
2.2.3 關系數(shù)據(jù)庫
所有實體及實體之間的聯(lián)系的關系的集合構成一個關系數(shù)據(jù)庫取试。
關系數(shù)據(jù)庫模式
關系數(shù)據(jù)庫模式:對關系數(shù)據(jù)庫的描述包括若干域的定義以及在這些域上定義的若干關系模式。
關系數(shù)據(jù)庫
關系數(shù)據(jù)庫:關系模式在某一時刻對應的關系的集合怀吻。通常稱為關系數(shù)據(jù)庫瞬浓。
2.3 關系完整性
2.3.1 實體完整性(Entity Integrity)
規(guī)則:若屬性A是基本關系上的主屬性,則屬性A不能取空值蓬坡。
2.3.2 參照完整性(Referential Integrity)
規(guī)則:若屬性(或屬性組)F是關系R的外碼猿棉,它與基本關系S的主碼相對應(基本關系R和S不一定是不同的關系),對于R中每個元組在F上的取值必須為:
或者取空值(F的每個屬性值均為空值)屑咳;
或者等于S中的某個元組的主碼值萨赁。
2.3.3 用戶定義的完整性(User-defined Integrity)
定義:用戶定義完整性是針對某一具體數(shù)據(jù)的約束條件,反映某一具體應用所涉及的數(shù)據(jù)必須滿足的語義要求兆龙,由應用環(huán)境決定杖爽。