數據庫學習之路 二

關係數據庫

**1. 關係數據模型源於數學。

  • 用二維表來組織數據,這個二維表在關係數據庫中就稱爲關係。
  • 關係數據庫就是表或者說是關係的集合。
  • 關係系統要求讓用戶所感覺的數據庫就是一張張表。
  • 在關係系統中,表是邏輯結構而不是物理結構。**

傳統的關係運算

  • 並(Union)
  • 交(Intersection)
  • 差(Difference)
  • 廣義笛卡爾乘積(Extended Cartesian Product)

專門的關係運算

  • 選擇(Select)
  • 投影(Project)
  • 連接(Join)
  • 除(Divide)

主要包括:查詢、插入、刪除和修改數據。
是基於集合的操作,操作對象和操作結果都是集合(或關係)。
是非過程化的。

數據完整性是指數據庫中存儲的數據是有意義的或正確的。
主要包括三大類:

  • 實體完整性
  • 參照完整性
  • 用戶定義的完整性

關係 :關係就是二維表。並滿足如下性質:
關係表中的每一列都是不可再分的基本屬性;
表中的行、列次序並不重要。

屬性 :表中的每一列是一個屬性值集,列可以命名,稱爲屬性名。
值域:屬性的取值範圍 。如,性別只能是‘男’和‘女’兩個值。

元組:表中的每一行稱作是一個元組,它相當於一個記錄值。
分量:元組中的每一個屬性值稱爲元組的一個分量,n元關係的每個元組有n個分量。
關係模式:關係模式是關係的“型”或元組的結構共性的描述。關係模式實際上對應關係表的表頭。設關係名爲R,屬性分別爲A1,A2,…,An,則關係模式可以表示爲:
R(A1,A2,…,An)

  • 關係數據庫:對應於一個關係模型的所有關係的集合稱爲關係數據庫。
  • 候選碼:能夠惟一標識關係中的一個元組的一個屬性或最小屬性組。
  • 主碼:指定候選碼中的一個作爲主碼。
  • 主屬性:包含在任一候選碼中的屬性稱爲是主屬性。
  • 非主屬性:不包含在任一候選碼中的屬性稱爲是非主屬性。
  • 外碼:如果某個屬性不一定是所在關係的碼,但是其他關係的碼,則稱該屬性爲外碼。

實體完整性是保證關係中的每個元組都是可識別的和惟一的。

  • 而且表中不允許存在如下的記錄: 無主碼值的記錄 主碼值相同的記錄用於描述實體之間的聯繫。
    參照完整性一般是指多個實體(表)之間的關聯關係。
    一般用外碼實現。
    外碼:取作本表(子表)屬性之一的外表(父表,主表)主碼。
    主碼值先在主表中生成,後在子表中引用

    在這裏插入圖片描述
    在這裏插入圖片描述

例子

查詢修c02號課程的學生的學號和成績。
∏sno, grade(σcno=‘c02’(SC))
查詢計算機系修c02號課程的學生的姓名和成績。
∏sname, grade(σcno=‘c02’(SC) >< σsdept=‘計算機系’(Student))
查詢修了第2學期課程的學生的姓名和所在系。
∏sname, sdept(σsemester=2(Course) ><SC (Student)
查詢修了全部課程的學生的學號和姓名。
∏sno, sname(Student ><(SC ÷ ∏cno(Course)))

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章