![數(shù)據(jù)庫SQL ServerSQLite教程課件:關(guān)系數(shù)據(jù)模型與關(guān)系運算_第1頁](http://file4.renrendoc.com/view12/M06/0A/07/wKhkGWXDhMiAbKkMAAEasxDdE0o427.jpg)
![數(shù)據(jù)庫SQL ServerSQLite教程課件:關(guān)系數(shù)據(jù)模型與關(guān)系運算_第2頁](http://file4.renrendoc.com/view12/M06/0A/07/wKhkGWXDhMiAbKkMAAEasxDdE0o4272.jpg)
![數(shù)據(jù)庫SQL ServerSQLite教程課件:關(guān)系數(shù)據(jù)模型與關(guān)系運算_第3頁](http://file4.renrendoc.com/view12/M06/0A/07/wKhkGWXDhMiAbKkMAAEasxDdE0o4273.jpg)
![數(shù)據(jù)庫SQL ServerSQLite教程課件:關(guān)系數(shù)據(jù)模型與關(guān)系運算_第4頁](http://file4.renrendoc.com/view12/M06/0A/07/wKhkGWXDhMiAbKkMAAEasxDdE0o4274.jpg)
![數(shù)據(jù)庫SQL ServerSQLite教程課件:關(guān)系數(shù)據(jù)模型與關(guān)系運算_第5頁](http://file4.renrendoc.com/view12/M06/0A/07/wKhkGWXDhMiAbKkMAAEasxDdE0o4275.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
關(guān)系數(shù)據(jù)模型與關(guān)系運算2.1數(shù)據(jù)模型概述2.2關(guān)系數(shù)據(jù)模型2.3關(guān)系運算
2.1數(shù)據(jù)模型概述
2.1.1數(shù)據(jù)模型的定義數(shù)據(jù)模型(DataModel)是對現(xiàn)實世界數(shù)據(jù)特征的抽象,如數(shù)據(jù)的組成、數(shù)據(jù)之間的聯(lián)系等?,F(xiàn)實世界中的實體不僅具有數(shù)據(jù)特征,還具有其他特征,如行為特征等。但對于數(shù)據(jù)模型而言,只關(guān)心實體的數(shù)據(jù)特征。數(shù)據(jù)模型是描述現(xiàn)實世界實體、實體之間的聯(lián)系以及語義約束的模型。
2.1.2數(shù)據(jù)模型的分類
根據(jù)對現(xiàn)實世界數(shù)據(jù)抽象層次的不同,可將數(shù)據(jù)模型分為概念數(shù)據(jù)模型和結(jié)構(gòu)數(shù)據(jù)模型。兩種數(shù)據(jù)模型之間的關(guān)系如圖2-1所示。
概念數(shù)據(jù)模型又稱語義數(shù)據(jù)模型,強調(diào)從用戶的角度來描述現(xiàn)實世界的數(shù)據(jù)特征,著重于對實際數(shù)據(jù)需求的獲取和表達(dá),應(yīng)該簡單、清晰、易于用戶理解。圖2-1概念數(shù)據(jù)模型與結(jié)構(gòu)數(shù)據(jù)模型之間的關(guān)系
結(jié)構(gòu)數(shù)據(jù)模型又稱邏輯數(shù)據(jù)模型,是用戶從數(shù)據(jù)庫看到的模型,強調(diào)從數(shù)據(jù)庫的角度來進(jìn)行數(shù)據(jù)建模,具體表現(xiàn)為網(wǎng)狀數(shù)據(jù)模型、層次數(shù)據(jù)模型等。數(shù)據(jù)庫的邏輯結(jié)構(gòu)包括數(shù)
據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)約束三個要素。結(jié)構(gòu)數(shù)據(jù)模型是DBMS的邏輯基礎(chǔ),任何一個DBMS都是基于某種特定的結(jié)構(gòu)數(shù)據(jù)模型的,既要面向用戶,又要面向系統(tǒng)。
2.1.3E-R模型
在數(shù)據(jù)庫領(lǐng)域已經(jīng)提出了多種概念數(shù)據(jù)模型建模的方法,其中最著名和最流行的是E-R模型。
E-R模型(Entity-RelationshipModel,實體-聯(lián)系模型)是由美國路易斯安那州立大學(xué)的華裔教授PeterP.Chen于1976年提出的。E-R模型提供不受任何DBMS約束的面向用戶
的表達(dá)方法,建模思想簡單,語義表達(dá)能力強,一經(jīng)推出,立即受到了工業(yè)界的歡迎,在數(shù)據(jù)庫設(shè)計中被廣泛用作數(shù)據(jù)建模的工具。E-R模型的核心思想是將現(xiàn)實世界中的所有數(shù)
據(jù)都表示為實體,然后在實體與實體之間建立相應(yīng)的聯(lián)系,并最終通過建立E-R圖來表示所有的數(shù)據(jù)語義。
⒈E-R模型的組成
E-R模型的構(gòu)成要素,首先是實體和聯(lián)系。又因為實體和聯(lián)系都有其相應(yīng)的屬性,所以E-R模型的組成包括三個要素:實體、聯(lián)系和屬性。
1)實體(Entity)
實體是現(xiàn)實世界中可標(biāo)識的對象,可以是物理實體,也可以是抽象實體。實體的一個重要特征是它在現(xiàn)實世界是可以唯一標(biāo)識的,如果不能唯一標(biāo)識,則必須進(jìn)一步分解。此
外,實體具有相應(yīng)的實體名。
2)聯(lián)系(Relationship)
在E-R模型中,聯(lián)系是實體與實體之間的某種關(guān)聯(lián),通過連線表示出來。聯(lián)系也具有相應(yīng)的聯(lián)系名。在E-R模型中,實體之間的聯(lián)系分為三種類型:
(1)一對一聯(lián)系:指一個實體A只能與一個實體B發(fā)生聯(lián)系,反之亦然。它通常表示為1∶1或1-1。
(2)一對多聯(lián)系:指實體A和實體B存在1∶N聯(lián)系,即一個實體A可以與一個或多個實體B發(fā)生聯(lián)系,但一個實體B只能與一個實體A發(fā)生聯(lián)系。它通常表示為1∶N或1-N。
(3)多對多聯(lián)系:指實體A與實體B存在M∶N聯(lián)系,即一個實體A可以與一個或多個實體B發(fā)生聯(lián)系;反之,一個實體B也可以與一個或多個實體A發(fā)生聯(lián)系。它通常表示為M∶N或M-N。
3)屬性(Attribute)
實體內(nèi)部和實體之間的聯(lián)系都可以擁有一些描述自身特征的數(shù)據(jù)項,稱為屬性。實體內(nèi)部通常有多個屬性,構(gòu)成一個屬性集。在這些屬性中,可以唯一標(biāo)識實體屬性的就是實
體的碼。實體之間的聯(lián)系本身也可以有描述屬性。
屬性一般具有一個屬性名和一個域。域代表了屬性可以取值的范圍。
2.E-R模型的符號
E-R模型通過建立由實體、聯(lián)系和屬性構(gòu)成的E-R圖來描述現(xiàn)實世界的數(shù)據(jù)需求,因此E-R模型也稱為E-R圖。
E-R模型的基本符號如圖2-2所示,實體集用矩形框表示,實體的屬性用橢圓框表示,實體間的聯(lián)系用菱形框表示,并附上相應(yīng)的名稱。圖2-2E-R模型的基本符號
例如,一個公司業(yè)務(wù)流程的E-R模型設(shè)計如圖2-3所示。圖2-3某公司業(yè)務(wù)流程E-R圖
⒊E-R模型的集成與優(yōu)化
完成了各個底層子系統(tǒng)的E-R模型后,下一步將進(jìn)行E-R模型的集成和優(yōu)化。方法是,首先找出公共實體,然后基于公共實體進(jìn)行合并,最后消除合并過程中出現(xiàn)的各種沖突。
E-R模型在集成的過程中,可能出現(xiàn)的沖突大致有以下幾種:
(1)屬性沖突。
(2)結(jié)構(gòu)沖突。
(3)命名沖突。
E-R模型在優(yōu)化過程中,可能出現(xiàn)的情形大致有以下幾種:
(1)合并實體。
(2)消除冗余屬性。
(3)消除冗余聯(lián)系。
2.2關(guān)系數(shù)據(jù)模型
2.2.1關(guān)系模型的相關(guān)概念關(guān)系模型是以規(guī)范化的二維表格結(jié)構(gòu)表示實體,以外碼表示實體間的聯(lián)系,以三類完整性表示語義約束的數(shù)據(jù)模型。關(guān)系模型示例如圖2-4所示,涉及一些術(shù)語,包括元組、屬性、關(guān)系等。圖2-4關(guān)系模型的相關(guān)概念示例
在關(guān)系模型中,所有實體都表示在一個二維表格結(jié)構(gòu)中,每一個實體表示為表格中的一行,稱為一個元組(Tuple)。元組的數(shù)目稱為關(guān)系的基數(shù)。元組本質(zhì)上是數(shù)據(jù),是一系列屬性值的集合。
表格的每一列稱為一個屬性(Attribute),屬性有一個屬性名及相應(yīng)的域。屬性的數(shù)目稱為關(guān)系模式的度(Degree),元組的每一個值稱為屬性值。
關(guān)系數(shù)據(jù)庫模式(RelationalDatabaseSchema)用于描述整個關(guān)系數(shù)據(jù)庫的邏輯結(jié)構(gòu)和特征。關(guān)系數(shù)據(jù)庫模式的一個實例稱為關(guān)系數(shù)據(jù)庫。在關(guān)系模型中涉及以下幾個碼的概念:
(1)超碼(SupperKey):關(guān)系模式中能夠唯一區(qū)分每個元組的屬性集合。
(2)候選碼(CandidateKey):不含多余屬性的超碼。它是唯一區(qū)分元組的最小屬性集。
(3)主碼(PrimaryKey):用戶選定的作為元組標(biāo)識的候選碼,其他的候選碼稱為替換碼(AlternateKey)。主碼在E-R圖中以屬性名加下畫線表示。
2.2.2關(guān)系的幾個性質(zhì)
關(guān)系模型是以二維表格形式的關(guān)系為基本數(shù)據(jù)結(jié)構(gòu),并且必須滿足一定的規(guī)范,因此關(guān)系是規(guī)范化的二維表格,表現(xiàn)為以下幾個性質(zhì):
(1)屬性值不可分解:每個屬性值都是單一值,不能是一個值集。通俗地講,就是不允許關(guān)系出現(xiàn)“表中表”。
(2)元組不可重復(fù):任何關(guān)系中都不允許存在重復(fù)元組。
(3)關(guān)系沒有行序:任何關(guān)系的元組之間沒有順序。
(4)關(guān)系沒有列序:任何關(guān)系的屬性列之間沒有順序。
2.2.3關(guān)系模型的完整性約束
關(guān)系模型通過四類完整性約束來表達(dá)數(shù)據(jù)的語義約束,即實體完整性、參照完整性、域完整性和用戶自定義完整性。完整性約束(IntegralConstrait)也稱完整性規(guī)則(Integral
Rule),是關(guān)系模式必須滿足的一些謂詞條件,體現(xiàn)為具體領(lǐng)域中的語義約束。依據(jù)完整性約束,關(guān)系模型可以表達(dá)豐富的語義約束條件。
⒈實體完整性
實體完整性(EntityIntegrity)也稱行完整性,是指關(guān)系模式的任一關(guān)系的主屬性值(候選碼)不可為空。圖2-5為一個實體完整性示例。圖2-5實體完整性示例
⒉參照完整性
參照完整性(ReferentialIntegerity)也稱引用完整性,定義在兩個關(guān)系模式之上,涉及外碼概念,用于保證相關(guān)表中數(shù)據(jù)的一致性。關(guān)系模式R的外碼(ForeignKey)是指它的
一個屬性集FK滿足兩個條件:存在帶有候選碼CK的關(guān)系模式S;R的任一非空FK值都在S的CK中有一個相同的值。我們把S稱為被參照關(guān)系(ReferencedRelation),R稱為參照關(guān)系(ReferentialRelation)。圖2-6為一個外碼的示例。圖2-6關(guān)系模式的外碼示例
⒊域完整性
實體完整性和參照完整性給出了針對主碼和外碼的語義約束,但實際應(yīng)用還常常要求對一些非碼屬性添加完整性約束,因此,在關(guān)系模型中引入了第三類完整性約束。
域完整性也稱列完整性,是指定列的輸入有效性,通過限制列的類型、格式和可能值的范圍等方法加以實現(xiàn)。域完整性通常以不等式、等式等形式給出,并且可以通過邏輯操
作符連接多個謂詞條件。
⒋用戶自定義完整性
這是用戶根據(jù)實際應(yīng)用的需要而自行定義的數(shù)據(jù)完整性。所有完整性類別都支持用戶定義完整性,包括CreateTable中所有列級約束和表級約束、存儲過程及觸發(fā)器。
例如,在訂單表中,發(fā)貨日期不能早于訂貨日期,因此,在使用Update或Insert操作創(chuàng)建觸發(fā)器時,定義發(fā)貨日期>訂貨日期,否則會出錯并回滾事務(wù)。
2.3關(guān)系運算關(guān)系運算是關(guān)系模型數(shù)據(jù)操作的主要實現(xiàn)方式,分為兩類:一類是傳統(tǒng)的集合運算(并、差、交、笛卡爾積),另一類是專門的關(guān)系運算(選擇、投影、連接等)。任何關(guān)系運算的結(jié)果仍然是一個關(guān)系,有些查詢需要幾個基本運算的組合,要經(jīng)過若干步驟才能完成。關(guān)系運算操作有兩種類型:一元操作和二元操作。一元操作是指只有一個運算對象的操作,二元操作是指有兩個運算對象的操作,如并、交、差等操作。用戶對關(guān)系運算的操作需求,表現(xiàn)為關(guān)系表達(dá)式。
⒈集合運算
已知關(guān)系R和關(guān)系S如圖2-7所示,其四種集合操作如下:
(1)并(Union)。并即R和S具有相同的結(jié)構(gòu),其運算符為“∪”,記為T=R∪S。
(2)差(Difference)。R和S的差是由屬于R但不屬于S的元組組成的集合,其運算符為“-”,記為T=R-S。
(3)交(Intersection)。R和S的交是由既屬于R又屬于S的元組組成的集合,其運算符為“∩”,記為T=R∩S。
(4)笛卡爾積。R和S的笛卡爾積是R和S的元組兩兩任意組合而得到的結(jié)果,其運算符為“×”,記為T=R×S。圖2-7關(guān)系R和S
上述四種運算結(jié)果如圖2-8所示。圖2-8關(guān)系R和S的四種集合運算結(jié)果
⒉專門的關(guān)系運算
專門的關(guān)系運算包括選擇、投影、連接和除法運算。
假設(shè)關(guān)系R和S如圖2-9所示,下面討論專門的關(guān)系運算。圖2-9關(guān)系R和S
1)選擇
從關(guān)系中找出滿足給定條件的元組的操作(where),其中條件以邏輯表達(dá)式給出,值為真的元組將被選取。這種運算是從水平方向抽取元組。例如:
select*fromRwhereBin(12,32)
算結(jié)果如圖2-10所示。圖2-10關(guān)系R和S的選擇運算結(jié)果
2)投影
從關(guān)系模式中指定若干個屬性組成新的關(guān)系,這是從列的方向進(jìn)行的運算。例如:selectA,BfromR
運算結(jié)果如圖2-11所示。圖2
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版數(shù)學(xué)八年級上冊15.4.1《提公因式法因式分解》聽評課記錄
- 人教版七年級地理上冊:4.2《世界的語言和宗教》聽課評課記錄1
- 八年級歷史上聽課評課記錄《第一單元第1課鴉片戰(zhàn)爭》聽課評課記錄
- 用維修基金維修電梯主機軸承合同
- 生態(tài)項目投資合作協(xié)議書(2篇)
- 人教版數(shù)學(xué)八年級上冊聽評課記錄15.2.1《分式的乘除》
- 部編版八年級道德與法治下冊第五課《我國基本制度》第3課時《基本政治制度》聽課評課記錄
- 北師大版數(shù)學(xué)一年級上冊第一單元《生活中的數(shù) 第3課時 玩具》聽評課記錄
- 北師大版數(shù)學(xué)五年級上冊《軸對稱再認(rèn)識(一)》聽評課記錄2
- 冀教版數(shù)學(xué)七年級下冊《數(shù)學(xué)活動 拼圖與分解因式》聽評課記錄
- 2012年安徽高考理綜試卷及答案-文檔
- 《游戲界面設(shè)計專題實踐》課件-知識點5:圖標(biāo)繪制準(zhǔn)備與繪制步驟
- 自動扶梯安裝過程記錄
- MOOC 材料科學(xué)基礎(chǔ)-西安交通大學(xué) 中國大學(xué)慕課答案
- 智慧供熱管理系統(tǒng)方案可行性研究報告
- 帕金森病的言語康復(fù)治療
- 中國城市居民的健康意識和生活方式調(diào)研分析報告
- 上海星巴克員工手冊
- 貓狗創(chuàng)業(yè)計劃書
- 復(fù)產(chǎn)復(fù)工試題含答案
- 部編版語文三年級下冊第六單元大單元整體作業(yè)設(shè)計
評論
0/150
提交評論