第三章
域是值的集合,域中數(shù)據(jù)個數(shù)叫做域的基數(shù)。
R(D1,D2,…Dn)的含義是:當(dāng)且僅當(dāng)R是D1×D2×…×Dn的一個子集,則稱R是D1×D2×…×Dn上的一個關(guān)系。其中,R是關(guān)系名,n是關(guān)系的度,Di是第i個域名。在關(guān)系的定義中,n度的關(guān)系,必有n個域。
一個關(guān)系就是一張二維表,表中的每一行對應(yīng)關(guān)系中的一個元組,它對應(yīng)于信息世界中的實體和計算機世界中的記錄,表中的每一列就是關(guān)系中的一個域。也稱為屬性,對應(yīng)于計算機世界中的字段。
關(guān)系與文件有許多相似之處,把關(guān)系看成文件時,則元組就是文件中的記錄,屬性就是記錄中的數(shù)據(jù)項(字段)。
不允許“表中套表”,即表中元組分量必須是原子的。
二維表中的各列取自同一個域,因此一列中的各個分量具有相同性質(zhì)。
列的次序、行的次序可以任意交換,不改變關(guān)系的實際意義。
表中的行叫元組,代表一個實體,因此表中不允許出現(xiàn)相同的兩行。
判斷兩個關(guān)系是否相等,與屬性的次序無關(guān),與元組的次序無關(guān),與關(guān)系的命名無關(guān)。
關(guān)系模式是指用關(guān)系數(shù)據(jù)描述語言描述后的關(guān)系,必須逐個對關(guān)系模型中的關(guān)系進行描述才能生成數(shù)據(jù)庫概念模式。對關(guān)系的描述實為定義關(guān)系模式。關(guān)系數(shù)據(jù)描述語言實質(zhì)是定義關(guān)系框架的,包括對域和關(guān)系進行描述
常用的關(guān)系數(shù)據(jù)描述語言(DDL)有問答式和語言描述式,常用的FoxPro屬于問答式DBMS.
語言描述式有專門描述語言定義關(guān)系模式,包括關(guān)系名、組成該關(guān)系的各個域名、數(shù)據(jù)類型、長度和取值范圍
域描述語句:DOMAIN<域名>PIC IS<類型(長度)>[RANGE IS<數(shù)1>THRU<數(shù)2>],通過DOMAIN定義域名、PIC定義數(shù)據(jù)類型和長度,RANGE定義取值范圍。
關(guān)系描述語句:RELATION<關(guān)系名>(<域名1,域名2,…>)KEY=(<域名i,域名j,…>)
關(guān)系模式的三類完整性規(guī)則是:實體完整性約束規(guī)則、引用完整性約束規(guī)則、用戶定義的完整性約束規(guī)則。
實體完整性約束是指關(guān)系中的“主鍵”不允許取空值。引用完整性約束規(guī)則是限制引用不存在的記錄。
在關(guān)系的各種*作中,關(guān)系查詢是核心,所以關(guān)系數(shù)據(jù)*縱語言DML語言,常被稱為查詢語言。
DML特點:*作對象與結(jié)果都是關(guān)系,非過程性強,語言一體化,有嚴密的數(shù)學(xué)工具。
關(guān)系數(shù)據(jù)*作的最大特點是:以關(guān)系為處理單位,處理后的結(jié)果是關(guān)系。
關(guān)系DML查詢,根據(jù)表達查詢方式的不同,可分為兩類:用關(guān)系代數(shù)運算表達查詢和用關(guān)系演算公式表達查詢。關(guān)系數(shù)據(jù)*作語言相應(yīng)分為兩種不同類型:關(guān)系代數(shù)型和關(guān)系演算型。
所謂單目運算就是對一個關(guān)系施加的運算,所謂雙目運算就是對兩個關(guān)系施加的運算。選擇、投影是單目運算,連接、關(guān)系笛卡兒積是雙目運算。
集合運算符:∪并、∩交、-差、×迪卡爾積,關(guān)系運算符:π投影、σ選擇、|×|連接
比較運算符:>、≥、<、≤、=、≠,邏輯運算符:-非、∧與、∨或
并、交、差用于關(guān)系運算,要求參加運算的兩個關(guān)系是相容的,即兩個關(guān)系度數(shù)相同,相應(yīng)屬性取自同一個域。
并:由屬于R或?qū)儆赟或同時屬于R和S的元組構(gòu)成的集合,記為R∪S.
差:由屬于R而不屬于S的所有元組組成的集合,記為R-S.
相關(guān)推薦:2010年7月自考成績查詢時間及查詢方式匯總