




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rè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ù)。
?這個(gè)二維表在關(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)系運(yùn)算:并、交、差、廣義笛卡爾乘積;
?特地的關(guān)系運(yùn)算:選擇、投影、連接、除;
?有關(guān)的數(shù)據(jù)操作:查詢、插入、刪除、更改。
操作特點(diǎn)
?關(guān)系模型中操作的數(shù)據(jù)以及查詢的結(jié)果都是完整的集合(或表),
?這些集合可以只包含一行數(shù)據(jù),也可以是不包含任何數(shù)據(jù)的空集合。
?非關(guān)系模型數(shù)據(jù)庫中典型的操作是一次一行或一次一個(gè)紀(jì)錄。
?集合處理力量是關(guān)系系統(tǒng)區(qū)分于其他系統(tǒng)的重要特征。
關(guān)系模型與非關(guān)系模型區(qū)分
?在非關(guān)系模型中,各個(gè)數(shù)據(jù)紀(jì)錄之間是通過指針等方式連接的,當(dāng)要定位到某條紀(jì)錄時(shí),需要用戶自
己按指針的鏈接方向逐層查找一一導(dǎo)航。
?在關(guān)系模型中,用戶只需指定數(shù)據(jù)的定位條件,數(shù)據(jù)庫管理系統(tǒng)就可以自動(dòng)定位到該數(shù)據(jù)紀(jì)錄一一非
導(dǎo)航。
關(guān)系操作
關(guān)系模型的數(shù)據(jù)操作主要包括:
查詢、插入、刪除、更改
關(guān)系數(shù)據(jù)庫中的信息表示方式:表中的行列位置有明確的值——規(guī)律層。
關(guān)系數(shù)據(jù)庫的物理層
關(guān)系數(shù)據(jù)庫在物理層也使用指針,但這些物理層的存儲(chǔ)細(xì)節(jié)對(duì)用戶來說都是不行見的,用戶所看到
的物理層實(shí)際上就是存放數(shù)據(jù)的數(shù)據(jù)庫文件:?文件名
?存放位置
?關(guān)系語言特點(diǎn)
關(guān)系操作是通過關(guān)系語言實(shí)現(xiàn)的,關(guān)系語言的特點(diǎn)是高度非過程化:
用戶不必關(guān)懷數(shù)據(jù)的存取路徑和存取過程,只需要提出數(shù)據(jù)懇求,DBMS會(huì)自動(dòng)完成用戶懇求的操作;
用戶沒有必要編寫程序代碼來實(shí)現(xiàn)對(duì)數(shù)據(jù)的重復(fù)操作。
3.1.3數(shù)據(jù)完整性約束
數(shù)據(jù)的完整性是指保證數(shù)據(jù)正確性的特征。
數(shù)據(jù)完整性是一種語義概念,包括:
?與現(xiàn)實(shí)世界中應(yīng)用需求的數(shù)據(jù)的相容性和正確性;
?數(shù)據(jù)庫內(nèi)數(shù)據(jù)之間的相容性和正確性。
數(shù)據(jù)完整性
數(shù)據(jù)完整性由一組完整性規(guī)章定義,關(guān)系模型的完整性規(guī)章是對(duì)關(guān)系的某種約束條件。
在關(guān)系數(shù)據(jù)模型中將數(shù)據(jù)完整性分為三類:?實(shí)體完整性
?參照完整性(引用完整性)
?用戶定義的完整性
3.2關(guān)系模型的基本術(shù)語與形式化定義
3.2.1基本術(shù)語
?關(guān)系:關(guān)系就是二維表,二維表的名字就是關(guān)系的名字。
?屬性:二維表中的每個(gè)列就稱為一個(gè)屬性(或叫字段),
每個(gè)屬性有一個(gè)名字一一屬性名
某一列的值一一屬性值
列的個(gè)數(shù)一一關(guān)系的元數(shù).假如一個(gè)二維表有n個(gè)列,則稱其為n元關(guān)系。
?值域:二維表中屬性的取值范圍稱為值域。
例如:
“年齡”的取值為大于0的整數(shù)
“性別”列的取值為{男,女}
?元組:二維表中的一行數(shù)據(jù)稱為一個(gè)元組(紀(jì)錄值).
?重量:元組中的每一個(gè)屬性值稱為元組的一個(gè)重量。
n元關(guān)系的每個(gè)元組有n個(gè)重量。
例:(0811101,李勇,21,男,計(jì)算機(jī)系),有5個(gè)重量
?關(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ù)類型的一個(gè)詳細(xì)值。
?關(guān)系數(shù)據(jù)庫:對(duì)應(yīng)于一個(gè)關(guān)系模型的全部關(guān)系的集合稱為關(guān)系數(shù)據(jù)庫。
?候選鍵:假如一個(gè)屬性或?qū)傩约闹的軌蛭┮粯?biāo)識(shí)一個(gè)關(guān)系的元組而又不包含多余的屬性,則稱該屬性或
屬性集為候選鍵。
?主鍵:當(dāng)一個(gè)關(guān)系中有多個(gè)候選鍵時(shí),從中選擇一個(gè)作為主鍵。
每個(gè)關(guān)系只能有一個(gè)主鍵。
主鍵也稱為主碼或主關(guān)鍵字,用于惟一地確定一個(gè)元組。
主鍵可以由一個(gè)屬性組成,也可以由多個(gè)屬性共同組成。
?主屬性:包含在任一候選鍵中的屬性稱為主屬性。
?非主屬性:不包含在任一候選鍵中的屬性稱為非主屬性。
術(shù)語對(duì)比
關(guān)系術(shù)語一般的表格術(shù)語
關(guān)系名表名
關(guān)系模式表頭(表所合列的描述)
關(guān)系(一張)二維表
元組記錄或行
屬性列
分量一條記錄中某個(gè)列的值
3.2.2形式化定義
定義笛卡爾積:設(shè)DI,D2,…,Dn為任意集合,定義笛卡爾積DI,D2,…,Dn為:
DIXD2X…XDn={(dl,d2,…,dn)|diSDi,i=l,2,—,n}
其中每一個(gè)元素(dl,d2,…,dn)稱為一個(gè)n元組,簡稱元組。
元組中每一個(gè)di稱為是一個(gè)重量。
笛卡爾積示例
Dl={計(jì)算機(jī)系,信息管理系}
D2={李勇,劉晨,吳賓}
D3={男,女}
則DIXD2XD3笛卡爾積為:
{(計(jì)算機(jī)系,李勇,男),(計(jì)算機(jī)系,李勇,女),
(計(jì)算機(jī)系,劉晨,男),(計(jì)算機(jī)系,劉晨,女),
(計(jì)算機(jī)系,吳賓,男),(計(jì)算機(jī)系,吳賓,女),
(信息管理系,李勇,男),(信息管理系,李勇,女),
(信息管理系,劉晨,男),(信息管理系,劉晨,女),
(信息管理系,吳賓,男),(信息管理系,吳賓,女)}
笛卡爾乘積實(shí)際就是二維表
D1D2D3
計(jì)算機(jī)系李勇男
計(jì)算機(jī)系李勇女
計(jì)算機(jī)系劉晨男
D2計(jì)算機(jī)系劉晨女
李勇
計(jì)算機(jī)系'是賓男
計(jì)算機(jī)系劉晨男
XX
賓=計(jì)算機(jī)系吳賓女
信息管理系工女
信息管理系介方男
信息管理系李力女
信息管理系列心男
信息管理系劉晨女
信息管理系小W男
信息管理系吳賓女
關(guān)系的形式化定義
笛卡爾積DI,D2,Dn的任意一個(gè)子集稱為DI,D2,…,Dn上的一個(gè)n元關(guān)系。
形式化的關(guān)系定義同樣可以把關(guān)系看成二維表,給表中的每個(gè)列取一個(gè)名字,稱為屬性。
n元關(guān)系有n個(gè)屬性,一個(gè)關(guān)系中的屬性的名字必需是唯一的。
屬性Di的取值范圍(i=l,2,n)稱為該屬性的值域。
對(duì)關(guān)系的限定
?關(guān)系中的每個(gè)重量都是不行再分的最小屬性
?表中列的數(shù)據(jù)類型是固定的,即列中的每個(gè)重量都是同類型的數(shù)據(jù),來自相同的值域。
-不同列的數(shù)據(jù)可以取自相同的值域。
?關(guān)系表中列的挨次不重要。
?關(guān)系表行的挨次也不重要。
?同一個(gè)關(guān)系中的元組不能重復(fù)。
3.3關(guān)系代數(shù)
?關(guān)系代數(shù)是關(guān)系操作語言的一種傳統(tǒng)表示方式,是一種抽象的查詢語言。
?是一種純理論語言,它定義了一些操作,運(yùn)用這些操作可以從一個(gè)或多個(gè)關(guān)系中得到另一個(gè)關(guān)系,而
不轉(zhuǎn)變?cè)搓P(guān)系。
關(guān)系代數(shù)的操作數(shù)和操作結(jié)果都是關(guān)系,而且一個(gè)操作的輸出可以是另一個(gè)操作的輸入。
關(guān)系代數(shù)的運(yùn)算
?關(guān)系代數(shù)的運(yùn)算對(duì)象是關(guān)系,運(yùn)算結(jié)果也是關(guān)系。
?與一般的運(yùn)算一樣,運(yùn)算對(duì)象、運(yùn)算符和運(yùn)算結(jié)果是關(guān)系代數(shù)的三大要素。
關(guān)系代數(shù)的運(yùn)算可分為以下兩大類:
?傳統(tǒng)的集合運(yùn)算:并、交、差、笛卡爾積
?特地的關(guān)系運(yùn)算:選擇、投影、連接、除
運(yùn)算符
運(yùn)算符含義運(yùn)算符含義
>大于
U二
<小于
交
n=等于
傳統(tǒng)的集合運(yùn)算比較運(yùn)算符
-差不等于
小于等于
X廣義值卡爾積W
大于等于
n選掾
1
專門的關(guān)系運(yùn)算a投影
邏輯運(yùn)算符A與
連接V或
3.3.1傳統(tǒng)的集合運(yùn)算
,并運(yùn)算(Union)
,交運(yùn)算(Intersection)
,差運(yùn)算(Except)
,廣義笛卡爾積(CartesianProduct)
并、交、差運(yùn)算示意圖
(c)R-S
?并運(yùn)算
并(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)系中的挨次不重要。
?交運(yù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的元組組成。
?差運(yùn)算
差(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)
?廣義笛卡爾積
兩個(gè)分別為n目和m目的關(guān)系R和關(guān)系S的笛卡爾積是一個(gè)(m+n)列的元組的集合。元組的前n個(gè)
列是R的一個(gè)元組,后m個(gè)列是S的一個(gè)元組。
若R有K1個(gè)元組,S有K2個(gè)元組,則關(guān)系R和關(guān)系S的廣義笛卡爾積有K1XK2個(gè)元組,
記做:RXS={trAts|trGRAtseS)
trAts表示由元組tr和ts前后有序連接而成的一個(gè)元組。
任取元組tr和ts,當(dāng)且僅當(dāng)tr屬于R且ts屬于S時(shí),tr和ts的有序連接即為RXS的一個(gè)元組。
3.3.2特地的關(guān)系運(yùn)算
,選擇運(yùn)算(Select)
?投影運(yùn)算(Project)
?連接運(yùn)算(Join)
,除運(yùn)算(Division)
?選擇運(yùn)算
從指定的關(guān)系中選擇滿意給定條件(用規(guī)律表達(dá)式表達(dá))的元組而組成一個(gè)新的關(guān)系。
oF(R)={r|rGRAF(r)='真'}
選擇運(yùn)算示意圖
例題設(shè)有:個(gè)己知關(guān)系如卜:
例題:v^
個(gè)己知關(guān)
系如
b[2]-Sv(3]9(1)
?連接運(yùn)算
連接運(yùn)算用來連接相互之間有聯(lián)系的兩個(gè)關(guān)系,從而產(chǎn)生一個(gè)新的關(guān)系。
連接運(yùn)算具有如下幾種形式:
?。連接
?等值連接(0連接的特例)
?自然連接
?外部連接(或稱外連接)
?半連接
A
RX]S={t,ts|t,eRAtssSAtr[A]0ts[B]}
?9連接A0B
A、B是關(guān)系R和S上語義相同的屬性或?qū)傩越M,。是比較運(yùn)算符。
連接運(yùn)算從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]
例題:
四
個(gè)
己
知
關(guān)
系
如
右
:
原始數(shù)據(jù)等值連接與自然連接示例
商im
商品號(hào)育品名進(jìn)貨價(jià)格商品X笛傳點(diǎn)品名透黃馀格幅值日?銷低價(jià)格
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
的售盒品號(hào)倒售日期?售除格
a與號(hào)進(jìn)黃價(jià)格<8隹價(jià)格
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é)果中,則可以通過外連接實(shí)現(xiàn)。
外連接有三種:
?左外連接:R*XS
?右外連接:Rx*s
?全外連接:R*x*$
外連接含義
?左(右)外連接:把連接符號(hào)左(右)邊的關(guān)系中不滿意連接條件的元組也保留到連接后的結(jié)果
中,并在連接結(jié)果中將該元組所對(duì)應(yīng)的右(左)邊關(guān)系的各個(gè)屬性均置成空值(NULL)。
?全外連接:把連接符號(hào)兩邊的關(guān)系中不滿意連接條件的元組均保留到連接后的結(jié)果中,并在連接
結(jié)果中將不滿意連接條件的各元組的相關(guān)屬性均置成空值(NULL)。
左外連接示例
商品*X]銷售
全外連接示例
BCEBD
商品號(hào)商品名進(jìn)賁價(jià)格銷售日期銷售價(jià)格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
?半連接
在兩個(gè)關(guān)系之間執(zhí)行連接操作,并將其結(jié)果投影在第一個(gè)操作關(guān)系的全部屬性上。
半連接的一個(gè)優(yōu)點(diǎn)是可以削減必需參加連接的元組的數(shù)目。
半連接操作的表達(dá)形式為:
上述半連接是一個(gè)半。連接,其他還有半等值連接、半自然連接等。
Example:RMS=RM(SKR)
除運(yùn)算
?設(shè)關(guān)系S的屬性是關(guān)系R的屬性的一部分,則R+S為這樣一個(gè)關(guān)系:
?此關(guān)系的屬性是由屬于R但不屬于S的全部屬性組成;
?R+S的任一元組都是R中某元組的一部分。但必需符合下列要求,即任取屬于R+S的一個(gè)元組t,則
t與S的任一元組連接后,都為R中原有的一個(gè)元組。
除運(yùn)算示意圖
除運(yùn)算的一般形式
設(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計(jì)算機(jī)系
0811102劉晨男20計(jì)算機(jī)系
0811103王敏女20計(jì)算機(jī)系
0811104張小紅女19計(jì)算機(jī)系
0821101張立男20信息管理系
0821102吳賓女19信息管理系有元組:(0821101,張立,男,20,信息
0821103張海男20信息管理系管理系)
設(shè)*={Sdept,Ssex},Y={Sno,Sname,Sage},
t[X]的一個(gè)值:x=(信息管理系,男)
則Yx為t[X[=x=(信息管理系,男)時(shí)全部t[Y]的值:
Yx={(0821101,張立,20),(0821103,張海,20)}
象集示例2
設(shè)X={Sno},Y={Cno,Grade},則當(dāng)X取“0811101”
SnoCnoGrade
時(shí),
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等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 房屋買賣補(bǔ)充協(xié)議書參考二零二五年
- 2025年四方合作協(xié)議合同范本
- 2025年一氧化二氮項(xiàng)目合作計(jì)劃書
- 代辦檢測合同樣本
- 人教版《中學(xué)美術(shù)八年級(jí)上冊(cè)》教案說課稿
- 剪剪撕撕畫畫貼貼教學(xué)設(shè)及反思
- 公司分賬合同樣本
- led屏保修合同標(biāo)準(zhǔn)文本
- 工程掛靠承諾書正式版
- 一年級(jí)下冊(cè)數(shù)學(xué)教案-7.4-解決實(shí)際問題復(fù)習(xí)丨蘇教版
- 醫(yī)療機(jī)構(gòu)抗菌藥物臨床應(yīng)用分級(jí)管理目錄(2024年版)
- 降低留置針靜脈炎發(fā)生率持續(xù)質(zhì)量改進(jìn)課件
- 《 大學(xué)生軍事理論教程》全套教學(xué)課件
- 中考數(shù)學(xué)計(jì)算題練習(xí)100道(2024年中考真題)
- 公路工程施工現(xiàn)場安全檢查手冊(cè)
- 夢想(英語演講稿)PPT幻燈片課件(PPT 12頁)
- 中國聯(lián)通員工績效管理實(shí)施計(jì)劃方案
- 法院刑事審判庭速裁庭廉政風(fēng)險(xiǎn)防控責(zé)任清單
- IEC60335-1(中文)
- 土方填筑碾壓試驗(yàn)報(bào)告
- 排沙泵檢修工藝流程及驗(yàn)收標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論