數據庫原理與應用技術教程電子教案4_第1頁
數據庫原理與應用技術教程電子教案4_第2頁
數據庫原理與應用技術教程電子教案4_第3頁
數據庫原理與應用技術教程電子教案4_第4頁
數據庫原理與應用技術教程電子教案4_第5頁
已閱讀5頁,還剩39頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、 知知 識識 點點 數據庫、數據庫設計 數據庫系統 數據庫安全 難難 點點 數據庫系統設計分析 概念設計、邏輯設計與物理 設計方法 返 回 要要 求求熟練掌握以下內容: 系統的需求分析方法 數據庫設計的模型轉換方法 數據庫系統的實現與維護 數據庫安全控制了解以下內容: 數據庫的物理設計方法 數據庫的恢復3.1.1 數據庫的設計過程 規劃階段 需求分析階段 概念模型設計階段 邏輯結構設計階段 物理存儲設計階段 數據庫設計的實施階段,即應用程序編 碼、調試、試運行階段 數據庫系統的運行與維護階段 3.1.2 數據庫設計方法簡介 1基于3NF的數據庫設計方法 具體設計步驟為: 設計企業模型,從3NF

2、關系模型出發畫出企業模型。 設計數據庫的概念模型,將企業模型轉換成DBMS支持的概念模型,并根據概念模型導出各個應用的外模型。 設計數據庫的存儲模型,即物理模型。 對物理模型進行評價。 數據庫設計的實施。 2基于實體聯系(E-R)的數據庫設計方法 3基于視圖概念的數據庫設計方法 合并時必須注意解決下列問題: 消除命名沖突。 消除實體和聯系的冗余。 進行模型重構。在消除了命名沖突和冗余后,需要對整個匯總模型進行調整,使其滿足全部完整性約束的條件。3.1.3 數據庫設計的內容 靜態特性設計:是數據模型的靜態模型模型與子模型的設計,又稱為數據庫的結構特性設計,是根據給定的應用環境,設計出數據庫的數據

3、模型(即數據結構)或數據庫模型。 動態特性設計:是在模型上的動態操作應用程序設計,又稱數據庫行為特性設計,是指確定數據庫用戶的行為和動作。 靜態特性設計與動態特性設計的關系:考慮到使用方便和對數據庫的性能改善,結構特性必須適應行為特性,因此數據庫設計強調數據庫的結構設計與行為設計應該統一。數據庫設計的人員應該具備多方面的知識和技術: 計算機軟、硬件基礎知識和程序設計技術 數據庫基本知識和數據庫設計技術 軟件工程的原理和方法 數據庫應用領域的知識 3.2.1 數據庫規劃 一般需要考慮的因素有以下三個方面: 一個單位要處理的數據量巨大、專用性強,但數據處理的方式簡單規范。 數據庫技術對數據的采集、

4、管理人員理活的動規范化以及最終用戶的計算機應用水平都有較高的要求。 數據庫技術對計算機系統的軟、硬件要求較高,要有足夠的內存空間、外存儲容量以及DBMS軟件,這會導致數據處理的成本增加。 3.2.2 需求分析 1調查用戶的要求 信息調查主要有以下幾個方面: 數據要求。從數據庫中獲得數據對象、類型和來源等信息的內容、性質;導出數據的要求,即在數據庫中需存儲哪些數據等。 處理要求。要完成什么樣的數據處理,對處理功能的響應時間,處理方式是批處理還是聯機處理等。 完整性和一致性的要求。 安全性和可靠性的要求。 2調查的過程 了解企、事業組織情況,調查其組織機構由哪些部門組成,各部門的職責是什么,為分析

5、信息流程做準備。 了解各部門的業務活動情況,調查各部門輸入和使用什么數據,如何加工處理這些數據。輸出什么信息,輸出到什么部門,輸出結果的格式是什么。 確定新系統的邊界,確定哪些功能由計算機完成,或將來準備由計算機完成,哪些功能由人工完成,由計算機完成的功能就是新系統應該實現的功能。 3數據處理方法 4調查分析系統功能 5數據字典 數據字典(Data Dictionary 簡稱DD) 數據字典的主要內容 數據項描述。 數據結構描述。 數據流。 數據存儲。 處理過程。 6編寫需求分析報告 需求分析報告的主要內容 需求分析報告應包括的內容如下: 系統概況、系統的目標、范圍、功能、歷史背景和現狀 系統

6、的依據的原理和采用的技術,對原有系統的改善 系統總體結構與子系統結構的關系說明 系統的數據流圖說明和系統功能說明 數據處理概要、工程體制和各個設計階段的劃分 系統設計方案及其在經濟、技術、功能和操作上的可行性分析 3.3.1 概念模型的作用 概念模型的作用是: 1提供能夠識別和理解系統要求的框架。 2概念模型為數據庫提供了一個說明性的結構,為設計數據庫的邏輯結構打下了基礎。 能充分反映現實世界中的各種數據處理要求,是現實世界的一個真實模型。 表達自然、直觀,容易理解,以便和不熟悉計算機的用戶進行交流,這是保證數據庫設計取得成功的關鍵。 易于修改與擴充。 能方便、快捷地向關系等數據模型轉換,是數

