第3章 關系理論_第1頁
第3章 關系理論_第2頁
第3章 關系理論_第3頁
第3章 關系理論_第4頁
第3章 關系理論_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

主要學習內容

-描述關系模型

-識別實體關系(ERD)中使用的符號

-定義和選擇主鍵

-說明外鍵的職責

-識別和應用完整性規(guī)則

-說明關系數據庫的優(yōu)點第3章關系理論3.1關系模型關系模型可能是數據庫發(fā)展史上最簡單也最直觀的數據模型。整個模型是基于行和列構成的表表被成為關系關系數據庫管理系統(tǒng)(RDBMS)結構化查詢語言(SQL)數據庫管理員(DBA)T表(Table)行(Row)列(Column)文件(File)記錄(Record)字段(Field)關系(Relation)元組(Tuple)屬性(Attribute)等價的幾套術語:關系模型——等價術語3.2實體關系圖E-R圖,P.P.S.Chen于1976年提出(EntityRelationshipApproach)。實體:用矩形表示,矩形框內寫明實體

。屬性:用橢圓形表示,并用無向邊將其與相應的實體連接起來。聯(lián)系:用菱形表示,菱形框內寫明聯(lián)系名,用無向邊分別與有關實體

連接起來,同時在無向邊旁標上聯(lián)系的類型(1:1,1:M,M:N)。班級學生組成1n班級號班級名父表子表主鍵唯一標識表中的每條記錄

唯一的最小的非空不可更新3.3主鍵唯一但非最小的主鍵唯一且最小的主鍵

現(xiàn)有字段構成的主鍵

計算機生成的主鍵3.4外鍵3.5關系的完整性實體完整性(EntityIntegrity)參照(引用)完整性(ReferentialIntegrity)用戶定義的完整性(User-DefinedIntegrity)實體完整性(EntityIntegrity)實體完整性規(guī)則:若屬性A是基本關系R的主屬性,則屬性A不能取空值01數據庫技術202軟件工程203系統(tǒng)建模2系統(tǒng)工程201200900180022009001900120090026003200900170032009003選修(課程號,學號,成績)課程(課程號,課程名,學分)參照(引用)完整性(ReferentialIntegrity)參照完整性規(guī)則:若屬性F是基本關系R的外鍵,它與基本關系S的主鍵Ks相對應(基本關系R和S不一定是不同的關系),則對于R中每個元組在F上的值必須為:—或者取空值—或者等于S中某個元組的主鍵值SnoSnameSsexSageSdept2009001張三男19012009002李四女1901……………2009003王五男2002SdeptSlocSName02大樓1信息學院01大樓2軟學院03大樓3人文學院………參照(引用)完整性示例StudentDepartment主鍵外鍵,不是Student的主鍵,但是Department的主鍵。Student中Sdept的值都取自Department表中Sdept的值,指定外鍵時,列名不一定要相同用戶定義的完整性(User-DefinedIntegrity)關系模型應提供定義和檢驗這類完整性的機制。不應由應用程序承擔。如:學生年齡應該大于16歲3.6

第一范式(Firstnormalform,1NF)當每個字段只擁有一個值且每個表具有正確的字段集合時,該數據庫是規(guī)范的。

當表中的每個字段僅包含單個的值時,稱該表屬于第一范式(Firstnormalform,1NF)3.7數據模型按時間順序來分,主要有:層次模型(HierarchicalModel)網狀模型(NetworkModel)關系模型(RelationalModel)面向對象的數據庫模型

層次模型((hierarchicalmodel))是記錄的集合,這些記錄在邏輯上被組織成與圖所示的倒生樹結構相符。這種結構中很容易跟蹤數據庫組件之間的1:M的關系。計算機的存儲結構:Root—>s000001—>CS001—>s000002—>cs002—>s000003—>en001—>ma001—>s000004—>s000005—>cs0013.7.1層次模型(HierarchicalModel)

數據結構基本結構只有一個節(jié)點無雙親,即為根節(jié)點(1:1),其他節(jié)點有且只有一個雙親節(jié)點(1:n)多對多(m:n)冗余節(jié)點法:m:n=1:m+1:n虛擬節(jié)點法:將冗余節(jié)點轉化為虛擬節(jié)點,指向替代的節(jié)點。數據操縱與完整性約束沒有雙親節(jié)點值不能插入子女節(jié)點值刪除雙親節(jié)點值,相應子女節(jié)點值同時刪除冗余節(jié)點更新時,幾處同時更新層次模型(HierarchicalModel)優(yōu)點:

—概念簡單

—數據庫安全性

—數據無關性(消除了數據依賴)

—數據完整性

—效率。缺點:

—復雜的實現(xiàn)

—缺少結構無關性

—不支持M:N關系

