[精品]數(shù)據(jù)庫復習資料_第1頁
[精品]數(shù)據(jù)庫復習資料_第2頁
[精品]數(shù)據(jù)庫復習資料_第3頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第四章數(shù)據(jù)庫安全TCSEC級另U戈U分:D級,C1級,C2級,B1級,B2級,B3級,A1級存取控制: DAC C2 MAC B1會寫權限授予與回收: grant, revoke 語句第五章數(shù)據(jù)庫完整性實體完整性1 實體完整性定義:關系模型的實體完整性:CREATE TABLE 中用PRIMARY KEY定義單屬性構成的碼有兩種說明方法:定義為列級約束條件;定義為表級約束條件 對多個屬性構成的碼只有一種說明方法:定義為表級約束條件2 實體完整性檢查和違約處理:插入或對主碼列進行更新操作時,RDBMS 按照實體完整性 規(guī)則自動進行檢查。包括: 1.檢查主碼值是否唯一,如果不唯一則拒絕插入或修改2

2、.檢查 主碼的各個屬性是否為空,只要有一個為空就拒絕插入或修改參照完整性1 關系模型的參照完整性定義:在 CREATE TABLE 中用 FOREIGN KEY 短語定義哪些列 為外 碼;用 REFERENCES 短語指明這些外碼參照哪些表的主碼2 參照完整性違約處理:拒絕 (NO ACTION) 執(zhí)行,默認策略;級聯(lián) (CASCADE) 操作;設置 為空值(SET-NULL),對于參照完整性,除了應該定義外碼,還應定義外碼列是否允許空值用戶定義的完整性用戶定義的完整性就是針對某一具體應用的數(shù)據(jù)必須滿足的語義要,RDBMS 提供,而不必 由應用程序承擔1 屬性上 的 約束 條 件的 定義: C

3、REATE TABLE 時定義 : 列值 非空 (NOTNULL), 列 值 唯一 (UNIQUE), 檢查列值是否滿足一個布爾表達式 (CHECK)2 屬性上的約束條件檢查和違約處:插入元組或修改屬性的值時,RDBMS 檢查屬性上的約 束條件是否被滿足,如果不滿足則操作被拒絕執(zhí)行3 元組上的約束條件的定義:在 CREATE TABLE 時可以用 CHECK 短語定義元組上的約束 條件,即元組級的限制,同屬性值限制相比,元組級的限制可以設置不同屬性之間的取值的相互約束條件4 元組上的約束條件檢查和違約處理:插入元組或修改屬性的值時,RDBMS 檢查元組上的 約束條件是否被滿足,如果不滿足則操作

