版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
事務(wù)講師:肖文吉事務(wù)的特性(ACID)原子性(Atomicity)
原子性是指事務(wù)是一個(gè)不可分割的工作單位,事務(wù)中的操作要么都發(fā)生,要么都不發(fā)生。
一致性(Consistency)
事務(wù)必須使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變換到另外一個(gè)一致性狀態(tài)。隔離性(Isolation)
事務(wù)的隔離性是多個(gè)用戶并發(fā)訪問(wèn)數(shù)據(jù)庫(kù)時(shí),數(shù)據(jù)庫(kù)為每一個(gè)用戶開啟的事務(wù),不能被其他事務(wù)的操作數(shù)據(jù)所干擾,多個(gè)并發(fā)事務(wù)之間要相互隔離。持久性(Durability)
持久性是指一個(gè)事務(wù)一旦被提交,它對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的改變就是永久性的,接下來(lái)即使數(shù)據(jù)庫(kù)發(fā)生故障也不應(yīng)該對(duì)其有任何影響。事務(wù)的隔離級(jí)別多個(gè)線程開啟各自事務(wù)操作數(shù)據(jù)庫(kù)中數(shù)據(jù)時(shí),數(shù)據(jù)庫(kù)系統(tǒng)要負(fù)責(zé)隔離操作,以保證各個(gè)線程在獲取數(shù)據(jù)時(shí)的準(zhǔn)確性。如果不考慮隔離性,可能會(huì)引發(fā)如下問(wèn)題:事務(wù)的隔離性臟讀:指一個(gè)事務(wù)讀取了另外一個(gè)事務(wù)未提交的數(shù)據(jù)。 這是非常危險(xiǎn)的,假設(shè)A向B轉(zhuǎn)帳100元,對(duì)應(yīng)sql語(yǔ)句如下所示
1.updateaccountsetmoney=money+100whilename=‘b’; 2.updateaccountsetmoney=money-100whilename=‘a(chǎn)’;
事務(wù)的隔離性不可重復(fù)讀:在一個(gè)事物內(nèi)讀取表中的某一行數(shù)據(jù),多次讀取結(jié)果不同。 例如銀行想查詢A帳戶余額,第一次查詢A帳戶為200元,此時(shí)A向帳戶內(nèi)存了100元并提交了,銀行接著又進(jìn)行了一次查詢,此時(shí)A帳戶為300元了。銀行兩次查詢不一致,可能就會(huì)很困惑,不知道哪次查詢是準(zhǔn)的。和臟讀的區(qū)別是,臟讀是讀取前一事務(wù)未提交的臟數(shù)據(jù),不可重復(fù)讀是重新讀取了前一事務(wù)已提交的數(shù)據(jù)。很多人認(rèn)為這種情況就對(duì)了,無(wú)須困惑,當(dāng)然是后面的為準(zhǔn)。我們可以考慮這樣一種情況,比如銀行程序需要將查詢結(jié)果分別輸出到電腦屏幕和寫到文件中,結(jié)果在一個(gè)事務(wù)中針對(duì)輸出的目的地,進(jìn)行的兩次查詢不一致,導(dǎo)致文件和屏幕中的結(jié)果不一致,銀行工作人員就不知道以哪個(gè)為準(zhǔn)了。務(wù)的隔離性虛讀/幻讀是指在一個(gè)事務(wù)內(nèi)讀取到了別的事務(wù)插入的數(shù)據(jù),導(dǎo)致前后讀取不一致。如丙存款100元未提交,這時(shí)銀行做報(bào)表統(tǒng)計(jì)account表中所有用戶的總額為500元,然后丙提交了,這時(shí)銀行再統(tǒng)計(jì)發(fā)現(xiàn)帳戶為600元了,造成虛讀同樣會(huì)使銀行不知所措,到底以哪個(gè)為準(zhǔn)。MySQL演示三種缺點(diǎn)事務(wù)隔離性的設(shè)置語(yǔ)句數(shù)據(jù)庫(kù)共定義了四種隔離級(jí)別:Serializable:可避免臟讀、不可重復(fù)讀、虛讀情況的發(fā)生。(串行化)Repeatableread:可避免臟讀、不可重復(fù)讀情況的發(fā)生。(可重復(fù)讀)Readcommitted:可避免臟讀情況發(fā)生(讀已提交)。Readuncommitted:最低級(jí)別,以上情況均無(wú)法保證。(讀未提交)settransactionisolationlevel設(shè)置事務(wù)隔離級(jí)別select@@tx_isolation
查詢當(dāng)前事務(wù)隔離級(jí)別事務(wù)事務(wù)的概念事務(wù)指邏輯上的一組操作,組成這組操作的各個(gè)單元,要么全部成功,要么全部不成功。例如:A——B轉(zhuǎn)帳,對(duì)應(yīng)于如下兩條sql語(yǔ)句
updatefromaccountsetmoney=money-100wherename=‘a(chǎn)’;updatefromaccountsetmoney=money+100wher
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 遵義市教育體育局直屬事業(yè)單位遵義市體育運(yùn)動(dòng)學(xué)校2025年公開招聘事業(yè)單位工作人員備考題庫(kù)及答案詳解參考
- 2026年結(jié)合醫(yī)療細(xì)分領(lǐng)域:如眼科、口腔、心血管等專科設(shè)備服務(wù)合同
- 2025年張家港市第五人民醫(yī)院自主招聘編外合同制衛(wèi)技人員備考題庫(kù)附答案詳解
- 2025年中電科海洋信息技術(shù)研究院有限公司招聘?jìng)淇碱}庫(kù)完整參考答案詳解
- 2025年醫(yī)保工作人員年終個(gè)人總結(jié)例文(五篇)
- 交流研討個(gè)人發(fā)言材料
- 國(guó)家知識(shí)產(chǎn)權(quán)局專利局專利審查協(xié)作北京中心福建分中心2026年度行政助理招聘?jìng)淇碱}庫(kù)含答案詳解
- 黑龍江公安警官職業(yè)學(xué)院《德語(yǔ)聽力》2025 學(xué)年第二學(xué)期期末試卷
- 2025年阿克蘇市面向社會(huì)公開招聘警務(wù)輔助人員備考題庫(kù)及參考答案詳解一套
- 2025年廈門大學(xué)教育研究院行政秘書招聘?jìng)淇碱}庫(kù)及答案詳解參考
- 2026富滇銀行公司招聘面試題及答案
- 2025年南京鐵道職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫(kù)附答案
- 2025年網(wǎng)絡(luò)維護(hù)管理人員工作總結(jié)例文(2篇)
- 城銀清算服務(wù)有限責(zé)任公司2026年校園招聘16人備考題庫(kù)附答案
- 2025年河南豫能控股股份有限公司及所管企業(yè)第二批社會(huì)招聘18人筆試歷年參考題庫(kù)附帶答案詳解
- 2025年《項(xiàng)目管理認(rèn)證考試》知識(shí)考試題庫(kù)及答案解析
- 安徽消防筆試題及答案
- 書籍借閱營(yíng)銷方案
- 生態(tài)冷鮮牛肉銷售創(chuàng)業(yè)策劃書范文
- 2025年高級(jí)煤礦綜采安裝拆除作業(yè)人員《理論知識(shí)》考試真題(含解析)
評(píng)論
0/150
提交評(píng)論