1.關聯式資料庫和關係模式
在關聯式資料庫中,我們用關係來表示實體集和聯絡集,關係通常使用二維表來表示,對應關係名。表的每一列稱為屬性(和er圖中的可以認為是一樣的);每一行可以稱為一條記錄;這裡每個屬性都需要是原子的,這決定了規範的關聯式資料庫中不能有多值屬性和復合屬性。
什麼是關係模式?其實關係模式可以簡記為:
r(a1,a2,…,an) 其中r為關係模式名,a表示屬性名。
乙個關係(我的理解就是乙個實際的資料庫表)就就可以稱為該關係模式的乙個關係值。【型和值的對應,理解】
除了關係的超碼、候選碼和主碼值外,還有一些定義,比如任意候選碼中的屬性就可以稱為是主屬性,而不在任何碼中的屬性即為非主屬性。外碼(外來鍵),即不為本關係的主鍵,但是是其他關係的主鍵,就稱為該關係的外來鍵。
例如:學生表(學號,姓名,性別,班級)
其中每個學生的學號是唯一的,學號就是乙個主鍵
課程表(課程編號,課程名,學分)
其中課程編號是唯一的,課程編號就是乙個主鍵
成績表(學號,課程號,成績)
成績表中單一乙個屬性無法唯一標識一條記錄,學號和課程號的組合才可以唯一標識一條記錄,所以 學號和課程號的屬性組是乙個主鍵
成績表中的學號不是成績表的主鍵,但它和學生表中的學號相對應,並且學生表中的學號是學生表的主鍵,則稱成績表中的學號是學生表的外來鍵
同理 成績表中的課程號是課程表的外來鍵。
2.從er圖到關係模型
實體和聯絡都可以轉換為關係,然而有時屬性需要進行特殊處理,由於關係模型要求屬性的原子性,所以不能出現多值屬性和復合屬性。至於派生屬性,由於不需要進行儲存,處理時直接忽略即可。對復合屬性採用展平技術,即把每個子屬性都當成關係模式的屬性。對於多值屬性,需要為其建立乙個關係rm,該關係的組成遵守如下規則
至於實體和聯絡的具體處理,也會在此詳細說明,每個實體集直接轉為關係,實體集的屬性構成關係的屬性,實體集的碼構成關係的碼,這個可以說是相當簡單了;
每個聯絡集也用乙個關係表示,參與聯絡實體集的主碼和聯絡集的屬性將構成該關係的屬性,而關係的碼需要視聯絡型別而定:
如果是一對一聯絡,那麼聯絡集轉換的關係的主碼可以是任一參與實體集的碼(任一)
如果是一對多聯絡,那麼關係的主碼則是由「多」的那一端組成關係的模式(多端)
如果多對多聯絡,那麼關係的主碼則是由參與聯絡的所有實體集的主碼組成的碼(所有)
下面通過乙個示例來進行更好的理解:
顯然,實體集有商品、商店和職工,直接轉為關係模式即可:
商店(商店標號,點名,店位址,店經理);商品(商品編號,商品名,單價,產地);職工(職工編號,職工名,性別,工資);
聯絡集有sc和se,均為1對多的(選題失敗
關係資料模型
一 資料結構 關係資料模型是有若干個關係模式組成的集合。關係模式的例項成為關係。每個關係可看為乙個二維表,表的行稱為元組,用來標識實體集中的乙個實體 表的列稱為屬性,列名即為屬性名,屬性名不能相同。關係的描述稱為關係模式 relation schema 它可以形式化地表示為 r u,d,dom,f ...
關係資料模型和正規化
一 關係資料模型的特點 1 概念單一 在關係型資料庫中無論是實體還是實體之間的聯絡都使用關係來表示。2 規範化 在關係型資料庫中每乙個關係都要滿足一定的條件要求,這些條件被稱為規範性條件,最基本的是關係中的每乙個屬性都是不可分的資料項。3 二維表 二 術語 1 關係 關係就是乙個二維表 2 元組 表...
資料庫 關係資料模型
關係可以有三種型別 基本型別 基本表或者基表 查詢表和檢視表 基本型別具有以下6條性質 1.列是同質的 homogeneous 即每一列中的分量是同一型別的資料,來自同乙個域 2.不同的列可出自同乙個域,稱其中的每一列為乙個屬性,不同的屬性要給予不同的屬性名。當兩種不同的屬性的值取自同乙個域時,要賦...