—缺乏標準層次模型的優(yōu)缺點:體現(xiàn)了一系列基于一對多關系的事務:一名SALESREP可以填寫多張INVOICE,但是每張INVOICE只能由一個SALESREP填寫,之間存在1:M關系。一個CUSTOMS可以多次購物,每次購物可以有一張INVOICE…SALESREPCUSTOMERPRODUCTINVOICEPAYMENTINV_LINE傭金集銷售集付款集庫存集行集1:M1:M1:M1:M1:M3.7.2網狀模型(NetworkModel)優(yōu)點:

—概念簡單

—數據庫安全性

—數據無關性

—數據完整性

—符合標準

—可以處理M:N關系缺點:

—復雜的實現(xiàn)

—缺少結構無關性

網絡模型的優(yōu)缺點:學號姓名性別出生年月專業(yè)200901001張三男1991/03/1801200901002李四女1992/10/0901200901003王五男1992/10/0102學生登記表表名列主鍵行域表(Table)行(Row)列(Column)文件(File)記錄(Record)字段(Field)關系(Relation)元組(Tuple)屬性(Attribute)等價的幾套術語:3.7.3關系模型(RelationalModel)關系模型數據結構邏輯結構是一種二維表,由行和列組成列。關系:二維表。元組:表中的一行。屬性:表中的一列。主鍵:可以唯一的確定一個元組。域:屬性的取值范圍。分量:元組中的一個屬性值。關系模式:對關系的描述,表示為:關系名(屬性1,屬性2…屬性n)數據操縱與完整性約束集合操作:操作對象、操作結果都是關系(元組的集合),如查詢、修改、刪除等。實體完整性,引用完整性,用戶定義的完整性存儲結構實體,及實體之間的關系用“表”表示,表一文件形式存儲關系模型的優(yōu)缺點與非關系模型不同,它是建立在嚴格的數學概念基礎之上的關系模型的概念很單一,無論實體還是實體間的聯(lián)系都用關系表示,對數據的檢索結果也是關系(表)。數據結構簡單、清晰,用戶易學易用關系模式的存儲路徑對用戶透明,具有跟高的數據獨立性,更好的安全保密性,也簡化了程序員的工作和數據庫開發(fā)建立的工作。由于存儲路徑對用戶透明,查詢效率不如非關系模型。為了提高性能,需要對對用戶請求會做一些優(yōu)化的工作,從而增加了數據庫管理系統(tǒng)的負擔3.7.4面向對象的數據庫模型第一個允許將程序(方法)而不僅僅是數據存儲在數據庫中的數據庫第一個允許數據對象從另一個數據對象繼承結構的數據庫。然而,像IMS和IDMS一樣,面向對象的產品也是難于使用的。依賴于相關記錄之間的邏輯鏈接而不是物理鏈接;只有關系模型不使用物理指針來鏈接表,而是采用邏輯指針。使用的是第四代計算機語言第一代計算機語言是二進制代碼第二代計算機語言是匯編語言3GL是過程性的和面向記錄的4GL是非過程性的和面向表的允許高級別的數據獨立性。3.8關系數據庫模型的優(yōu)點基礎表BaseTable視圖View3.9關系數據庫中的關系

我們已經知道關系可以分類為“1:1”、“1:M”、“M:N”。用于關系數據庫設計時,應該注意以下問題:

1:M關系在關系建模中是理想的。因此,在任何關系數據庫設計中,這種關系模型應該是標準。必須避免M:N關系,因為它會導致數據冗余1:1關系在任何關系數據庫設計中都很少見。3.9.1關系數據庫中的關系—1:1關系員工服務人員屬于11

盡管1:1關系可以用在關系數據庫環(huán)境中,但是1:1關系經常意味著沒有正確的定義實體列(字段)。1:1關系可能顯示兩個表實際上屬于相同的表。員工號姓名性別出生年月備注90001張三男19700301服務員編號姓名性別出生年月備注90002李四男19750801員工號姓名性別出生年月員工類型備注90001張三男19700301銷售人員90002李四男19750801服務人員

然而有時候1:1關系是適合的。員工飛行員屬于11飛行員編號姓名性別出生年月飛行執(zhí)照健康證飛行小時91001費一男197508012001001122222200員工號姓名性別出生年月員工類型飛行執(zhí)照健康證飛行小時90001張三男19700301銷售人員90002李四男19750801服務人員90003王五男19741022機修工91001費一男19750801飛行員20010011222222003.9.2關系數據庫中的關系—1:M關系PAINTERPAINTINGpaints1M表名:PAINT主鍵:PAINT_NUM外鍵:空表名:PAINTING主鍵:PAINTING_NUM外鍵:PAINTER_NUMCOURSECLASShas1M表名:COURSE主鍵:CRS_CODE外鍵:空表名:CLASS主鍵:CLASS_CODE外鍵:CRS_CODE3.9.3關系數據庫中的關系—M:N關系STUDENTCLASS有MN表名:STUDENT主鍵:STU_NUM外鍵:空表名:CLASS主鍵:CLASS_CODE外鍵:STU_NUM表名:STUDENT主鍵:STU_NUM外鍵

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論