關系模型與關系數據庫
1.關系模型
關系模型是一種新的數據模型。它建立在集合論和謂詞演算公式的基礎上。它提供的邏輯結構簡單,數據獨立性強,存取具有對稱性、操縱靈活。
在數據庫中的數據結構如果依照關系模型定義,就是關系數據庫系統(tǒng)。關系數據庫系統(tǒng)由許多不同的關系構成,其中每個關系就是一個實體,可以用一張二維表表示。
關系二維表中的術語解釋如下:
關系(Relation):一張二維表對應一個關系。
屬性(Attribute):表中每一列叫做一個屬性,屬性有名和值的區(qū)別。
元組(Topl):由屬性值組成的每一行叫做一個元組。
框架(rramework):由屬性名組成的表頭稱為框架(關系型)。
分量:表中的每一個屬性值。
域(Domain):每個屬性的取值范圍。
候選碼(Candidate Key):可以惟一確定的一個元組的屬性或屬性組(可簡稱碼)。
主碼(Primary Key):一個關系中往往會有多個候選碼,可以指定一個為主碼。
主屬性(Primary Attribute):可以作為候選碼的屬性也叫主屬性。
非主屬性(Non-key Attribute):不能作為候選碼的屬性叫做非主屬性。
關系模式:對關系的描述稱為關系模式,常常記做:
關系名(屬性1,屬性2,屬性3,……,屬性n)
在關系模型中,不但實體用關系表示,而且實體之間的聯(lián)系也用關系來表示。
關系模型要求關系必須是規(guī)范化的,即要求每個關系必須滿足一定的條件,其中最基本的一條就是,關系中每個分量必須是不可再分的基本項。
作為一個關系模型的基本約束條件,起碼必須具備以下幾條:
表格中每一數據項不可再分,是基本項。
每一列數據有相同的類型,叫做屬性。各列都有惟一的屬性名和不同的屬性值,列數可根據需要而設定。
每列的順序是任意的。
每一行數據是一個實體諸多屬性值的集合,叫做元組。一個表格中不允許有完全相同的行出現。
各行順序可以是任意的。
2.關系操作
關系數據模型的理論基礎是集合論,每一個關系就是一個笛卡爾積的子集。
。1) 傳統(tǒng)集合運算。傳統(tǒng)集合運算有并、交、差三種。
(2) 專門的關系運算。專門的關系運算主要有選擇(篩選)、投影和連接三種。選擇運算是對關系表中元組(行) 的操作,操作結果是找出滿足條件的元組。其中,
投影運算是對關系表中屬性(列) 的操作,操作結果是找出關系中指定屬性全部值的子集。
選擇運算和投影運算可以同時用一條命令來實現。
連接運算是對兩個關系的運算,操作結果是找出滿足連接條件的所有元組,并且拼接成一個新的關系。完善的關系數據庫管理系統(tǒng)總是以數據操縱語言及結構化查詢語言(SQL) ,來實現各種關系運算。
責編:Lisa