【正文】
交 ? 交操作也是一個(gè)二元操作。其作用是將兩個(gè)關(guān)系組合成一個(gè)新的關(guān)系。最常用的關(guān)系操作有: ? ? 并 插入 ? 交 更新 ? 差 刪除 ? 笛卡爾積 選擇 ? 除 連接 ? 投影 專門的關(guān)系操作 傳統(tǒng)集合的關(guān)系操作 47 關(guān)系數(shù)據(jù)模型 (操作 ) ? 舉例用例 (5張二維表 ): SNAME GRADE 錢欣 75 張進(jìn)元 62 張華 68 胡平平 79 周亮 80 SNAME GRADE 王寧 100 錢欣 75 顧永華 90 黃進(jìn) 82 胡平平 79 周亮 80 SC1:6080分成績表 SC2:70100分成績表 S N O C N O G R A D E A 0 4 1 C C 1 1 2 92 A 0 4 1 M E 2 3 4 9 2 . 5 A 0 4 1 M S 2 1 1 90 C 0 0 5 C C 1 1 2 8 4 . 5 C 0 0 5 C S 2 0 2 82 M 0 3 8 M E 2 3 4 85 R 0 9 8 C S 2 0 2 75 R 0 9 8 M S 2 1 1 7 0 . 5 S N O S N A M E D E P A R T S E X B D A T E H E I G H T A 0 4 1 周光明 自動控制 男 1 9 8 6 8 10 1 . 7 C 0 0 5 張雷 計(jì)算機(jī) 男 1 9 8 7 6 30 1 . 7 5 C 0 0 8 王寧 計(jì)算機(jī) 女 1 9 8 6 8 20 1 . 6 2 M 0 3 8 李霞霞 應(yīng)用數(shù)學(xué) 女 1 9 8 8 10 20 1 . 6 5 R 0 9 8 錢欣 管理工程 男 1 9 8 6 5 16 1 . 8 C N O C N A M E L H OU R S E M E S T E R C C 1 1 2 軟件工程 60 春 C S 2 0 2 數(shù)據(jù)庫 45 秋 E E 1 0 3 控制工程 60 春 M E 2 3 4 數(shù)學(xué)分析 40 秋 M S 2 1 1 人工智能 60 秋 學(xué)生登記表(S )學(xué)生選課成績表(S C )課程開設(shè)表(C )48 關(guān)系數(shù)據(jù)模型 (傳統(tǒng)集合的關(guān)系操作 ) ? 并 ? 并操作是一個(gè)二元操作。 ? 以上所述的約束可以用來保證數(shù)據(jù)庫中數(shù)據(jù)的正確性,稱其為關(guān)系模型的 完整性約束 。 ? 數(shù)據(jù)的語義不但會限制屬性的值,例如:小學(xué)、中學(xué)和大學(xué)都有規(guī)定的最低入學(xué)年齡的限制;一個(gè)企業(yè)倉庫管理中的庫存量不能為負(fù)值等。 ? 但在一般表述中,人們常常將關(guān)系模式和關(guān)系都稱為關(guān)系,實(shí)際上對此二者應(yīng)加以科學(xué)的區(qū)分。因而不應(yīng)將關(guān)系數(shù)據(jù)模型和關(guān)系模式相混淆, ? ( 正象不應(yīng)把高級語言和用高級語言編寫的程序模塊混為一談一樣,應(yīng)注意它們在概念上的差異 ) 43 關(guān)系數(shù)據(jù)模型 (結(jié)構(gòu) ) (續(xù) ) ? 特別提示 Ⅲ : ? 關(guān)系模式 :反映了二維表的靜態(tài)結(jié)構(gòu),是相對穩(wěn)定的。 ? 數(shù)據(jù)模型 :用一組概念和定義描述數(shù)據(jù)的手段, ? 數(shù)據(jù)模式 :用某種數(shù)據(jù)模型對具體情況下相關(guān)數(shù)據(jù) ? 結(jié)構(gòu)的描述。 (按集合的性質(zhì) ) ? ⑤ 行中列的順序可以任意交換。在關(guān)系數(shù)據(jù)模型中,對每個(gè)關(guān)系還作了如下限制: ? ①每一個(gè)列對應(yīng)一個(gè)域,列名不能相同 .。對二維表的操作結(jié)果也是二維表。 關(guān)系數(shù)據(jù)模型 (結(jié)構(gòu) ) (續(xù) ) 學(xué)生選課成績表( SC ) S NO CNO G R A D E A 041 CC 1 12 92 A 041 M E 234 92. 5 A 041 M E 21 1 9 0 C 005 C C 1 12 8 4. 5 C 005 C S 202 82 M 038 M E 234 85 R 098 C S 202 7 5 R 098 M S 21 1 ? ? ? 學(xué)生登記表( S ) S N O S N A M E D E P A R T S E X B D A T E H E I G H T C 005 張 雷 計(jì)算機(jī) 男 1987 06 30 1. 7 5 C 008 王 寧 計(jì)算機(jī) 女 198 6 08 20 1. 62 A 041 周光明 自動控制 男 198 6 08 10 1. 70 M 038 李霞霞 應(yīng)用數(shù)學(xué) 女 198 8 10 20 1. 65 R 098 錢 欣 管理工程 男 198 6 05 16 1 . 80 ?? ?? ?? ?? ?? ?? DB 文件 文件 文件 40 關(guān)系數(shù)據(jù)模型 (結(jié)構(gòu) ) (續(xù) ) ? 關(guān)系數(shù)據(jù)模型是 1970年由(美) 的。在支持關(guān)系模型的數(shù)據(jù)庫物理組織 (即存儲結(jié)構(gòu) )中,二維表以文件形式存儲。因?qū)W生可能有重名,因而姓名不能作為候選鍵;但若學(xué)生的出生年月不同,則也可用屬性組(姓名,出生年月)作為候選鍵,必須再從這兩個(gè)候選鍵中選其一(如學(xué)號)作為學(xué)生登記表的主鍵。 或者 : R =( A1,A2,…Ai…,An ) R( A1,A2,…Ai…,An ) 33 關(guān)系數(shù)據(jù)模型 (結(jié)構(gòu) ) (續(xù) ) ? . 上述數(shù)據(jù)對象( S和 C)以及數(shù)據(jù)對象之間的聯(lián)系( SC) 表示成關(guān)系模式分別為: S ( SNO, SNAME, DEPART, SEX, BDATE, HEIGHT) C ( CNO, CNAME, LHOUR, SEMESTER) SC( SNO, CNO, GRADE) 34 關(guān)系數(shù)據(jù)模型 (結(jié)構(gòu) ) (續(xù) ) ? 這 3個(gè)關(guān)系模式也可以用漢字定義為 : 學(xué)生 ( 學(xué)號 ,姓名,系別,性別,出生日期,身高) 課程 ( 課程號 ,課程名,學(xué)時(shí),開課時(shí)間) 選課成績 ( 學(xué)號,課程號 ,成績) 35 關(guān)系數(shù)據(jù)模型 (結(jié)構(gòu) ) (續(xù) ) ? 關(guān)系模式 主鍵 DB 課程開設(shè)表( C) CNO C N A ME L H O U R S E ME S T E R CC 1 12 軟件工程 60 春 CS 202 數(shù)據(jù)庫 45 秋 EE 103 控制工程 60 春 ME 2 34 數(shù)學(xué)分析 40 秋 MS 21 1 人工智能 60 秋 ?? ?? ?? ?? 學(xué)生登記表( S ) S N O S N A M E D E P A R T S E X B D A T E H E I G H T C 005 張 雷 計(jì)算機(jī) 男 19 87 06 30 1. 7 5 C 008 王 寧 計(jì)算機(jī) 女 198 6 08 20 1. 62 A 041 周光明 自動控制 男 198 6 08 10 1. 70 M 038 李霞霞 應(yīng)用數(shù)學(xué) 女 198 8 10 20 1. 65 R 098 錢 欣 管理工程 男 198 6 05 16 1 . 80 ?? ?? ?? ?? ?? ?? 如何從 DB的一個(gè)二維表中 找到我們所了解的內(nèi)容 ? 例如 : ① 查詢學(xué) 生周光明的情 況 。 例如 , 例表 ( S) : ? 學(xué)生登記表( S ) S N O S N A M E D E P A R T S E X B D A T E H E I G H T C 005 張 雷 計(jì)算機(jī) 男 1987 06 30 1. 7 5 C 008 王 寧 計(jì)算機(jī) 女 198 6 08 20 1. 62 A 041 周光明 自動控制 男 198 6 08 10 1. 70 M 038 李霞霞 應(yīng)用數(shù)學(xué) 女 198 8 10 20 1. 65 R 098 錢 欣 管理工程 男 198 6 05 16 1 . 80 ?? ?? ?? ?? ?? ?? 27 關(guān)系模型的數(shù)據(jù)結(jié)構(gòu) (續(xù) ) 例表 2 .課程開設(shè)表 (C): 課程開設(shè)表( C ) CNO C N A ME L H O U R S E ME S T E R CC 1 12 軟件工程 60 春 CS 202 數(shù)據(jù)庫 45 秋 EE 103 控制工程 60 春 ME 2 34 數(shù)學(xué)分析 40 秋 MS 21 1 人工智能 60 秋 ?? ?? ?? ?? 28 關(guān)系模型的數(shù)據(jù)結(jié)構(gòu) (續(xù) ) ? 例表 3. 學(xué)生選課成績表 (SC): 學(xué)生選課成績表( SC ) S NO CNO G R A D E A 041 CC 1 12 92 A 041 M E 234 92. 5 A 041 M E 21 1 9 0 C 005 C C 1 12 8 4. 5 C 005 C S 202 82 M 038 M E 234 85 R 098 C S 202 7 5 R 098 M S 21 1 ? ? ? 29 關(guān)系數(shù)據(jù)模型 (結(jié)構(gòu) ) (續(xù) ) ? 學(xué)生登記表 (S),課程開設(shè)表 (C)與學(xué)生選課成績表之間的聯(lián)系 : S N O C N O G R A D E A 0 4 1 C C 1 1 2 92 A 0 4 1 M E 2 3 4 9 2 . 5 A 0 4 1 M S 2 1 1 90 C 0 0 5 C C 1 1 2 8 4 . 5 C 0 0 5 C S 2 0 2 82 M 0 3 8 M E 2 3 4 85 R 0 9 8 C S 2 0 2 75 R 0 9 8 M S 2 1 1 7 0 . 5 S N O S N A M E D E P A R T S E X B D A T E H E I G H T A 041 周光明 自動控制 男 1986 8 10 1. 7 C 005 張雷 計(jì)算機(jī) 男 1987 6 30 1. 75 C 008 王寧 計(jì)算機(jī) 女 1986 8 20 1. 62 M 038 李霞霞 應(yīng)用數(shù)學(xué) 女 1988 10 20 1. 65 R 098 錢欣 管理工程 男 1986 5 16 1. 8 C N O C N A M E L H O U R S E M E S T E R C C 1 12 軟件工程 60 春 C S 202 數(shù)據(jù)庫 45 秋 E E 103 控制工程 60 春 M E 234 數(shù)學(xué)分析 40 秋 M S 21 1 人工智能 60 秋 學(xué)生登記表(S)學(xué)生選課成績表(SC)課程開設(shè)表(C)30 關(guān)系數(shù)據(jù)模型 (結(jié)構(gòu) ) (續(xù)