4、被拒絕執(zhí)行觸發(fā)器觸發(fā)器 ( Trigger) 是用戶定義在關系表上的一類由事件驅動的特殊過程,由服務器自動激活, 可以進行更為復雜的檢查和操作,具有更精細和更強大的數(shù)據(jù)控制能力1 定義觸發(fā)器:CREATE TRIGGER 語法格式CREATE TRIGGER 觸發(fā)器名(BEFORE I AFTER) 觸發(fā)事件 ON 表名FOR EACH ROW I STATEMENT)WHEN觸發(fā)條件觸發(fā)動作體2 激活觸發(fā)器 觸發(fā)器的執(zhí)行,是由觸發(fā)事件激活的,并由數(shù)據(jù)庫服務器自動執(zhí)行,一個數(shù)據(jù)表上可能定義 了多個觸發(fā)器同一個表上的多個觸發(fā)器激活時遵循如下的執(zhí)行順序:(1) 執(zhí)行該表上的BEFORE 觸發(fā)器;(

5、2) 激活觸發(fā)器的SQL 語句;(3) 執(zhí)行該表上的AFTER 觸發(fā)器。3 刪除觸發(fā)器刪除觸發(fā)器的 SQL 語法:DROP TRIGGER 觸發(fā)器名 ON 表名; 觸發(fā)器必須是一個已經(jīng)創(chuàng)建的觸發(fā)器,并且只能由具有相應權限的用戶刪除。 第六章關系數(shù)據(jù)理論1 規(guī)范化 完全函數(shù)依賴和部分函數(shù)依賴:定義 6.2例 1 中 (Sno,Cno)-Grade 是完全函數(shù)依賴,(Sno,CnoLSdept 是部分函數(shù)依賴因為Sno "Sdept成立,且 Sno是(Sno, Cno)的真子集傳遞函數(shù)依賴:定義 6.3在關系 Std(Sno, Sdept, Mname) 中,有: Sno Sdept,

6、Sdept MnameMname 傳遞函數(shù)依賴于 Sno范式第一范式 (1NF) :如果一個關系模式 R 的所有屬性都是不可分的基本數(shù)據(jù)項,則 RG1NF 第二范式 (2NF) :若 ReiNF, 且每一個非主屬性完全函數(shù)依賴于碼,則 RG2NF第三范式(3NF):設關系模式 R,當R上每一個X-A滿足下列條件之一時:X 是 R 的超碼; A 是主屬性,關系模式 R 就是 3NF 模式。BC 范式 (BCNF) :關系模式 R<U, F>G1NF, 若 X-Y 且 Y Q X 時 X 必含有碼,則 R<U,F> EBCNFo 等價于:每一個決定因素都包含碼都含第四范式

7、(4NF) :關系模式 R<U, F>eiNF, 如果對于 R 的每個非平凡多值依賴X-Y (Y cX), X有碼,貝ijR塑NFo關系模式規(guī)范化的基本步驟:1NFI 消除非主屬性對碼的部分函數(shù)依賴消除決定屬性集非碼的非平凡函數(shù)依賴2NFI 消除非主屬性對碼的傳遞函數(shù)依賴3NFI 消除主屬性對碼的部分和傳遞函數(shù)依賴BCNFI消除非平凡且非函數(shù)依賴的多值依賴4NF2Armstrong公理系統(tǒng)自反律,增廣律,傳遞律函數(shù)依賴閉包:定義6.12,定義6.13求屬性集閉包的算法:算法6.1例 已知關系模式 R<U,玲,其中 U=A, B, C, D, E ; F=AB C, B D,

8、C-E, EC B, AC B。 求(AB) F+。解設 X (0) =AB ;(1) X =AB U CD=ABCD?(2) X (0) # X (1), X =X (1) UBE=ABCDE 。 X (2) =U,算法終止 一(AB) F+ =ABCDE最小依賴集:定義 6.15極小化過程:定理 6.3例 F=A-B, B-A, B C, A-C, C AFml、Fm2都是F的最小依賴集:Fml= A B, B C, CAFm2= A B, B A, A-C, C AF的最小依賴集Fm不唯一模式的分解具有無損連接性的模式分解:關系模式R<U,F>的一個分解P = RKU1.F1

9、>,R2<U2,F2>, Rn<Un,Fn>,若R與Rl、R2、. 、Rn自然連接的結果相等,則稱關系模式R的這個分解P具有無損連接性(Lossless join)保持函數(shù)依賴的模式分解:設關系模式R<U,F>被分解為若干個關系模式R1<U1,F1>,R2<U2,F2>, RnvUn,Fn > 其中 U=U1U U2U.UUn,且不存在 Ui c Uj, Fi 為 F 在 Ui 上的投影), 若F所邏輯蘊含的函數(shù)依賴一定也由分解得到的某個關系模式中的函數(shù)依賴Fi所邏輯蘊含,則稱關系模式 R的這個分解是保持函數(shù)依賴的 (Pr

10、eserve dependency)例:S-L (Sno, Sdept, Sloe)F= Sno Sdept,Sdept 一 Sloc,Sno SloeS-LU2NF分解方法可以有多種:1. S-L 分解為二個關系模式:SN(S no ),SD(Sdept),SO(Sloc)2. SL 分解為下面二個關系模式:NL(S no, Sloc),DL(Sdept, Sloe)3. 將SL分解為下面二個關系模式:ND(Sno, Sdept),L(Sno, Sloe)第3種分解方法具有無損連接性將SL分解為下面二個關系模式ND(Sno, Sdept),DL(Sdept, Sloe)這種分解方法就保持了函

