2.2 《数据库系统概论》之关系操作、关系完整性、关系代数
文章目錄
- 0.思維導(dǎo)圖
- 1.關(guān)系操作
- (1)基本關(guān)系操作
- (2)關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言的分類
- 2.關(guān)系的完整性
- (1)關(guān)系的三類完整性約束
- (2) 實(shí)體完整性(Entity Integrity)
- (3)參照完整性
- ? 關(guān)系間的引用
- ? 外碼(Foreign Key)
- ? 參照完整性規(guī)則
- (4)用戶定義的完整性
- 3.關(guān)系代數(shù)
- (1)關(guān)系代數(shù)運(yùn)算符
- (2)傳統(tǒng)的集合運(yùn)算
- ① 并(Union)
- ② 差(Difference)
- ③ 交(Intersection)
- ④ 笛卡爾積(Cartesian Product)
- (3)專門的關(guān)系運(yùn)算
- ① 幾個(gè)記號(hào)
- ② 選擇(Selection)
- ③ 投影(Projection)
- ④ 連接(Join)
- ? 左連接、右連接、外連接
- ⑤ 除(Division)
- ⑥ 綜合舉例
0.思維導(dǎo)圖
1.關(guān)系操作
(1)基本關(guān)系操作
- 常用的關(guān)系操作
- 查詢:選擇、投影、連接、除、并、交、差
- 數(shù)據(jù)更新:插入、刪除、修改
- 查詢的表達(dá)能力是其中最主要的部分
- 選擇、投影、并、差、笛卡爾基是5種基本操作
- 關(guān)系操作的特點(diǎn)
- 集合操作方式:操作的對(duì)象和結(jié)果都是集合,一次一集合的方式
(2)關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言的分類
- 關(guān)系代數(shù)語(yǔ)言
用對(duì)關(guān)系的運(yùn)算來(lái)表達(dá)查詢要求;
代表:ISBL;
關(guān)系演算語(yǔ)言:用謂詞來(lái)表達(dá)查詢要求; - 元組關(guān)系演算語(yǔ)言
謂詞變?cè)幕緦?duì)象是元組變量;
代表:APLHA, QUEL; - 域關(guān)系演算語(yǔ)言
謂詞變?cè)幕緦?duì)象是域變量;
代表:QBE; - 具有關(guān)系代數(shù)和關(guān)系演算雙重特點(diǎn)的語(yǔ)言;
代表:SQL(Structured Query Language) ;
2.關(guān)系的完整性
(1)關(guān)系的三類完整性約束
- 實(shí)體完整性和參照完整性:
關(guān)系模型必須滿足的完整性約束條件;
稱為關(guān)系的兩個(gè)不變性,應(yīng)該由關(guān)系系統(tǒng)自動(dòng)支持; - 用戶定義的完整性:
應(yīng)用領(lǐng)域需要遵循的約束條件,體現(xiàn)了具體領(lǐng)域中的語(yǔ)義約束 ;
(2) 實(shí)體完整性(Entity Integrity)
-
若屬性A是基本關(guān)系R的主屬性,則屬性A不能取空值
-
例:
SAP(SUPERVISOR,SPECIALITY,POSTGRADUATE)
POSTGRADUATE:
主碼(假設(shè)研究生不會(huì)重名)
不能取空值 -
實(shí)體完整性規(guī)則的說(shuō)明
(1) 實(shí)體完整性規(guī)則是針對(duì)基本關(guān)系而言的。一個(gè)基本表通常對(duì)應(yīng)現(xiàn) 實(shí)世界的一個(gè)實(shí)體集。
(2) 現(xiàn)實(shí)世界中的實(shí)體是可區(qū)分的,即它們具有某種唯一性標(biāo)識(shí)。
(3) 關(guān)系模型中以主碼作為唯一性標(biāo)識(shí)。
(4) 主碼中的屬性即主屬性不能取空值。主屬性取空值,就說(shuō)明存在某個(gè)不可標(biāo)識(shí)的實(shí)體,即存在不可區(qū)分的實(shí)體,這與第(2)點(diǎn)相矛盾,因此這個(gè)規(guī)則稱為實(shí)體完整性
(3)參照完整性
? 關(guān)系間的引用
? 外碼(Foreign Key)
- 設(shè)F是基本關(guān)系R的一個(gè)或一組屬性,但不是關(guān)系R的碼。如果F與基本關(guān)系S的主碼Ks相對(duì)應(yīng),則稱F是基本關(guān)系R的外碼,即該碼是另一個(gè)表的主碼。
- 基本關(guān)系R稱為參照關(guān)系(Referencing Relation),即本表。
- 基本關(guān)系S稱為被參照關(guān)系(Referenced Relation) 或目標(biāo)關(guān)系(Target Relation),即外碼對(duì)應(yīng)的主碼所在的表。
- 關(guān)系R和S不一定是不同的關(guān)系
- 目標(biāo)關(guān)系S的主碼Ks 和參照關(guān)系的外碼F必須定義在同一個(gè)(或一組)域上
- 外碼并不一定要與相應(yīng)的主碼同名,當(dāng)外碼與相應(yīng)的主碼屬于不同關(guān)系時(shí),往往取相同的名 字,以便于識(shí)別
? 參照完整性規(guī)則
若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼它與基本關(guān)系S的主碼Ks相對(duì)應(yīng)(基本關(guān)系R和S不一定是不同的關(guān)系),則對(duì)于R中每個(gè)元組在F上的值必須為:
- 或者取空值(F的每個(gè)屬性值均為空值)
- 或者等于S中某個(gè)元組的主碼值
- 外碼的值要么為空,要么為S中某個(gè)元組的主碼值
(4)用戶定義的完整性
- 針對(duì)某一具體關(guān)系數(shù)據(jù)庫(kù)的約束條件,反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語(yǔ)義要求
- 關(guān)系模型應(yīng)提供定義和檢驗(yàn)這類完整性的機(jī)制,以便用統(tǒng)一的系統(tǒng)的方法處理它們,而不要由應(yīng)用程序承擔(dān)這一功能
3.關(guān)系代數(shù)
(1)關(guān)系代數(shù)運(yùn)算符
(2)傳統(tǒng)的集合運(yùn)算
① 并(Union)
② 差(Difference)
③ 交(Intersection)
④ 笛卡爾積(Cartesian Product)
(3)專門的關(guān)系運(yùn)算
① 幾個(gè)記號(hào)
② 選擇(Selection)
③ 投影(Projection)
④ 連接(Join)
? 左連接、右連接、外連接
⑤ 除(Division)
⑥ 綜合舉例
總結(jié)
以上是生活随笔為你收集整理的2.2 《数据库系统概论》之关系操作、关系完整性、关系代数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2.1 《数据库系统概论》关系数据结构及
- 下一篇: 2.3.6 操作系统之进程同步与互斥经典