7、據模型的基礎。由于概念模型獨立于DBMS,因而轉換后的數據模型也就更加穩定。 3.3.2 建立E-R模型的方法 設計E-R模型的方法有以下4種: 自頂向下。 自底向上。 由里向外。 混合策略。 3.3.3 建立局部E-R模型 調整實體及其屬性的基本的原則是: 實體及其屬性之間的聯系只能是1:n或1:1的。 屬性本身不能再有需要描述的性質或與其它事物之間具有聯系。 3.3.4 全局概念E-R模型的設計 3.4 邏輯結構設計 首先,把概念型E-R模型轉換成一般的關系數據模型,然后再將關系數據模型轉換成特定的DBMS所支持的邏輯結構模型,如圖3.4所示。 圖3.6 概念模型轉換示意圖 3.4.1 E

8、-R模型向關系模型轉換 1轉換原則 一個實體型轉換為一個關系框架,實體的屬性就是關系的屬性,并應根據該關系表達的語義確定關鍵字屬性。 對于E-R模型中的聯系,要根據其聯系方式的不同,采用不同的方式使這種聯系能夠在關系的模型中實現。一個聯系轉換為一個關系框架,與該聯系相連的各實體的關鍵字屬性以及聯系的屬性轉化為該關系的屬性。 2具體做法 將一個實體轉換為一個關系例如:將圖3.5所示的E-R模型中的實體分別轉換成相應的關系模型如下: 供應商 (姓名,地址,電話,帳號, 姓名地址,姓名電話,姓名電話)零件 (名稱,規格,單價,名稱規格, 名稱單價)倉庫 (庫名,主任,電話,庫名主任, 庫名電話) 圖

9、3.7 工廠的局部E-R模型供應商零件倉庫地址單價規格庫名供應庫存姓名帳號供應量名稱庫存量電話主任 將一個聯系轉換為一個關系 圖3.5中的E-R模型的聯系“供應”,可以轉換的關系模型如下: 零件供應(姓名,名稱,供應量, (姓名,名稱)供應量) 兩個實體間的聯系是1:n聯系的E-R模型轉換為關系模型 一個實體對多個實體的E-R模型轉換為關系模型的方法有兩種: 如圖3.5所示的倉庫與零件之間的聯系是1:n聯系。倉庫(庫名,主任,電話, 庫名主任,庫名電話) 倉庫(庫名,主任,電話, 庫名主任, 庫名電話)零件(名稱,規格,單價,名稱規格, 名稱單價) 庫存(名稱,庫名,庫存量,(名稱,庫名) 庫

10、存量) 當兩個實體之間是1:n聯系時,還可以將“1”方的關鍵字納入“n”方實體對應的關系中作為外來關鍵字,同時把聯系的屬性也納入“n”方對應的關系中。 轉換后的關系數據模型為: 倉庫(庫名,主任,電話,庫名主任, 庫名電話)零件(名稱,規格,單價,庫名,庫存量, 名稱規格,名稱單價,(名稱, 庫名)庫存量) 將兩個實體間的聯系是m:n聯系的E-R模型轉換為關系模型 圖3.5所示供應商與零件之間是m:n聯系。將“供應商”和“零件”兩個實體分別轉換為對應的關系,為了實現兩者之間的聯系,將聯系(“供應”)也轉換成對應的關系: 供應商(姓名,地址,電話,帳號, 姓名地址,姓名電話,姓名電話)零件(名稱

11、,規格,單價,名稱規格, 名稱單價) 供應(姓名,名稱,供應量, (姓名,名稱)供應量) 將一個實體內部存在m:n聯系的E-R模型轉換為關系模型 零部件(編號,規格,名稱,編號規格, 編號名稱) 組裝 (編號,裝配件代號,數量, (編號,裝配件代號)數量) 將多個實體間存在m:n聯系的E-R模型轉換為關系模型 圖3.6 同一實體內部存在m:n聯系的E-R模型 名稱零部件裝配數量規格 3.4.2 關系規范化應用關系規范化應用 優化時主要考慮以下三個方面: 在數據分析階段用數據依賴的概念分析和表示各數據項之間的聯系 在設計概念結構階段,用關系規范化去消除E-R模型中的冗余聯系 在E-R模型向數據模

12、型轉換的過程中,用模式分解的概念和方法指導設計 優化的具體步驟是:1確定數據之間的依賴關系2用關系來表示E-R圖中的每一個實體3對實體之間的某些數據依賴進行極小化處理4用關系表示實體之間的聯系 5對關系模式進行合并或分解 3.4.3 關系模式優化關系模式優化【例3.2】 設有職工關系模式TC,若經常進行人事查詢操作時,應怎樣進行優化?TC(編號,姓名,性別,年齡,職務,職稱, 工資,工齡,住址,電話)解:因為人事查詢只對職工的“編號,姓名,性別,年齡,職務,工資”感興趣,所以對關系模式TC“垂直分解”為TC1、TC2兩個關系模式,這樣做既減少了每次查詢所傳遞的數據量,又提高了查詢的速度。TC1

