概念模型与数据模型课件.ppt
2.2.3數據操作數據操作用於描述數據的動態特徵。數據操作是指對數據庫中各種對象(型)的實例(值)允許執行的操作的集合,包括操作及有關的操作規則,主要有檢索和更新(包括插入、刪除、修改)兩大類操作。數據模型必須準確地定義這些操作的確切含義、操作符號、操作規則(優先順序)以及實現操作的語言。2.2.4數據的約束條件數據的約束條件是一組完整性規則的集合。完整性規則是給定的數據模型中數據及其聯繫所具有的制約和儲存規則,用以限定符合數據模型的資料庫狀態以及狀態的變化,以保證數據的正確、有效和相容。如:年齡小於38,學生不及格課程少於3門。數據模型應該反映和規定本數據模型必須遵守的基本的通用的完整性約束條件。例如,在關係模型中,任何關係都必須滿足實體完整性和參照完整性两个条件。此外,数据模型还应该提供定义完整性约束条件的机制,以反映具体应用所涉及的数据必须遵守的特定的语义约束条件。實體完整性即指每一實體必須是可分的,它的主碼是唯一的,如學號不能重複。參照完整性是指外碼的值要麼為空,要麼為另一個資料庫中已有的值。如一個學生的專業不能是專業庫中沒有的記錄2.2.5數據模型種類按數據結構分,目前可分為:1.層次模型2.網狀模型3.關係模型4.面向對象模型2.3層次模型現實中很多實體呈現層次關係,如行政機構,因此,層次模型是資料庫系統最早採用的數據模型。層次模型用樹狀結構表示實體及實體間的聯繫。層次模型最具代表性的系統是IBM的IMS。本節介紹層次模型的概念、構成和優缺點。2.3層次模型2.3.1基本層次關係2.3.2層次模型的概念和結構2.3.3層次數據模型例2.3.4層次模型的完整性約束2.3.5層次模型的優點2.3.6層次模型的缺點2.3.1基本層次關係非關係模型中,實體用記錄表示,實體之間的聯繫轉換為記錄間的兩兩聯繫,非關係型數據結構的基本單位是基本層次聯繫。基本層次聯繫是指兩記錄以及它們之間的一對多(包括一對一)的聯繫。RjRi一對多聯繫名子女結點雙親結點Lij2.3.2層次模型的概念R0R1R21R22R12R11R2根結點為:R0。R0的子結點有:R1,R2。R1,R2為兄弟結點。R11、R12的父結點是:R1。特徵:(1)只有一個無雙親的根結點;(2)其他結點有且只有一個雙親。2.3.3層次數據模型例2.3.4層次模型的完整性約束在插入時,不能插入無雙親的子結點,如新來的教師未分配教研室則無法插入到資料庫中。在刪除時,如刪除雙親結點,則其子女結點也會被一起刪除。如刪除某個教研室則它的所有教師也會被刪除。在更新時,應更新所有相應的記錄,以保證數據的一致性。2.3.5層次模型的優點數據模型簡單,只需幾條命令就能操縱數據,易使用;若實體間的關係固定,性能優於關係模型;具有良好的完整性支持。2.3.6層次模型的缺點1.有一定存取路徑,僅允許自頂向下單向查詢,查詢非對稱性。2.適合表示記錄間一對多聯繫,而描述非層次性很笨拙,多對多和多對一聯繫的表示法會出現數據冗餘。3.語義完整性差,數據依賴性強,須通過雙親才能找到子結點。4.同一實體聯繫模型可以構造出許多層次模型,而對不同的模型同一查詢的表達方式就不同,因此用戶必須瞭解模型的結構。5.插入和刪除操作限制較多。6.由於結構嚴密,層次命令趨於程式化。2.4網狀模型現實世界中實體間的聯繫更多的是非層次關係。最具代表性的網狀DBMS:CODASYL系統或DBTG系統。1971年4月CODASYL(ConferenceOnDataSystemLanguage)組織通過DBTG(DataBaseTaskGroup)報告(和其後的修改檔)規範的系統,大部分網狀資料庫系統在不同程度上實現了DBTG報告。2.4網狀模型2.4.1概念與結構2.4.2網狀模型其他結構2.4.3網狀模型示例2.4.4完整性約束2.4.5網狀模型的優點2.4.6網狀模型的缺點2.4.1網狀模型的概念與結構網狀結構特點:1.允許多個結點無雙親,即根結點可以有多個;2.一個子結點可以有兩個或多個父結點。R1R2R3R5R8R4R6R73.兩個結點間可有兩種或多種聯繫(複合聯繫)。4.可能有回路存在。樹父母子女種植砍伐養育贍養學生宿舍學生教研室專業系教師(a)(e)(d)2.4.2網狀模型其他結構學生課程父親子女(c)(b)人2.4.3網狀數據模型示例2.4.4網狀模型的完整性約束操縱特點是:1.允許插入