版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第七章事務(wù)處理與數(shù)據(jù)保護(hù)1精選課件ppt第一節(jié)數(shù)據(jù)授權(quán)一什么叫數(shù)據(jù)授權(quán)對(duì)用戶使用數(shù)據(jù)庫的操作權(quán)限進(jìn)行規(guī)定稱為數(shù)據(jù)授權(quán)。只有獲得權(quán)限的用戶才能對(duì)數(shù)據(jù)庫進(jìn)行指定的操作。授權(quán)者數(shù)據(jù)庫管理員,數(shù)據(jù)庫表的建立者,已經(jīng)獲得授權(quán)許可的用戶。2精選課件ppt三操作對(duì)象與權(quán)限表,屬性查詢,插入,更新,刪除,ALL數(shù)據(jù)庫建立索引建立,刪除視圖同表3精選課件ppt四授權(quán)語句GRANT權(quán)限1,…,權(quán)限nON對(duì)象類型對(duì)象名TO用戶1,…,[withGRANTOPTION]作用:1.把指定對(duì)象上的一組權(quán)限授予一組用戶。2.WITHGRANTOPTION的作用進(jìn)行授權(quán)傳遞。4精選課件ppt舉例1.將對(duì)XS表的所有權(quán)限授予張三,并進(jìn)行授權(quán)傳遞。
GRANTALLONTABLEXSTO“張三”
WITHGRANTOPTION2.將對(duì)XK表CJ屬性進(jìn)行修改的權(quán)限授予李四。
GRANTUPDATEONTABLEXK(CJ)TO“李四”5精選課件ppt權(quán)限收回收回對(duì)用戶的授權(quán)操作及授權(quán)傳遞。
REVOKE權(quán)限1,…,權(quán)限nON對(duì)象類型對(duì)象名FROM用戶[CASCADE|RESTRICT]
作用:CASCADE表示收回操作權(quán)限,同時(shí)收回他所做的授權(quán)傳遞。
RESTRICT表示當(dāng)用戶已經(jīng)獲得授權(quán)傳遞后,禁止權(quán)限收回。
6精選課件ppt例:REVOKEALLONXSFROM“張三”RESTRICTREVOKEALLONXSFROM“張三”CASCADE第一條不能執(zhí)行,第二條能執(zhí)行。7精選課件ppt第二節(jié)數(shù)據(jù)完整性一碼的完整性1.當(dāng)表確定主碼后,主碼不能為空。2.定義主碼的方法:在建表時(shí)用KEY或PRIMARYKEY(…)定義.域的完整性1.限制屬性的取值范圍2.方法:CHECK(條件)例:在選課表中限定CJ的取值范圍在0到100之間。8精選課件pptCREATTABLEXK(XHC(10),KHC(3),CJINTCHECKCJBETWEEN0AND100)三參照完整性1.外碼若屬性A在R中被指定為主碼,而A又出現(xiàn)在S中,則A稱為S的外碼。例如XH在XK表中是外碼。9精選課件ppt2外碼說明語句foreignkey外碼references表名(屬性)說明:(1)表名是指外碼作為主碼的表。(2).外碼名可以與作為主碼的名相同或不相同。(3).該語句應(yīng)在建表語句中說明。例:在XK表中說明XH是外碼。10精選課件pptCREATETABLEXK(XHC(8),KHC(3),CJINT,foreignkeyxhreferencesxs(xh))3參照完整性規(guī)則(1)外碼必須在主表中出現(xiàn)。(2)外碼可以設(shè)置為空。11精選課件ppt4.實(shí)現(xiàn)完整性的方法(1)級(jí)聯(lián)規(guī)則(CASCADE).主表作刪除時(shí),外碼所在表的元組也一并刪除。.在更新時(shí),外碼也作相應(yīng)更新。(2)置空規(guī)則(setnull).主表作刪除時(shí),外碼置為空。12精選課件ppt語句:ON{DELETE|UPDATE}{CASCADE|SETNULL}例:為XK表設(shè)置參照完整性規(guī)則。CREATETABLEXK(XHC(8),KHC(3),CJINT,foreignkeyxhreferencesxs(xh)ondeletecascadeonupdatecascade)請(qǐng)問:KH如何設(shè)置參照完整性?13精選課件ppt5.注意:在VFP中,通過對(duì)數(shù)據(jù)庫表建立連接,實(shí)現(xiàn)參照完整性。方法:在主表中對(duì)主碼建主索引,次表中建普通索引。通過鼠標(biāo)操作。然后設(shè)置參照完整性。14精選課件ppt第三節(jié)斷言與觸發(fā)器一斷言1.定義設(shè)置數(shù)據(jù)庫應(yīng)滿足的條件;2.格式:CREATEASSERTION斷言名CHECK條件說明:當(dāng)條件為假時(shí),DBMS終止操作,并提示用戶。15精選課件ppt例:限制每門課的選課人數(shù)不能超過100人。CREATEASSERTIONRSXZCHECK100>=ALL(SELECTCOUNT(XH)FROMXKGROUPBYKH請(qǐng)問:如何寫一斷言限制學(xué)生選課門數(shù)超過8門。16精選課件pptCREATEASSERTIONXKMSCHECK(8>=ALL(SELECTCOUNT(*)FROMXKGROUPBYXH)17精選課件ppt
觸發(fā)器1.事件:引起數(shù)據(jù)庫的狀態(tài)發(fā)生改變的操作。
2.定義:當(dāng)設(shè)定的事件發(fā)生時(shí),由DBMS自動(dòng)啟動(dòng)的維護(hù)數(shù)據(jù)庫一致性的程序。3.觸發(fā)事件:能夠啟動(dòng)觸發(fā)器的事件。
刪除(DELETE),插入(INSERT),更新(
UPDATEOF屬性。18精選課件ppt觸發(fā)時(shí)間:BEFOR;在操作前觸發(fā)AFTER:在操作后觸發(fā)INSTEADOF:取代操作。3觸發(fā)條件:執(zhí)行觸發(fā)器操作的條件。4觸發(fā)粒度:引起觸發(fā)器工作的數(shù)據(jù)單位。行粒度:(FOREACHROW)表粒度(FOREACHSTATMENT)5操作:一組SQL語句,或其他語句。19精選課件ppt三語句與執(zhí)行1格式:CREATETRIGGER觸發(fā)器名{before|after|insteadof屬性{insert|delete|updateof屬性名}ON表名referencing[oldas元組名][newas元組名][oldtableas表名][newtableas表名][foreachrow|forstatement][when條件]語句序列。
20精選課件ppt2說明:刪除事件只有舊表或舊行。插入事件只有新表或新行。更新事件既有舊表,舊行,也有新表,新行。觸發(fā)器的啟動(dòng)和執(zhí)行當(dāng)觸發(fā)事件發(fā)生時(shí),觸發(fā)器被激活,如果觸發(fā)條件成立,則執(zhí)行觸發(fā)器的操作,然后返回應(yīng)用程序繼續(xù)執(zhí)行。
21精選課件ppt在VFP中,觸發(fā)器的定義為CREATETRIGGERON表名FOR{DELETE|INSERT|UPDATE}AS條件作用:當(dāng)條件為真時(shí),執(zhí)行觸發(fā)事件;當(dāng)條件為假時(shí),執(zhí)行事件失敗。利用觸發(fā)器禁止對(duì)學(xué)生表的插入。
22精選課件pptCREATETRIGGERONA:\DBF\XSFORINSERTAS.F.問:若F改為T,效果如何?23精選課件ppt四舉例例1設(shè)TZS表存放應(yīng)特別關(guān)照的學(xué)生名單,由(XH,LY)組成。根據(jù)學(xué)校規(guī)定,這些學(xué)生每門功課至少及格,請(qǐng)?jiān)O(shè)計(jì)觸發(fā)器。分析:引起不及格的操作有:插入,更新。當(dāng)這些學(xué)生的成績出現(xiàn)不及格時(shí),觸發(fā)器應(yīng)自動(dòng)作出糾正。24精選課件pptCREATTRIGGERTZSZGAFTERUPDATEONXK(CJ)AFTERINSERTONXKREFERENCINGNEWASNEW_TUPLEFOREACHROWWHENNEW_TUPLE.XHIN(SELECTXHFROMTZS)ANDNEW_TUPLE.CJ<6025精選課件pptUPDATEXKSETCJ=60WHERENEW_TUPLE.KH=XK.KHANDNEW_TUPLE.XH=XK.XH問題:1為什么不選擇BEFORE時(shí)間觸發(fā)?2若選擇INSTEADOF,觸發(fā)器還正確嗎?26精選課件ppt例2請(qǐng)?jiān)O(shè)計(jì)觸發(fā)器,限制所有信息學(xué)院的學(xué)生選課門數(shù)不得超過8門。分析:引起選課門數(shù)增加的原因是插入。CREATETRIGGERXZXKSBEFOREINSERTONXKREFERENCINGNEWASNEW_TUPLEFOREACHROW27精選課件pptWHEN(SELECTCOUNT(*)FROMXS,XKWHERESZYX=“信息”ANDXS.XH=XK.XHANDXS.XH=NEW_TUPLE.XH)>=8ROLLBACK問題:1若時(shí)間選擇AFTER,怎樣設(shè)計(jì)觸發(fā)器。2若約束條件為至少為6門,又怎樣設(shè)計(jì)。
28精選課件pptCREATETRIGGERXZXKSBEFOREDELETEONXKREFERENCINGOLDASOLD_TUPLEFOREACHROWWHEN(SELECTCOUNT(*)FROMXS,XKWHERESZYX=“信息”ANDXS.XH=XK.XHANDXS.XH=OLD_TUPLE.XH)<=6ROLLBACK
29精選課件ppt五觸發(fā)器的刪除格式:DROPTRIGGER觸發(fā)器名VFP用DELETETRIGGERON表名FOR{DELETE|INSERT|UPDATE}作用:取消觸發(fā)器的檢查,從DBMS的實(shí)時(shí)檢測(cè)程序中那掉該觸發(fā)器模塊。30精選課件ppt第四節(jié)數(shù)據(jù)恢復(fù)一事務(wù)的基本概念1.定義事務(wù)是由一個(gè)或幾個(gè)數(shù)據(jù)庫操作組成的操作序列,是數(shù)據(jù)庫系統(tǒng)的基本執(zhí)行單位。2定義事務(wù)的方法標(biāo)志法:BEGINTRANSACTION結(jié)束COMMIT或ROLLABCK缺省法每次數(shù)據(jù)庫操作自動(dòng)設(shè)定為一個(gè)事務(wù)。
31精選課件ppt3終止事務(wù)的兩種方法:.COMMIT(提交)當(dāng)事務(wù)完成該事務(wù)規(guī)定的功能,使用COMMIT結(jié)束事務(wù)。.ROLLBACK(回滾或撤消)當(dāng)事務(wù)無法完成該事務(wù)的功能,而被迫取消該事務(wù)時(shí),用ROLLBACK。32精選課件ppt分析一個(gè)例子例1:這是一個(gè)銀行轉(zhuǎn)帳的事務(wù)EXECSQLbegintrasactionscanf(“%d”,&x);scanf(“%d”,&y);scanf(“%d”,&z);EXECSQLUPDATEZBSETYE=YE-:ZWHEREZH=:X;33精選課件pptEXECSQLUPDATEZBSETYE=YE+:ZWHEREZH=:Y;EXECSQLENDTRASACTION;特征:當(dāng)這筆轉(zhuǎn)帳業(yè)務(wù)完成,事務(wù)正常結(jié)束。問:什么情況下,該事務(wù)不能正常結(jié)束。
34精選課件ppt事務(wù)的特征1.原子性:A(atomicity)事務(wù)要么被正確執(zhí)行,要么就等于不執(zhí)行。2.一致性
C(consistency)
如果事務(wù)單獨(dú)執(zhí)行,對(duì)數(shù)據(jù)庫的操作就一定正確。3.孤立性I(isolation):并行性4.持久性D(durability):事務(wù)一旦被提交,其結(jié)果就要被長期保存。
35精選課件ppt分析例1的ACID特征EXECSQLbegintrasactionscanf(“%d”,&x);scanf(“%d”,&y);scanf(“%d”,&z);EXECSQLUPDATEZBSETYE=YE-:ZWHEREZH=:X;36精選課件pptEXECSQLUPDATEZBSETYE=YE+:ZWHEREZH=:Y;EXECSQLENDTRASACTION;原子性是指什么?一致性是指什么?孤立性是指什么?持久性是指什么?37精選課件ppt數(shù)據(jù)庫的故障分類事務(wù)故障系統(tǒng)故障存儲(chǔ)介質(zhì)故障四數(shù)據(jù)庫恢復(fù)1.定期備份.設(shè)置備份點(diǎn)38精選課件ppt.數(shù)據(jù)恢復(fù)第一步:裝入備份數(shù)據(jù)第二步:執(zhí)行未經(jīng)備份過的但已提交的事務(wù)。運(yùn)行|備份段|運(yùn)行|恢復(fù)|轉(zhuǎn)存|重新運(yùn)行|
39精選課件ppt2.日志文件法:(1)什么叫日志文件:記錄事務(wù)對(duì)數(shù)據(jù)庫操作過程的流水文件。(2)文件內(nèi)容:事務(wù)開始與結(jié)束標(biāo)記。操作名40精選課件ppt記錄修改前數(shù)據(jù)值和修改后的數(shù)據(jù)值。操作日期,時(shí)間,事務(wù)名。(3)作用:.用來審計(jì),追蹤數(shù)據(jù)庫的操作歷史。.當(dāng)事務(wù)撤消時(shí),進(jìn)行數(shù)據(jù)恢復(fù)。.在數(shù)據(jù)庫進(jìn)行恢復(fù)時(shí),重做已經(jīng)提交過的事務(wù)。41精選課件ppt日志文件的恢復(fù)操作.REDO:正向讀日志文件,用新值代替舊值,恢復(fù)已提交的事務(wù)。.UNDO:
反向讀日志文件,用舊值代替新值,使數(shù)據(jù)庫恢復(fù)到事務(wù)執(zhí)行前的狀態(tài)。42精選課件ppt
這是一日志文件:begin(t1),x1=1,x2=3,begin(t2),comite(t1),x1=3,x2=4,begin(t3),y2=4,rollback(t3),y2=5已知:x,y的初值為1,2.問:1.現(xiàn)在x,y的值為多少?2.進(jìn)行恢復(fù)后,x,y的值為多少?43精選課件ppt第五節(jié)事務(wù)的并發(fā)控制一.什么叫并行事務(wù)定義:兩個(gè)或以上含有相關(guān)數(shù)據(jù),且在同一臺(tái)機(jī)器上同時(shí)被執(zhí)行的事務(wù),稱為并行事務(wù)。說明:相關(guān)數(shù)據(jù)是指引起競(jìng)爭的數(shù)據(jù)。同一臺(tái)機(jī)器是條件。二分析并行事務(wù)帶來的不一致性44精選課件ppt更新丟失例1考慮如下的兩個(gè)事務(wù):T1:{R(A),A=A+10,W(A)}T2:{R(A),A=A+10,W(A)}由于在同一臺(tái)機(jī)器上執(zhí)行,CPU產(chǎn)生了如下的執(zhí)行順序:{R1(A),R2(A),F1,W1,F2,W2}若把上述事務(wù)理解為存10元錢,結(jié)果如何?45精選課件ppt讀臟數(shù)據(jù)例2考慮如下兩個(gè)事務(wù)T1:{R(A),A=A+10,W(A)}T2:{R(A)}執(zhí)行如下調(diào)度:{R1(A),F1,W1(A),R2(A),ROLLBACK(T1)}注意:T2讀出的數(shù)據(jù)與數(shù)據(jù)庫的數(shù)據(jù)一致?
46精選課件ppt三并行事務(wù)的執(zhí)行模型調(diào)度:用來表示并行事務(wù)在處理機(jī)上的執(zhí)行順序。1串行調(diào)度:并行事務(wù)依次執(zhí)行,沒有交叉執(zhí)行發(fā)生。n個(gè)事務(wù)T1,T2,…,Tn的任何一種排列,都構(gòu)成一種串行調(diào)度。串行調(diào)度的意義:(1)n個(gè)事務(wù)可產(chǎn)生n!個(gè)串行調(diào)度
47精選課件ppt(2)任何一種串行調(diào)度都是正確的(3)不同的串行調(diào)度可產(chǎn)生不同的結(jié)果(4)這里的事務(wù)是指已經(jīng)獲得了運(yùn)行的權(quán)利。例3求T1,T2的串行結(jié)果集。(也稱為基本空間)設(shè)A的初值為548精選課件pptT1{R(A),A=A+10,W(A)}T2{R(A),A=A*2,W(A)}解T1,T2得A=30T2,T1得A=20問:若設(shè)T3{R(A),A=A+5,W(A)},其解空間是什么?49精選課件ppt并行調(diào)度:若一組事務(wù)按指令粒度,交叉執(zhí)行的調(diào)度。例4T1,T2的一種并行調(diào)度為:{R1(A),R2(A),F1,F2,W1(A),W2(A)}
請(qǐng)問:結(jié)果如何?50精選課件ppt并行事務(wù)的控制模型1并行控制的基本原則任何事務(wù)在對(duì)數(shù)據(jù)庫進(jìn)行操作前,必須獲得對(duì)數(shù)據(jù)的上鎖。2排它鎖:能夠防止其他事務(wù)對(duì)數(shù)據(jù)庫進(jìn)行任何操作的鎖,記為X鎖。上鎖語句LOCKX(屬性名)。51精選課件ppt上鎖規(guī)則:當(dāng)事務(wù)對(duì)數(shù)據(jù)庫進(jìn)行更新操作時(shí),應(yīng)上X鎖。其過程如下:若數(shù)據(jù)沒有上鎖,則對(duì)數(shù)據(jù)上鎖,否則該事務(wù)進(jìn)入等待隊(duì)列。如圖隊(duì)列AT1T2上鎖標(biāo)記52精選課件ppt共享鎖:能夠防止其他事務(wù)對(duì)數(shù)據(jù)庫進(jìn)行更新操作的鎖。記為S鎖,語句為
LOCKS(屬性)。上鎖規(guī)則:若數(shù)據(jù)已上X鎖則進(jìn)入等待隊(duì)列,否則加S鎖,進(jìn)入加鎖隊(duì)列。等待
上鎖AT1T2T3T453精選課件ppt4上鎖和開鎖方式(1)自動(dòng)型:根據(jù)SQL語句的類型自動(dòng)上鎖和開鎖。如SELECT,UPDATE(2)手動(dòng)型:在事務(wù)中運(yùn)用上鎖語句和開鎖語句進(jìn)行開鎖和上鎖。(3)當(dāng)遇到COMMIT和ROLLBACK時(shí),自動(dòng)取消該事務(wù)的所有上鎖。54精選課件ppt5上鎖相容性矩陣已上鎖
XS--欲XNNY上SNYY
溫馨提示
- 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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 愛心傳遞正能量
- 2025個(gè)人商鋪?zhàn)赓U合同范本全文解讀7篇
- 2025版國際投資居間業(yè)務(wù)合同范本3篇
- 2025年度個(gè)人房屋買賣合同解除條件協(xié)議2篇
- 2025年度個(gè)人信用貸款擔(dān)保合同模板大全
- 2025年度個(gè)人設(shè)備租賃還款協(xié)議規(guī)范3篇
- 2025年全球及中國電磁儲(chǔ)能行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球塑料桶襯里行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025版新勞動(dòng)法下企業(yè)內(nèi)部審計(jì)與合規(guī)合同2篇
- 2025年度店鋪食品安全管理體系認(rèn)證合同
- 成品移動(dòng)公廁施工方案
- 2025年度部隊(duì)食堂食材采購與質(zhì)量追溯服務(wù)合同3篇
- 新人教版一年級(jí)下冊(cè)數(shù)學(xué)教案集體備課
- 消防產(chǎn)品目錄(2025年修訂本)
- 地方性分異規(guī)律下的植被演替課件高三地理二輪專題復(fù)習(xí)
- 繪本 課件教學(xué)課件
- 光伏項(xiàng)目風(fēng)險(xiǎn)控制與安全方案
- 9.2提高防護(hù)能力教學(xué)設(shè)計(jì) 2024-2025學(xué)年統(tǒng)編版道德與法治七年級(jí)上冊(cè)
- 催收培訓(xùn)制度
- 牧場(chǎng)物語-礦石鎮(zhèn)的伙伴們-完全攻略
- ISO 22003-1:2022《食品安全-第 1 部分:食品安全管理體系 審核與認(rèn)證機(jī)構(gòu)要求》中文版(機(jī)翻)
評(píng)論
0/150
提交評(píng)論