




已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(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ù)造成無效操作 一些完整性約束的例子 比如年齡屬于數(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ù)中加入不符合語義的數(shù)據(jù) 完整性措施的防范對(duì)象是不合語義的數(shù)據(jù) 5 1數(shù)據(jù)庫(kù)完整性的含義 續(xù) 4 為了實(shí)現(xiàn)完整性控制 數(shù)據(jù)庫(kù)管理員應(yīng)向DBMS提出一組完整性規(guī)則 來檢查數(shù)據(jù)庫(kù)中的數(shù)據(jù) 看其是否滿足語義約束 這些語義約束構(gòu)成了數(shù)據(jù)庫(kù)的完整性規(guī)則 這組規(guī)則作為DBMS控制數(shù)據(jù)完整性的依據(jù) 它定義了何時(shí)檢查 檢查什么 查出錯(cuò)誤又怎樣處理等事項(xiàng) 5 2完整性規(guī)則的組成 5 5 2完整性規(guī)則的組成 續(xù) 具體地說 完整性規(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)作來保證數(shù)據(jù)的完整性 即違約時(shí)要做的事情 6 一條完整性規(guī)則可以用一個(gè)五元組 D O A C P 來形式化地表示 其中 D data 代表約束作用的數(shù)據(jù)對(duì)象 O operation 代表觸發(fā)完整性檢查的數(shù)據(jù)庫(kù)操作 即當(dāng)用戶發(fā)出什么操作請(qǐng)求時(shí)需要檢查該完整性規(guī)則 A assertion 代表數(shù)據(jù)對(duì)象必須滿足的語義約束 這是規(guī)則的主體 C condition 代表選擇A作用的數(shù)據(jù)對(duì)象值的謂詞 P procdure 代表違反完整性規(guī)則時(shí)觸發(fā)執(zhí)行的操作過程 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ù)過程中 某一條語句執(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)系中沒有任何元組的外碼值與被參照關(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)系中主碼的問題 不允許修改主碼允許修改主碼 但必須保證主碼的唯一性和非空 當(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提供的語句進(jìn)行描述 經(jīng)過編譯后存放在數(shù)據(jù)字典中 數(shù)據(jù)庫(kù)完整性約束的主要優(yōu)點(diǎn)是違約由系統(tǒng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- CJ/T 235-2006立式長(zhǎng)軸泵
- CJ 5024-1997電子式出租汽車計(jì)價(jià)器
- 河北八大員證考試試題及答案
- Msoffice在考試中的實(shí)際應(yīng)用研究試題及答案
- 社會(huì)工作者的創(chuàng)新方法與實(shí)踐案例試題及答案
- 完整知識(shí)體系初級(jí)社會(huì)工作者試題及答案
- 信息管理三級(jí)考試實(shí)回顧及答案
- 考試趨勢(shì)2025年網(wǎng)絡(luò)規(guī)劃設(shè)計(jì)師的校驗(yàn)機(jī)制及試題及答案
- 立體模具庫(kù)管理制度
- 澳門富豪酒店管理制度
- 六旋翼無人機(jī)的設(shè)計(jì)(畢業(yè)設(shè)計(jì))
- 《低段培智學(xué)生行為習(xí)慣養(yǎng)成教育的研究》小課題研究中期報(bào)告
- TC4鈦合金拉拔工藝探索
- 八年級(jí)數(shù)學(xué)上冊(cè)《平方差公式》的教學(xué)反思(優(yōu)秀3篇)
- 填石路堤沉降差檢測(cè)記錄表
- “鄉(xiāng)村振興”戰(zhàn)略應(yīng)知應(yīng)會(huì)試題及答案(分享)
- 衢州萬達(dá)暖通工程施工方案(最終版)
- 學(xué)校端午假期致學(xué)生家長(zhǎng)一封信
- 遺傳自制習(xí)題答案?jìng)€(gè)我
- 鏈輪齒數(shù)尺寸對(duì)照表三
- 植物生理學(xué)第九章光形態(tài)建成.ppt
評(píng)論
0/150
提交評(píng)論