




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第3章關(guān)系數(shù)據(jù)模型
3.1關(guān)系數(shù)據(jù)模型和關(guān)系數(shù)據(jù)庫
關(guān)系模型由三部分組成:
?數(shù)據(jù)結(jié)構(gòu)
,操作集合
?完整性約束
這三部分也稱為關(guān)系模型三要素。
3.1.1數(shù)據(jù)結(jié)構(gòu)
?關(guān)系數(shù)據(jù)模型用二維表來組織數(shù)據(jù)。
?這個二維表在關(guān)系數(shù)據(jù)庫中就稱為關(guān)系。
?關(guān)系數(shù)據(jù)庫就是表或者說是關(guān)系的集合。
-表是規(guī)律結(jié)構(gòu)而不是物理結(jié)構(gòu)。
3.1.2數(shù)據(jù)操作
關(guān)系數(shù)據(jù)模型中的操作包括:
?傳統(tǒng)的關(guān)系運算:并、交、差、廣義笛卡爾乘積;
?特地的關(guān)系運算:選擇、投影、連接、除;
?有關(guān)的數(shù)據(jù)操作:查詢、插入、刪除、更改。
操作特點
?關(guān)系模型中操作的數(shù)據(jù)以及查詢的結(jié)果都是完整的集合(或表),
?這些集合可以只包含一行數(shù)據(jù),也可以是不包含任何數(shù)據(jù)的空集合。
?非關(guān)系模型數(shù)據(jù)庫中典型的操作是一次一行或一次一個紀錄。
?集合處理力量是關(guān)系系統(tǒng)區(qū)分于其他系統(tǒng)的重要特征。
關(guān)系模型與非關(guān)系模型區(qū)分
?在非關(guān)系模型中,各個數(shù)據(jù)紀錄之間是通過指針等方式連接的,當要定位到某條紀錄時,需要用戶自
己按指針的鏈接方向逐層查找一一導(dǎo)航。
?在關(guān)系模型中,用戶只需指定數(shù)據(jù)的定位條件,數(shù)據(jù)庫管理系統(tǒng)就可以自動定位到該數(shù)據(jù)紀錄一一非
導(dǎo)航。
關(guān)系操作
關(guān)系模型的數(shù)據(jù)操作主要包括:
查詢、插入、刪除、更改
關(guān)系數(shù)據(jù)庫中的信息表示方式:表中的行列位置有明確的值——規(guī)律層。
關(guān)系數(shù)據(jù)庫的物理層
關(guān)系數(shù)據(jù)庫在物理層也使用指針,但這些物理層的存儲細節(jié)對用戶來說都是不行見的,用戶所看到
的物理層實際上就是存放數(shù)據(jù)的數(shù)據(jù)庫文件:?文件名
?存放位置
?關(guān)系語言特點
關(guān)系操作是通過關(guān)系語言實現(xiàn)的,關(guān)系語言的特點是高度非過程化:
用戶不必關(guān)懷數(shù)據(jù)的存取路徑和存取過程,只需要提出數(shù)據(jù)懇求,DBMS會自動完成用戶懇求的操作;
用戶沒有必要編寫程序代碼來實現(xiàn)對數(shù)據(jù)的重復(fù)操作。
3.1.3數(shù)據(jù)完整性約束
數(shù)據(jù)的完整性是指保證數(shù)據(jù)正確性的特征。
數(shù)據(jù)完整性是一種語義概念,包括:
?與現(xiàn)實世界中應(yīng)用需求的數(shù)據(jù)的相容性和正確性;
?數(shù)據(jù)庫內(nèi)數(shù)據(jù)之間的相容性和正確性。
數(shù)據(jù)完整性
數(shù)據(jù)完整性由一組完整性規(guī)章定義,關(guān)系模型的完整性規(guī)章是對關(guān)系的某種約束條件。
在關(guān)系數(shù)據(jù)模型中將數(shù)據(jù)完整性分為三類:?實體完整性
?參照完整性(引用完整性)
?用戶定義的完整性
3.2關(guān)系模型的基本術(shù)語與形式化定義
3.2.1基本術(shù)語
?關(guān)系:關(guān)系就是二維表,二維表的名字就是關(guān)系的名字。
?屬性:二維表中的每個列就稱為一個屬性(或叫字段),
每個屬性有一個名字一一屬性名
某一列的值一一屬性值
列的個數(shù)一一關(guān)系的元數(shù).假如一個二維表有n個列,則稱其為n元關(guān)系。
?值域:二維表中屬性的取值范圍稱為值域。
例如:
“年齡”的取值為大于0的整數(shù)
“性別”列的取值為{男,女}
?元組:二維表中的一行數(shù)據(jù)稱為一個元組(紀錄值).
?重量:元組中的每一個屬性值稱為元組的一個重量。
n元關(guān)系的每個元組有n個重量。
例:(0811101,李勇,21,男,計算機系),有5個重量
?關(guān)系模式:二維表的結(jié)構(gòu)稱為關(guān)系模式。
設(shè)有關(guān)系名為R,屬性分別為Al,A2,An,則關(guān)系模式可以表示為:R(Al,A2,An)
假如將關(guān)系模式理解為數(shù)據(jù)類型,則關(guān)系就是該數(shù)據(jù)類型的一個詳細值。
?關(guān)系數(shù)據(jù)庫:對應(yīng)于一個關(guān)系模型的全部關(guān)系的集合稱為關(guān)系數(shù)據(jù)庫。
?候選鍵:假如一個屬性或?qū)傩约闹的軌蛭┮粯俗R一個關(guān)系的元組而又不包含多余的屬性,則稱該屬性或
屬性集為候選鍵。
?主鍵:當一個關(guān)系中有多個候選鍵時,從中選擇一個作為主鍵。
每個關(guān)系只能有一個主鍵。
主鍵也稱為主碼或主關(guān)鍵字,用于惟一地確定一個元組。
主鍵可以由一個屬性組成,也可以由多個屬性共同組成。
?主屬性:包含在任一候選鍵中的屬性稱為主屬性。
?非主屬性:不包含在任一候選鍵中的屬性稱為非主屬性。
術(shù)語對比
關(guān)系術(shù)語一般的表格術(shù)語
關(guān)系名表名
關(guān)系模式表頭(表所合列的描述)
關(guān)系(一張)二維表
元組記錄或行
屬性列
分量一條記錄中某個列的值
3.2.2形式化定義
定義笛卡爾積:設(shè)DI,D2,…,Dn為任意集合,定義笛卡爾積DI,D2,…,Dn為:
DIXD2X…XDn={(dl,d2,…,dn)|diSDi,i=l,2,—,n}
其中每一個元素(dl,d2,…,dn)稱為一個n元組,簡稱元組。
元組中每一個di稱為是一個重量。
笛卡爾積示例
Dl={計算機系,信息管理系}
D2={李勇,劉晨,吳賓}
D3={男,女}
則DIXD2XD3笛卡爾積為:
{(計算機系,李勇,男),(計算機系,李勇,女),
(計算機系,劉晨,男),(計算機系,劉晨,女),
(計算機系,吳賓,男),(計算機系,吳賓,女),
(信息管理系,李勇,男),(信息管理系,李勇,女),
(信息管理系,劉晨,男),(信息管理系,劉晨,女),
(信息管理系,吳賓,男),(信息管理系,吳賓,女)}
笛卡爾乘積實際就是二維表
D1D2D3
計算機系李勇男
計算機系李勇女
計算機系劉晨男
D2計算機系劉晨女
李勇
計算機系'是賓男
計算機系劉晨男
XX
賓=計算機系吳賓女
信息管理系工女
信息管理系介方男
信息管理系李力女
信息管理系列心男
信息管理系劉晨女
信息管理系小W男
信息管理系吳賓女
關(guān)系的形式化定義
笛卡爾積DI,D2,Dn的任意一個子集稱為DI,D2,…,Dn上的一個n元關(guān)系。
形式化的關(guān)系定義同樣可以把關(guān)系看成二維表,給表中的每個列取一個名字,稱為屬性。
n元關(guān)系有n個屬性,一個關(guān)系中的屬性的名字必需是唯一的。
屬性Di的取值范圍(i=l,2,n)稱為該屬性的值域。
對關(guān)系的限定
?關(guān)系中的每個重量都是不行再分的最小屬性
?表中列的數(shù)據(jù)類型是固定的,即列中的每個重量都是同類型的數(shù)據(jù),來自相同的值域。
-不同列的數(shù)據(jù)可以取自相同的值域。
?關(guān)系表中列的挨次不重要。
?關(guān)系表行的挨次也不重要。
?同一個關(guān)系中的元組不能重復(fù)。
3.3關(guān)系代數(shù)
?關(guān)系代數(shù)是關(guān)系操作語言的一種傳統(tǒng)表示方式,是一種抽象的查詢語言。
?是一種純理論語言,它定義了一些操作,運用這些操作可以從一個或多個關(guān)系中得到另一個關(guān)系,而
不轉(zhuǎn)變源關(guān)系。
關(guān)系代數(shù)的操作數(shù)和操作結(jié)果都是關(guān)系,而且一個操作的輸出可以是另一個操作的輸入。
關(guān)系代數(shù)的運算
?關(guān)系代數(shù)的運算對象是關(guān)系,運算結(jié)果也是關(guān)系。
?與一般的運算一樣,運算對象、運算符和運算結(jié)果是關(guān)系代數(shù)的三大要素。
關(guān)系代數(shù)的運算可分為以下兩大類:
?傳統(tǒng)的集合運算:并、交、差、笛卡爾積
?特地的關(guān)系運算:選擇、投影、連接、除
運算符
運算符含義運算符含義
>大于
U二
<小于
交
n=等于
傳統(tǒng)的集合運算比較運算符
-差不等于
小于等于
X廣義值卡爾積W
大于等于
n選掾
1
專門的關(guān)系運算a投影
邏輯運算符A與
連接V或
3.3.1傳統(tǒng)的集合運算
,并運算(Union)
,交運算(Intersection)
,差運算(Except)
,廣義笛卡爾積(CartesianProduct)
并、交、差運算示意圖
(c)R-S
?并運算
并(RUS):設(shè)關(guān)系R與關(guān)系S均是n目關(guān)系,關(guān)系R與關(guān)系S的并記為:RUS={t|tGRVtGS}
其結(jié)果仍是n目關(guān)系,由屬于R或?qū)儆赟的元組組成。
元組在新關(guān)系中的挨次不重要。
?交運算
交(RCS):設(shè)關(guān)系R與關(guān)系S均是n目關(guān)系,關(guān)系R與關(guān)系S的交記為:RAS={t|t£RAt6S)
其結(jié)果仍是n目關(guān)系,由屬于R并且也屬于S的元組組成。
?差運算
差(R—S):設(shè)關(guān)系R與關(guān)系S均是n目關(guān)系,關(guān)系R與關(guān)系s的差記為:R-s={t|teRAtes}
其結(jié)果仍是n目關(guān)系,由屬于R但不屬于S的元組組成。
RAS=R-(R-S)
?廣義笛卡爾積
兩個分別為n目和m目的關(guān)系R和關(guān)系S的笛卡爾積是一個(m+n)列的元組的集合。元組的前n個
列是R的一個元組,后m個列是S的一個元組。
若R有K1個元組,S有K2個元組,則關(guān)系R和關(guān)系S的廣義笛卡爾積有K1XK2個元組,
記做:RXS={trAts|trGRAtseS)
trAts表示由元組tr和ts前后有序連接而成的一個元組。
任取元組tr和ts,當且僅當tr屬于R且ts屬于S時,tr和ts的有序連接即為RXS的一個元組。
3.3.2特地的關(guān)系運算
,選擇運算(Select)
?投影運算(Project)
?連接運算(Join)
,除運算(Division)
?選擇運算
從指定的關(guān)系中選擇滿意給定條件(用規(guī)律表達式表達)的元組而組成一個新的關(guān)系。
oF(R)={r|rGRAF(r)='真'}
選擇運算示意圖
例題設(shè)有:個己知關(guān)系如卜:
例題:v^
個己知關(guān)
系如
b[2]-Sv(3]9(1)
?連接運算
連接運算用來連接相互之間有聯(lián)系的兩個關(guān)系,從而產(chǎn)生一個新的關(guān)系。
連接運算具有如下幾種形式:
?。連接
?等值連接(0連接的特例)
?自然連接
?外部連接(或稱外連接)
?半連接
A
RX]S={t,ts|t,eRAtssSAtr[A]0ts[B]}
?9連接A0B
A、B是關(guān)系R和S上語義相同的屬性或?qū)傩越M,。是比較運算符。
連接運算從R和S的廣義笛卡爾積中選擇R關(guān)系在A屬性組上的值與S關(guān)系在B屬性組上的值滿意
0的元組。
?等值連接
0為“=”的連接成為等值連接。它是從關(guān)系R與S的笛卡爾積中選取A,B屬性值相等的那些元組:
RXS=(tAt|tGRAteSAt[A]=t[B]}
A=Brsrsrs
?自然連接
是一種特別的等值連接,它去掉了等值連接結(jié)果中的重復(fù)的屬性列。
即若R與S具有相同的屬性組B,則自然連接可記作:
足8s=三RAtx.wA]=%[A[}
S'=S
<s-=-1A]
例題:
四
個
己
知
關(guān)
系
如
右
:
原始數(shù)據(jù)等值連接與自然連接示例
商im
商品號育品名進貨價格商品X笛傳點品名透黃馀格幅值日?銷低價格
P0134平面電視P0133平皿電攻2400P0120W.2.32200
2400商簡住.府M:;
K)l川平BB電視:400FOJ20W4-I02800
液晶電視
P023s4800POI34平面電雙2400P012009-2-1$2130
P0352液晶電視9600P0:3J液■電雙4S00P0:5600
Kl3s液a電現(xiàn)4S00F0220W-245500
的售盒品號倒售日期?售除格
a與號進黃價格<8隹價格
P012009-2-32200商品銷售
X]P013s平3E電視24002009-2-32200
P022009-2-35600
P0134平面電視24002009-8-102800
P0120094402800P0!34平BB電次2400:009-2-152150
P022009-2-85500P0234液■電視48002009.2.35600
P012009-2-152150P0234液a電視48002009-2-85500
半連數(shù)據(jù)
?外連接
假如盼望不滿意連接條件的元組也消失在連接結(jié)果中,則可以通過外連接實現(xiàn)。
外連接有三種:
?左外連接:R*XS
?右外連接:Rx*s
?全外連接:R*x*$
外連接含義
?左(右)外連接:把連接符號左(右)邊的關(guān)系中不滿意連接條件的元組也保留到連接后的結(jié)果
中,并在連接結(jié)果中將該元組所對應(yīng)的右(左)邊關(guān)系的各個屬性均置成空值(NULL)。
?全外連接:把連接符號兩邊的關(guān)系中不滿意連接條件的元組均保留到連接后的結(jié)果中,并在連接
結(jié)果中將不滿意連接條件的各元組的相關(guān)屬性均置成空值(NULL)。
左外連接示例
商品*X]銷售
全外連接示例
BCEBD
商品號商品名進賁價格銷售日期銷售價格bl
alcl*X*eibldl
a2b2cie2b3dl
P0134平面電視24002009-2-32200a3blc2ie3bld2
a4t>3cle4b4dl
a5b2cle5b3dl
P0134平面電視24002009-8-102800ABcED
alblcleldl
P0134平面電視24002009-2452150alblcle3d2
a2b2clNULLNULL
34液晶電視a3blc2eldl
P0248002009-2-35600a3blc2e3d2
a4b3cle2dl
P0234液晶電視48002009-2-85500a4b3cle5dl
a5b2clNULLNULL
P0352液晶電視9600NULLNULLNULLb4MULLe4dl
?半連接
在兩個關(guān)系之間執(zhí)行連接操作,并將其結(jié)果投影在第一個操作關(guān)系的全部屬性上。
半連接的一個優(yōu)點是可以削減必需參加連接的元組的數(shù)目。
半連接操作的表達形式為:
上述半連接是一個半。連接,其他還有半等值連接、半自然連接等。
Example:RMS=RM(SKR)
除運算
?設(shè)關(guān)系S的屬性是關(guān)系R的屬性的一部分,則R+S為這樣一個關(guān)系:
?此關(guān)系的屬性是由屬于R但不屬于S的全部屬性組成;
?R+S的任一元組都是R中某元組的一部分。但必需符合下列要求,即任取屬于R+S的一個元組t,則
t與S的任一元組連接后,都為R中原有的一個元組。
除運算示意圖
除運算的一般形式
設(shè)有關(guān)系R(X,Y)和S(YZ),其中X、Y、Z為關(guān)系的屬性組,則:R(X,Y)4-S(Y,Z)=R(X,Y)+TlY(S)
象集定義
?設(shè)有關(guān)系R(X,Y),其中X,Y為屬性(組),X=x在R上的象集是:Yx={t[Y]|teRAt[X]=x}
-t[Y]和t[X]分別表示R中的元組t在屬性組Y和X上的重量的集合。
象集示例1
SnoSnameSsexSageSdept
0811101李勇男21計算機系
0811102劉晨男20計算機系
0811103王敏女20計算機系
0811104張小紅女19計算機系
0821101張立男20信息管理系
0821102吳賓女19信息管理系有元組:(0821101,張立,男,20,信息
0821103張海男20信息管理系管理系)
設(shè)*={Sdept,Ssex},Y={Sno,Sname,Sage},
t[X]的一個值:x=(信息管理系,男)
則Yx為t[X[=x=(信息管理系,男)時全部t[Y]的值:
Yx={(0821101,張立,20),(0821103,張海,20)}
象集示例2
設(shè)X={Sno},Y={Cno,Grade},則當X取“0811101”
SnoCnoGrade
時,
0811101C00196
0811101C00280Y的象集為:
0811101C00384Yx={(C001,96),
0811101C00562
(C002,80),
0811102C00192
0811102C00290(C003,84),
<)811102€00484
(C005,62)}
0821102C00176
0821102C00485
0821102C00573
0821102C007NULL
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年丙型肝炎抗原檢測試劑盒項目合作計劃書
- 未來賽車概念車試駕活動行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報告
- 非機構(gòu)債券投資企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略研究報告
- 咖啡飲料批發(fā)企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報告
- 物流設(shè)備企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報告
- 樂器百貨企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- 羽絨加工企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報告
- 硫酸鉀鎂肥企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- 安徽省滁州市2025屆高三第一次教學質(zhì)量監(jiān)測數(shù)學試題【含答案解析】
- 折疊水杯企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- GA/T 701-2024安全防范指紋識別應(yīng)用出入口控制指紋識別模塊通用規(guī)范
- 4.1 人要有自信 (課件)2024-2025學年七年級道德與法治下冊(統(tǒng)編版2024)
- 加強學校鑄牢中華民族共同體意識教育心得
- 16.3 二次根式的加減 - 人教版數(shù)學八年級下冊教學課件
- 馬尼拉草皮施工方案
- 人工智能融入土木水利碩士人才培養(yǎng)模式研究
- 人工智能賦能新質(zhì)生產(chǎn)力發(fā)展:現(xiàn)狀解析與未來展望
- 2024版非ST段抬高型急性冠脈綜合征診斷和治療指南解讀
- 2021年安徽省中考數(shù)學試卷-普通卷
- 《 大學生軍事理論教程》全套教學課件
- 中考數(shù)學計算題練習100道(2024年中考真題)
評論
0/150
提交評論