11、數(shù)依賴第七章數(shù)據(jù)庫設計數(shù)據(jù)庫設計的基本步驟(p201)I可以獨立于任何數(shù)據(jù)庫管理系統(tǒng)進行1. 需求分析2. 概念結構設計3. 邏輯結構設計 I 與選用的 DBMS 密切相關4. 物理結構設計5. 數(shù)據(jù)庫實施6. 數(shù)據(jù)庫運行和維護需求分析 ( P205) : DFD 數(shù)據(jù)流程圖 DD 數(shù)據(jù)流概念結構設計 (P209) : E-R 模型邏輯結構設計 (P224): E-R 圖向關系模型的轉換數(shù)據(jù)庫運行和維護 (P233) : 1.數(shù)據(jù)庫的轉儲和恢復2. 數(shù)據(jù)庫的安全性、完整性控制3. 數(shù)據(jù)庫性能的監(jiān)督、分析和改造4. 數(shù)據(jù)庫的重組織與重構造第十章數(shù)據(jù)庫恢復技術事務(P278):是用戶定義的一個數(shù)據(jù)

12、庫操作實例,這些操作要么全做要么全不做,是一個不 分割的工作單元。在 SQL 中,定義事務的語句有 3 條BEGIN TRANSACTIONCOMMIT (提交事務的所有操作 )ROLLBACK ( 撤銷事務 )/ 原子性 (Atomicity)事務的特性 ( ACID) y 一致性 ( Consistency)(P279)隔離性 ( Isolation)持續(xù)性 ( Durability)事務內(nèi)部的故障系統(tǒng)故障數(shù)據(jù)庫系統(tǒng)中的故障種類 (P280-281) |介質故障計算機病毒UNDO 事務撤銷)故障恢復策略 ( P285-286) 事務故障的恢復:反向掃描日志文件逆操作( 系統(tǒng)故障的恢復:正向

13、掃描日志文件故障發(fā)生前已提交的事務( REDO ) 反向掃描日志文件未完成的事務( UNDO ) 介質故障的恢復:裝入最新的數(shù)據(jù)庫后備副本 裝入相應的日志文件副本,重做已完成的事務恢復的實現(xiàn)技術靜態(tài)轉儲1. 數(shù)據(jù)轉儲 (backup) <(P282-283)動態(tài)轉儲2. 登記 H 志文件( Logging ) ( P283-284 ) 登記日志文件時必須遵循兩條原則: 登記的次序嚴格按并發(fā)事務執(zhí)行的時間順序 必須先寫日志文件,后寫數(shù)據(jù)庫第十一章并發(fā)控制 為何需要并發(fā)控制:數(shù)據(jù)庫(共享)事務( ACID )' 交叉并行方式并行執(zhí)行方式 (P292T、同時并發(fā)方式對并發(fā)操作進行正確調

14、度 并發(fā)控制機制的任務 < 保證事務的隔離性和一致性P293)丟失修改(寫寫沖突) 數(shù)據(jù)三種不一致 J 不可重復讀(讀寫沖突) (P293-294) 讀 “臟”數(shù)據(jù)(寫讀沖突)讀數(shù)據(jù)X記為R (X ),寫數(shù)據(jù)X記為R (X )數(shù)據(jù)的不一致性:由于并發(fā)操作破壞了事務的隔離性封鎖(一般商用的 DBMS 采用此法)并發(fā)控制的主要技術 時間戳樂觀控制法(驗證)悲觀控制法(封鎖)樂觀控制法:用戶讀數(shù)據(jù)時不鎖定數(shù)據(jù)。 悲觀控制法:鎖定系統(tǒng)阻止用戶以影響其它用戶的方式修改數(shù)據(jù)。封鎖協(xié)議:兩段鎖(并不能避免死鎖)和三級鎖封鎖( P294-296 ) :就是事務 T 在對某個數(shù)據(jù)對象例如表、記錄等操作之前,先向系統(tǒng)發(fā)出請求,對其加鎖?;镜姆怄i類型:排它鎖( X 鎖)又稱為寫鎖共享鎖( S 鎖)又稱為讀鎖封鎖的方法可能引起活鎖和死鎖等問題 避免活鎖的方法: FIFO 先來先服務( P297 ) 死鎖的預防:一次封鎖法和順序封鎖法 ( P297-298 ) 死鎖的診斷 : 超時法和等待圖法( P298 ) 死鎖的解除:選擇一個處理死鎖代價最小的事務,將其撤消,釋放此事務持有的所有的鎖, 使 其他事務得以繼續(xù)運行下去。并行調度的可串行性可串行化調度( P299) :

溫馨提示

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

評論

0/150

提交評論