13、(編號,姓名,性別,年齡,職務,工資)TC2(編號,職稱,工齡,住址,電話)3.5.1 物理設計主要的目標與要解決的問題 數據庫物理設計的主要目標是: 提高數據庫的性能 節省存儲空間 在數據庫物理設計中要解決的問題是: 文件的組織方式和存取方法 索引項的選擇,對哪些數據項建立索引,才有利于提高處理效率 哪些數據存放在一起,有利于性能的提高 數據的壓縮、分塊技術 緩沖區的大小及其管理方式 文件在存儲介質上的分配形式 3.5.2 物理設計的內容物理設計的內容 物理設計的內容主要包括: 1確定數據存儲結構 2索引與入口的設計 3確定數據存放形式 4確定系統的配置 5確保數據的安全性、完整性和一致性

14、3.6 數據庫的實現數據庫的實現 3.6.1 組織數據入庫組織數據入庫 3.6.2 數據庫的試運行數據庫的試運行 運行與維護階段的主要工作是:1. 維護數據庫的安全性、完整性控制以及數據庫的備份與恢復2. 對數據庫的性能進行性能的監測、分析和改進3. 實施數據庫的重組織和重構造4. 增加新功能5. 修正錯誤 3.8.1 安全性控制安全性控制 1. 訪問控制2. 用戶標識與鑒別鑒別用戶身份,常用的方法有以下三種: 用只有用戶知道的特定信息鑒別用戶 用只有用戶具有的物品鑒別用戶 用戶的個人特征鑒別用戶 3授權 4數據加密 5跟蹤審查 3.8.2 數據庫完整性控制數據庫完整性控制 數據庫的完整性是指

15、始終保持數據庫中的數據處在正確的狀態,防止不符合語義的錯誤數據進入和輸出,同時還要使存儲在不同副本中的同一個數據保持一致,數據庫的結構不受破壞,具有正確性、有效性和一致性。 1完整性被破壞的原因 操作人員或終端用戶的錯誤或疏忽; 應用程序的(操作數據)錯誤; 數據庫中并發操作控制不當; 由于數據冗余,引起某些數據在不同 副本中的不一致; DBMS或者操作系統出錯; 系統中任何硬件(如CPU、磁盤、 通道、I/O設備等)出錯。 2完整性規則 什么時候使用完整性規則進行檢查 (又稱規則的觸發條件) 規定系統要檢查什么樣的錯誤 (又稱規則的約束條件) 查出錯誤后應該怎樣處理 (又稱規則的違約響應)

16、3完整性約束分類 值的約束和結構的約束 數據值的約束。即對數據取值的類型、 范圍和精度等進行規定。 結構的約束。 靜態約束與動態約束 靜態約束是對數據庫的每一個確定狀態 所應滿足的約束條件。 動態約束是指數據庫從一種狀態轉變到 另一種狀態時,對新、舊值之間的轉換 所應滿足的約束條件。 立即執行約束和延遲執行約束 立即執行約束是指用戶執行完某一更新 數據操作后,系統立即對該數據進行完 整性約束條件檢查,結果正確再進行下 一句的執行。 延遲執行約束是指在整個操作執行完畢 后,再對數據進行完整性約束條件的檢 查,只有結果正確整個操作才被確認。 3.8.3 數據庫并發控制數據庫并發控制 1并發控制異地

17、操作錯誤的種類 丟失更新(lost update) 污讀(dirty read) 不能重讀(no-reread) 2封鎖的基本類型 排他式封鎖 保護式封鎖 封鎖尺度 3.8.4 數據庫的恢復數據庫的恢復 1數據庫的備份與運行日志 2數據庫受到破壞形式與恢復方法 本章概述了數據的庫設計,數據庫的設計過程一般分為七個階段,要從客觀分析和抽象入手,綜合使用各種設計工具分階段完成。每一個階段完成后都要進行設計分析,評價一些重要的設計指標,將設計階段產生的文檔進行評審并與用戶交流,對用戶不滿意之處必須進行修改。 數據庫的設計是在DBMS的支持下進行的,主要包括系統的靜態特性設計和動態特性設計。數據庫規劃

18、是數據庫設計的準備階段,該階段的主要任務是進行建立數據庫的必要性和可行性分析,并確定各個數據庫之間的關系,數據庫系統在企、事業單位中的地位等。需求分析是數據庫設計的第一階段,必須高度重視和慎重對待需求分析,確切而無遺漏地弄清楚用戶對系統的要求,是數據庫系統設計取得成功的重要前提。 概念模型設計是整個數據庫設計的關鍵所在。概念模型是現實世界的客觀反映,是從用戶角度所看到的數據庫。E-R模型就是概念型數據模型,又稱實體-聯系模型,它用簡單的圖形反映出現實世界中存在著的數據及其之間的相互關系。它既不依賴于具體的硬件特性,也不依賴于具體的DBMS的性能,它僅僅對應于基本的事實,可以為非計算機工作人員所理解。 數據庫邏輯結構的設計,應該是選擇最適合于用戶的概念結構

溫馨提示

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

評論

0/150

提交評論