




已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1 第5章數(shù)據(jù)庫(kù)完整性 2 數(shù)據(jù)庫(kù)的完整性是指保護(hù)數(shù)據(jù)庫(kù)中數(shù)據(jù)的正確性 有效性和相容性 防止錯(cuò)誤的數(shù)據(jù)進(jìn)入數(shù)據(jù)庫(kù)造成無(wú)效操作 一些完整性約束的例子 比如年齡屬于數(shù)值型數(shù)據(jù) 只能含0 1 9 不能含字母或特殊符號(hào) 月份只能取1 12之間的正整數(shù) 表示同一事實(shí)的兩個(gè)數(shù)據(jù)應(yīng)相同 否則就不相容 如一個(gè)人不能有兩個(gè)學(xué)號(hào) 維護(hù)數(shù)據(jù)庫(kù)的完整性非常重要 數(shù)據(jù)庫(kù)中的數(shù)據(jù)是否具備完整性關(guān)系到數(shù)據(jù)能否真實(shí)地反映現(xiàn)實(shí)世界 5 1數(shù)據(jù)庫(kù)完整性的含義 3 數(shù)據(jù)庫(kù)的完整性和安全性是數(shù)據(jù)庫(kù)保護(hù)的兩個(gè)不同的方面 安全性是保護(hù)數(shù)據(jù)庫(kù) 以防止非法使用所造成數(shù)據(jù)的泄露 更改或破壞 安全性措施的防范對(duì)象是非法用戶和非法操作 完整性是防止合法用戶使用數(shù)據(jù)庫(kù)時(shí)向數(shù)據(jù)庫(kù)中加入不符合語(yǔ)義的數(shù)據(jù) 完整性措施的防范對(duì)象是不合語(yǔ)義的數(shù)據(jù) 5 1數(shù)據(jù)庫(kù)完整性的含義 續(xù) 4 為了實(shí)現(xiàn)完整性控制 數(shù)據(jù)庫(kù)管理員應(yīng)向DBMS提出一組完整性規(guī)則 來(lái)檢查數(shù)據(jù)庫(kù)中的數(shù)據(jù) 看其是否滿足語(yǔ)義約束 這些語(yǔ)義約束構(gòu)成了數(shù)據(jù)庫(kù)的完整性規(guī)則 這組規(guī)則作為DBMS控制數(shù)據(jù)完整性的依據(jù) 它定義了何時(shí)檢查 檢查什么 查出錯(cuò)誤又怎樣處理等事項(xiàng) 5 2完整性規(guī)則的組成 5 5 2完整性規(guī)則的組成 續(xù) 具體地說(shuō) 完整性規(guī)則主要由以下三部分構(gòu)成 1 觸發(fā)條件 規(guī)定系統(tǒng)什么時(shí)候使用規(guī)則檢查數(shù)據(jù) 2 約束條件 規(guī)定系統(tǒng)檢查用戶發(fā)出的操作請(qǐng)求違背了什么樣的完整性約束條件 3 違約響應(yīng) 規(guī)定系統(tǒng)如果發(fā)現(xiàn)用戶的操作請(qǐng)求違背了完整性約束條件 應(yīng)該采取一定的動(dòng)作來(lái)保證數(shù)據(jù)的完整性 即違約時(shí)要做的事情 6 一條完整性規(guī)則可以用一個(gè)五元組 D O A C P 來(lái)形式化地表示 其中 D data 代表約束作用的數(shù)據(jù)對(duì)象 O operation 代表觸發(fā)完整性檢查的數(shù)據(jù)庫(kù)操作 即當(dāng)用戶發(fā)出什么操作請(qǐng)求時(shí)需要檢查該完整性規(guī)則 A assertion 代表數(shù)據(jù)對(duì)象必須滿足的語(yǔ)義約束 這是規(guī)則的主體 C condition 代表選擇A作用的數(shù)據(jù)對(duì)象值的謂詞 P procdure 代表違反完整性規(guī)則時(shí)觸發(fā)執(zhí)行的操作過(guò)程 5 2完整性規(guī)則的組成 續(xù) 7 例如 對(duì)于 學(xué)號(hào)不能為空 的這條完整性約束 D 代表約束作用的數(shù)據(jù)對(duì)象為SNO屬性 O operation 當(dāng)用戶插入或修改數(shù)據(jù)時(shí)需要檢查該完整性規(guī)則 A assertion SNO不能為空 C condition A可作用于所有記錄的SNO屬性 P procdure 拒絕執(zhí)行用戶請(qǐng)求 8 5 4完整性規(guī)則的執(zhí)行 完整性規(guī)則從執(zhí)行時(shí)間上可分為立即執(zhí)行約束和延遲執(zhí)行約束立即執(zhí)行約束是指在執(zhí)行用戶事務(wù)過(guò)程中 某一條語(yǔ)句執(zhí)行完成后 系統(tǒng)立即對(duì)此數(shù)據(jù)進(jìn)行完整性約束條件檢查 延遲執(zhí)行約束是指在整個(gè)事務(wù)執(zhí)行結(jié)束后 再對(duì)約束條件進(jìn)行完整性檢查 結(jié)果正確后才能提交 例如 銀行數(shù)據(jù)庫(kù)中 借貸總金額應(yīng)平衡 的約束就應(yīng)該屬于延遲執(zhí)行約束 從賬號(hào)A轉(zhuǎn)一筆錢到賬號(hào)B為一個(gè)事務(wù) 從賬號(hào)A轉(zhuǎn)出去錢后 賬就不平了 必須等轉(zhuǎn)入賬號(hào)B后 賬才能重新平衡 這時(shí)才能進(jìn)行完整性檢查 9 5 4完整性規(guī)則的執(zhí)行 續(xù) 如果發(fā)現(xiàn)用戶操作請(qǐng)求違背了立即執(zhí)行約束 則可以拒絕該操作 以保護(hù)數(shù)據(jù)的完整性 如果發(fā)現(xiàn)用戶操作請(qǐng)求違背了延遲執(zhí)行約束 而又不知道是哪個(gè)事務(wù)的操作破壞了完整性 則只能拒絕整個(gè)事務(wù) 把數(shù)據(jù)庫(kù)恢復(fù)到該事務(wù)執(zhí)行前的狀態(tài) 10 5 5關(guān)系模型的完整性 關(guān)系模型的完整性包括實(shí)體完整性 參照完整性和用戶定義完整性 對(duì)于違反實(shí)體完整性和用戶定義完整性規(guī)則的操作一般都是采用拒絕執(zhí)行的方式進(jìn)行處理 11 對(duì)于違反參照完整性的操作 并不都是簡(jiǎn)單的拒絕執(zhí)行 一般在接受這個(gè)操作的同時(shí) 執(zhí)行一些附加的操作 以保證數(shù)據(jù)庫(kù)的狀態(tài)仍然是正確的 在被參照關(guān)系中刪除元組時(shí)可有三種不同的策略 級(jí)聯(lián)刪除 將參照關(guān)系中所有外碼值與被參照關(guān)系中要?jiǎng)h除元組主碼值相同的元組一起刪除 受限刪除 僅當(dāng)參照關(guān)系中沒(méi)有任何元組的外碼值與被參照關(guān)系中的主碼值相同時(shí) 系統(tǒng)才執(zhí)行刪除操作 否則拒絕此刪除操作 置空值刪除 刪除被參照關(guān)系的元組 并將參照關(guān)系中相應(yīng)元組的外碼值置空值 5 5關(guān)系模型的完整性 續(xù) 12 5 5關(guān)系模型的完整性 續(xù) 在參照關(guān)系中插入元組時(shí)的策略受限插入 僅當(dāng)被參照關(guān)系中存在此相應(yīng)元組 其主碼值與參照關(guān)系插入元組的外碼值相同時(shí) 系統(tǒng)才執(zhí)行相應(yīng)操作 否則拒絕此操作 遞歸插入 首先向北參照關(guān)系插入相應(yīng)的元組 其主碼值等于參照關(guān)系插入元組的外碼值 然后向參照關(guān)系插入元組 13 5 5關(guān)系模型的完整性 續(xù) 修改關(guān)系中主碼的問(wèn)題 不允許修改主碼允許修改主碼 但必須保證主碼的唯一性和非空 當(dāng)修改的關(guān)系是被參照關(guān)系時(shí) 還必須檢查參照關(guān)系 有三種策略 級(jí)聯(lián)修改受限修改置空置修改 14 5 6完整性約束條件的分類 從約束條件使用的對(duì)象分可分為 列約束 列的類型 取值范圍等元組約束 元組中各個(gè)字段間聯(lián)系的約束關(guān)系約束 關(guān)系之間聯(lián)系的約束從約束對(duì)象的狀態(tài)分為 靜態(tài)約束 指對(duì)數(shù)據(jù)庫(kù)每一個(gè)確定狀態(tài)所應(yīng)滿足的約束條件 是反映數(shù)據(jù)庫(kù)狀態(tài)合理性的約束 動(dòng)態(tài)約束 指數(shù)據(jù)庫(kù)從一種狀態(tài)轉(zhuǎn)變?yōu)榱硪环N狀態(tài)時(shí) 新舊值之間所應(yīng)滿足的約束條件 動(dòng)態(tài)約束反映的是數(shù)據(jù)庫(kù)狀態(tài)變遷的約束 15 小結(jié) 數(shù)據(jù)庫(kù)中的完整性約束規(guī)則由DBMS提供的語(yǔ)句進(jìn)行描述 經(jīng)過(guò)編譯后存放在數(shù)據(jù)字典中 數(shù)據(jù)庫(kù)完整性約束的主要優(yōu)點(diǎn)是違約由系統(tǒng)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 安全月知識(shí)試題及答案
- 工業(yè)互聯(lián)網(wǎng)平臺(tái)計(jì)算機(jī)視覺技術(shù)在航空航天液壓系統(tǒng)制造缺陷檢測(cè)的應(yīng)用前景報(bào)告001
- 安全生產(chǎn)考核試題及答案
- 安全焊接試題及答案
- 農(nóng)村金融服務(wù)創(chuàng)新與農(nóng)村金融市場(chǎng)競(jìng)爭(zhēng)策略研究報(bào)告001
- 激光祛斑培訓(xùn)課件
- 培訓(xùn)課件通知模板圖片
- 中國(guó)區(qū)域地理復(fù)習(xí)課課件
- 中國(guó)功夫歌唱課件大全
- 左心衰竭臨床護(hù)理
- 機(jī)型理論-4c172實(shí)用類重量平衡
- 校企合作項(xiàng)目立項(xiàng)申請(qǐng)表(模板)
- 假貨鑒定報(bào)告
- 管道工廠化預(yù)制推廣應(yīng)用課件
- 海水的淡化精品課件
- 河流改道施工方案
- 項(xiàng)目工程移交生產(chǎn)驗(yàn)收?qǐng)?bào)告
- 清華大學(xué)美術(shù)學(xué)院陶瓷藝術(shù)設(shè)計(jì)系研究生導(dǎo)師及研究課題
- 計(jì)算機(jī)控制實(shí)驗(yàn)報(bào)告初稿(共31頁(yè))
- 抗磷脂抗體與抗磷脂綜合征.ppt
- 光伏發(fā)電項(xiàng)目工程質(zhì)量管理方案計(jì)劃策劃書
評(píng)論
0/150
提交評(píng)論