數據模型和三層模式數據庫.ppt
《數據模型和三層模式數據庫.ppt》由會員分享,可在線閱讀,更多相關《數據模型和三層模式數據庫.ppt(106頁珍藏版)》請在裝配圖網上搜索。
第2章數據模型和三層模式數據庫 數據的三種范疇數據模型數據模型的分類概念模型 概念型數據模型 數據模型 組織型數據模型 概念模型向數據模型的轉換數據獨立性與三層結構數據庫管理系統的結構 一 數據的三種范疇 現實 信息 電腦 思路 目的 描述數據和數據之間的聯系 方法 使用數據模型 概念模型 概念層數據模型 與數據模型 組織層數據模型 客觀存在并可以相互區(qū)分的客觀事物或抽象事件稱為實體 客觀存在的抽象事件訂貨 演出 足球賽 等也是實體 可以觸及的客觀對象倉庫 器件 職工 等是實體 實體 身高年齡性別體重 比賽時間 地點 參賽隊 特征 具有相同特征的一類實體的集合稱之為實體集 學生實體集 課程實體集 教師實體集 教室實體集 實體集 用于區(qū)分實體的實體特征稱為標識特征 標識特征 特征 實體 實體集 標識特征 現實世界的術語 文件 記錄 字段 關鍵字 我們更熟悉的術語 三種范疇使用的術語 弱實體 在現實世界中還存在一類 客體 它自身不具有標識特征 它需要借助于所依賴的實體來區(qū)分一個個 客體 我們把這類 客體 稱為弱實體 見第10章 例1 對訂購單要管理訂購單明細 訂購單明細就是弱實體例2 對球賽要管理上 下半場信息 半場就是弱實體 二 數據模型 數據模型 用來抽象 表示和處理現實世界中的數據和信息的 數據模型應滿足三個條件 能比較真實地模擬現實世界 容易被人們理解 便于在計算機上實現 1 數據模型的分類 現實世界客觀事物的抽象過程 現實 機器 概念模型 組織模型 模型 抽象 2 概念數據模型 概念模型實際上是現實世界到機器世界的一個中間層次 概念模型用于信息世界的建模 是現實世界到信息世界的第一層抽象 是數據庫設計人員和用戶之間進行交流的工具 是面向用戶 面向現實世界的數據模型 是與DBMS無關 概念模型的表示方法 實體 聯系方法 E R圖 擴展Bachman圖 實體 聯系方法 實體聯系屬性 實體的表示方式 在E R圖中用矩形框表示實體 把實體名寫在框內 比如倉庫實體可以表示為 倉庫 實體之間的聯系用菱形框表示 框內寫上聯系名 并用連線與有關的實體相連 聯系名 實體1 實體2 聯系的表示方式 一對一聯系 1 1 一對多聯系 1 n 多對多聯系 m n 聯系的類型 如果實體集A與實體集B之間存在聯系 并且對于實體集A中的任意一個實體 實體集B中至多只有一個實體與之對應 反之亦然 則稱實體集A到實體集B的聯系是一對一的 記為1 1 一對一的聯系 實體 車間 車間主任語義 一個車間只能有一名車間主任一個職工也只能在一個車間當主任聯系 命名為任職 任職 車間 車間主任 一對一聯系的例子 一對多的聯系 如果實體集A與實體集B之間存在聯系 并且對于實體集A中的一個實體 實體集B中可以有多個實體與之對應 而對實體集B中的任意一個實體 在實體集A中至多只有一個實體與之對應 則稱實體集A到實體集B的聯系是一對多的 記為1 n 工作 倉庫 職工 實體 倉庫 職工語義 一個倉庫可以有多名職工一個職工只能在一個倉庫工作聯系 命名為工作 一對多聯系的例子 多對多的聯系 如果實體集A與實體集B之間存在聯系 并且對于實體集A中的一個實體 實體集B中可以有多個實體與之對應 反之亦然 則稱實體集A到實體集B的聯系是多對多的 記為m n 倉庫 器件 庫存 實體 倉庫 器件語義 一個倉庫可以存放多種器件一種器件可以存放在多個倉庫聯系 命名為庫存 多對多聯系的例子 倉庫 器件 供應商 訂購 多個實體之間的聯系 實體 倉庫 器件 供應商語義 每個倉庫可以向多個供應商發(fā)出訂購 可購買多種器件 每個供應商可向多個倉庫供貨 可供應多種器件 每種器件可由多個供應商供應 可由多個倉庫購買 聯系 命名為訂購 多個實體之間的另外一種聯系 兩種聯系方式的區(qū)別 實體的屬性用橢圓框表示 框內寫上屬性名 并用連線連到相應實體 也可以直接將屬性名寫在實體旁邊 屬性的表示方式 聯系本身也有屬性 聯系是通過相關聯的實體的有關屬性體現出來的 課堂練習 P41第2題 聯系的屬性 特殊的 依賴聯系 弱實體集的屬性不足以構成主關鍵字 為了區(qū)分弱實體集中的一個個實體 需要借助于另一個實體集中的主關鍵字 這種被依賴的實體集也稱作強實體集 在弱實體集和強實體集之間必然存在著一種聯系 并把這種聯系稱作依賴聯系 見第10章 依賴聯系的例子 依賴聯系都是一對多的聯系 弱實體集也只有作為一對多聯系的一部分才有意義 強制聯系與非強制聯系 實體之間的聯系可以分為強制聯系和非強制聯系 見第10章 例 部門和職工之間的聯系 如果規(guī)定職工任何時候都必須屬于一個部門 則這種聯系是強制聯系 如果規(guī)定職工可以不屬于任何部門則這種聯系就是非強制聯系 依賴聯系都是強制聯系 實體之間的聯系類型并不取決于實體本身 而是取決于現實世界的管理方法 或者說取決于語義 即同樣兩個實體 如果有不同的語義則可以得到不同的聯系類型 注意 以倉庫和器件兩個實體之間的關聯為例 如果規(guī)定一個倉庫只能存放一種器件 并且一種器件只能存放在一個倉庫 這時倉庫和器件之間的聯系是一對一的 如果規(guī)定一個倉庫可以存放多種器件 但是一種器件只能存放在一個倉庫 這時倉庫和器件之間的聯系是一對多的 如果規(guī)定一個倉庫可以存放多種器件 同時一種器件可以存放在多個倉庫 這時倉庫和器件之間的聯系是多對多的 建立庫存 訂購數據庫 概念數據模型 實例研究 書2 2 4 倉庫 器件 職工 庫存業(yè)務 與庫存業(yè)務有關的實體 庫存業(yè)務的管理模式語義 在一個倉庫可以存放多種器件 一種器件也可以存放在多個倉庫中 一個倉庫有多個職工 而一個職工只能在一個倉庫工作 一個職工可以保管一個倉庫中的多種器件 由于一種器件可以存放在多個倉庫中 當然可以由多名職工保管 在倉庫和器件之間存在一個多對多的聯系 庫存 在倉庫和職工之間存在一個一對多的聯系 工作 在職工和器件之間存在一個多對多的聯系 保管 以上語義說明了 為此有庫存業(yè)務的局部E R圖 職工 器件 供應商 訂購單 訂購業(yè)務 與訂購業(yè)務有關的實體 訂購業(yè)務管理模式語義 一名職工可以經手多張訂購單 但一張訂購單只能由一名職工經手 一個供應商可以接受多張訂購單 但一張訂購單只能發(fā)給一個供應商 一個供應商可以供應多種器件 每種器件也可以由多個供應商供應 一張訂購單可以訂購多種器件 對每種器件的訂購也可以出現在多張訂購單上 在職工和訂購單之間存在一個一對多的聯系 發(fā)出訂購單 在供應商和訂購單之間存在一個一對多的聯系 接收訂購單 在供應商和器件之間存在一個多對多的聯系 供應 在訂購單和器件之間存在一個多對多的聯系 訂購 以上語義說明了 為此有訂購業(yè)務的局部E R圖 庫存 訂購業(yè)務整體E R圖 擴展Bachman圖是與E R圖類似的信息結構和概念模型描述工具 它的要點是 用矩形框表示實體或文件 實體名寫在矩形框的右下方 字段名寫在矩形框內 關鍵字標以下劃線 輔助關鍵字標以虛下劃線 用箭頭線表示聯系并連接相關實體 箭頭線始于父文件的連接字段 關鍵字 終于子文件的連接字段 外部關鍵字 聯系類型標在箭頭線旁 擴展Bachman圖 庫存和訂貨業(yè)務的完整擴展Bachman圖 3 數據模型 傳統的三大數據模型 面向對象模型 書2 3節(jié) 層次模型 關系模型 課本P25 用樹形結構來表示實體之間聯系的模型稱為層次模型 只能表示一對多的聯系 層次模型的典型代表是IMS InformationManagementSystem 1 層次數據模型 層次模型有以下兩點限制 有且僅有一個結點無父結點 這個結點即為樹的根 其他結點有且僅有一個父結點 層次結構實例 層次模型中用的術語 層次型 片段 Segment 字段 型和值 層次值實例 層次型不能表示多對多的聯系 把有兩個父結點的非層次結構轉換成兩個層次型 用網絡結構來表示實體之間聯系的數據模型稱為網絡數據模型 網絡模型的典型代表是CODASYL ConferenceOnDAtaSYstemLanguage 2 網絡數據模型 CODASYL用系描述聯系 系 命名了的聯系 SET 相互關聯的數據的集合 系由一個父記錄型和一個或多個子記錄型構成 系是一個二級樹 網絡結構 理解系的概念 系值 用關系 表格數據 表示實體和實體之間聯系的模型稱為關系數據模型 3 關系數據模型 關系實例 倉庫 倉庫號 城市 面積 關系模式 關系數據庫管理系統 SybaseOracleDB2MSSQLServerFoxProAccess 倉庫 器件 4 概念模型向數據模型的轉換 只需設計一個物理文件 圖2 8 如果倉庫和器件之間的聯系是一對一的 需要設計兩個物理文件 圖2 5和圖2 11 如果倉庫和器件之間的聯系是一對多的 不好 冗余 操作異常 需要設計三個物理文件 圖2 5和圖2 6和圖2 12 如果倉庫和器件之間的聯系是多對多的 同樣兩個實體 如果賦予不同的語義則有不同的設計結果 也就是說我們在概念模型中討論實體之間的聯系類型直接影響著目標數據庫的設計結果和設計質量 實際設計中還需考慮具體情況 參考 實際設計中 E R模型向關系模型的轉換規(guī)則 返回 結論 E R模型轉換成關系模式 倉庫 倉庫號 城市 面積 職工 職工號 工資 倉庫號 FK 倉庫號器件 器件號 器件名稱 庫存 倉庫號 器件號 數量 FK 倉庫號和器件號保管 職工號 器件號 FK 職工號和器件號供應商 供應商號 供應商名 地點 供應 供應商號 器件號 FK 供應商號和器件號訂購單 訂購單號 訂購日期 供應商號 職工號 FK 供應商號和職工號訂購 訂購單號 器件號 行號 數量 FK 訂購單號和器件號 其中有5個實體和7個聯系 如下表 完成 WH1倉庫P1器件的訂貨數量是多少 的查詢步驟 確定在WH1倉庫工作的職工的職工號 職工文件 設為Eno 根據Eno查詢該職工所經手的訂購單號 訂購單文件 設為Ono 根據Ono查詢所訂購的器件號及數量 訂購項目文件 查詢完一張訂購單后再接著查詢同一職工經手的另一張訂購單 一名職工經手的訂購單查詢完后 再查詢同一倉庫另一職工所經手的訂購單 完成相應查詢的語句 SELECTSUM 數量 FROM訂購WHERE器件號 P1 AND訂購單號IN SELECT訂購單號FROM訂購單WHERE職工號IN SELECT職工號FROM職工WHERE倉庫號 WH1 多對多聯系是一類比較復雜的聯系 一般數據庫管理系統并不直接支持這類聯系 或者由于技術上的原因我們也不直接使用這類聯系 我們總是把多對多聯系轉換為一對多聯系 幾個相關問題 1 理解和轉換多對多聯系 多對多聯系 一個多對多的聯系實際蘊涵了兩個一對多的聯系 倉庫和器件之間的聯系是多對多的 但是它們和 聯系 庫存之間的聯系都是一對多的 多對多聯系蘊涵一對多聯系 多對多聯系轉換為一對多聯系 倉庫 倉庫號 城市 面積 庫存 數量 器件 器件號 器件名稱 器件號 倉庫號 所謂連接陷阱就是誤認為不存在聯系的兩個實體間存在聯系 從而通過這種 聯系 獲取錯誤的信息 參考 數據庫設計中的誤區(qū) 連接陷阱 2 連接陷阱 三 數據獨立性與三層結構 什么是數據獨立性如何獲得數據獨立性 數據獨立性 數據獨立性是指應用程序與存儲數據相互獨立的特性 具體說 就是當修改數據的組織方法和存儲結構時 應用程序不用修改的特性 存儲數據獨立性 修改存儲文件的組織方法和結構時應用程序不用修改的特性 程序 存儲子程序 用戶程序 應用程序 分解 實現存儲數據獨立性 概念數據獨立性 修改概念文件的結構時應用程序不用修改的特性 程序 存儲子程序 用戶程序 應用程序 分解 概念級存儲子程序 用戶程序 應用程序 存儲級存儲子程序 實現概念數據獨立性 實現概念數據獨立性 CONCEPTUAL ROUTINE是用來保證概念數據獨立性的STORAGE ROUTINE是用來保證存儲數據獨立性 實現概念數據獨立性 不管是概念文件 還是外部文件 它們都不真正還有數據 它們只是存取存儲文件的結構或框架 概念文件時存儲文件的抽象 而外部文件是概念文件的部分抽取 四 數據庫的三層模式結構 課本P34 存儲 概念和外部模式 定義存儲模型的模式叫做存儲模式 定義概念模型的模式叫概念模式 或簡稱模式 定義外部模型的模式叫外部模式 又稱做子模式 各級模式之間的關系 視圖 表 存儲文件 三層模式 外部模式 概念模式 存儲模式 兩級映像 外部模式 概念模式 概念模式 存儲模式 提供了兩種獨立性 概念數據獨立性 存儲數據獨立性 傳統模式說明實例 課本P36 存儲數據庫示例 存儲模式說明 概念數據庫 概念模式說明 外部數據庫 是概念數據庫的部分提取 外部模式說明 記住 只有存儲數據庫是物理上真正存在的 概念數據庫是存儲數據庫的抽象 外部數據庫是概念數據庫的部分抽取 記住 概念模式帶來了存儲數據獨立性 外部模式帶來了概念數據獨立性 模式描述語言 DBDL 分類 存儲DBDL概念DBDL外部DBDL用相應的DBDL書寫的模式稱作源模式 數據庫管理系統的總體結構 DBMS讀取一條記錄時發(fā)生的事件 用戶程序A向DBMS發(fā)出讀一條記錄的指令 這時用戶程序要給出外部文件名和記錄的關鍵字值 DBCS分析所接到的指令 訪問對應的外部模式 DBCS完成外部模式到概念模式的轉換 決定訪問哪個 些 概念文件 接著由DBSS完成概念模式到存儲模式的轉換 并決定訪問哪個 些 存儲文件 DBSS調用存取方法 通過操作系統將讀取的記錄送到系統緩沖區(qū) 用戶程序從系統緩沖區(qū)得到所需記錄和DBMS返回的狀態(tài)信息 用戶程序在工作區(qū)中使用所得到的記錄 信息結構和概念數據模型三大數據模型數據庫的三層結構和數據獨立性數據庫管理系統的結構 本章小結 指出下列實體的聯系類型 1 省對省會的所屬聯系 2 父親對孩子的親生聯系 3 供應商與工程項目的供貨聯系 4 教研室對教師的所屬聯系 5 圖書與書店的聯系 總結 數據的三個范疇2 1 1 數據模型 什么是數據模型 概念模型2 1 2 2 2 數據模型 2 3 概念模型向數據模型的轉換 2 2涉及 其中關系模型 第3章再細講 本章內容 三層模式 三層模式 2 5 1 模式說明實例 2 5 2 二級映像 2 5 1 二種獨立性 2 4 概念數據獨立性 存儲數據獨立性- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 數據模型 三層 模式 數據庫
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://m.kudomayuko.com/p-7167933.html