11.SQL的事務(wù)處理功能
(1)事務(wù)處理的概述所謂事務(wù)(Transaction)是指一系列動(dòng)作的組合,這些動(dòng)作被當(dāng)作一個(gè)整體來(lái)處理。這些動(dòng)作或者相繼都被執(zhí)行,或者什么也不做。在數(shù)據(jù)庫(kù)中,一個(gè)動(dòng)作是指一個(gè)SQL語(yǔ)句。事務(wù)是一組SQL語(yǔ)句組成的一個(gè)邏輯單位。要么這些SQL語(yǔ)句全部被按順序正確執(zhí)行,要么在某SQL語(yǔ)句執(zhí)行失敗時(shí),按照用戶(hù)要求,取消已執(zhí)行的SQL語(yǔ)句對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的修改;蛘咭词聞(wù)中SQL語(yǔ)句都被正確執(zhí)行,完成該事務(wù)對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的所有操作;或者要么相當(dāng)于一條SQL語(yǔ)句也未執(zhí)行,數(shù)據(jù)庫(kù)數(shù)據(jù)未做任何改動(dòng)。
(2)SQL語(yǔ)言的事務(wù)處理語(yǔ)句SQL語(yǔ)言有3條語(yǔ)句用于事務(wù)處理,它們是:
(1mit語(yǔ)句,對(duì)于正確執(zhí)行了的事務(wù)進(jìn)行提交,進(jìn)行提交即對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的修改永久化。同時(shí)還釋放事務(wù)和封鎖,標(biāo)志該事務(wù)結(jié)束。
(2)Save point語(yǔ)句,定義事務(wù)中的一個(gè)回滾保留點(diǎn),它是事務(wù)恢復(fù)時(shí)的一個(gè)標(biāo)記點(diǎn)。
(3)rollback語(yǔ)句,無(wú)論事務(wù)執(zhí)行的當(dāng)前位置在哪里,該語(yǔ)句的執(zhí)行要么取消事務(wù)執(zhí)行以來(lái)對(duì)數(shù)據(jù)庫(kù)的全部修改,要么取消至某個(gè)指定回滾點(diǎn)后對(duì)數(shù)據(jù)庫(kù)的全部修改。釋放自保留點(diǎn)之后的全部表或行的封鎖(沒(méi)有保留點(diǎn),相當(dāng)于回滾到事務(wù)開(kāi)始處,終止該事務(wù))。事務(wù)的恢復(fù)(回滾)是根據(jù)事務(wù)執(zhí)行前保存下的當(dāng)時(shí)數(shù)據(jù)庫(kù)狀態(tài)來(lái)實(shí)現(xiàn)的。一遇到rollback語(yǔ)句,就將數(shù)據(jù)庫(kù)中數(shù)據(jù)恢復(fù)到原來(lái)的狀態(tài),相當(dāng)于撤消事務(wù)中已執(zhí)行了的SQL語(yǔ)句。
相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試試題及答案解析專(zhuān)題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |