資料庫筆記 關係模式

2021-03-31 23:37:43 字數 682 閱讀 1708

關係模式,只涉及到第三正規化,是些很初步的一些東西,希望不會見笑大方 :-)

1nf 是最基本的正規化,沒必要再說什麼;對於乙個已經滿足 1nf 的關係模式,當消除了非主屬性對碼的部分函式依賴後,就屬於 2nf 了;當消除了主屬性對碼的部分和傳遞依賴函式,它就屬於 3nf 了。(因為軟考只關心到第三正規化,我也就到此為止)。

光說理論總讓人感覺很難受,舉個例子的話會更好很多。

下面這個關係隸屬於1nf,因為所有屬性都是簡單屬性。

教學(學號,姓名,年齡,性別,系名,系主任,課程名,成績)-主碼是學號

但是這個關係中有兩個屬性(課程名、成績)不依賴於它的碼(學號),即學號!→課程名,學號!→成績,而應該是(學號,課程名)→成績。所以我們接著分解使之滿足 2nf 。

學生_系(學號,姓名,年齡,性別,系名,系主任)-主碼是學號

選修(學號,課程名,成績)-主碼是學號+課程名

在這個模式中,所以有非主屬性都依賴於主碼,但是,在「學生_系」中,還出現了乙個傳遞依賴關係,學號→系名→系主任,再把這個傳遞依賴消除,所有的關係便滿足 3nf 了。分解如下:

學生(學號,姓名,年齡,性別,系名)-主碼是學號

系(系名,系主任)-主碼是系名

選修(學號,課程名,成績)-主碼是學號+課程名

分解到這裡,現在擁有的三個關係就是可以使用的關係了,因為第三正規化基本上就是滿足使用要求的最低正規化了。

關係 關係模式 關聯式資料庫

表student 在關係模型的術語中,關係用來指代表,而元組用來指代行。類似地,屬性指代的是表中的列。在表student中有五個屬性 sno sname s sage和sdept。我們用關係例項這個術語來表示乙個關係的特定例項,也就是所包含的一組特定的行。表student的例項中有5個元組,對應5個...

資料庫筆記(關聯式資料庫相關)

關聯式資料庫由被稱為關係 relation 的 組成。關係中的每乙個列被稱為屬性 attribution 每一行被稱為一條記錄 record 每乙個儲存了實際資料的關係被稱為關係例項 relation instance 在關係的屬性中,每一條記錄的某個屬性被約束在某個特定的資料型別上,這個型別被稱為...

資料庫學習筆記 關聯式資料庫

關係模型由關係資料結構,關係操作集合,關係完整性約束三部分組成 基數 m 候選碼 某一屬性值能唯一確定乙個元組 全碼 關係模型中所有屬性組都是候選碼 外碼 r的乙個屬性f是s的主碼,稱f為r的外碼 r為參照關係,s為被參照關係 外碼取空值表示尚不存在,不取空值表示是另乙個表的主碼值。分量必須取原子值...