W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
在 Oracle 中,ROLLBACK 語(yǔ)句可以用來(lái)撤銷(xiāo)當(dāng)前事務(wù)或有問(wèn)題的事務(wù)。本教程就將教大家如何使用 ROLLBACK 語(yǔ)句。
ROLLBACK [ WORK ] [ TO [SAVEPOINT] savepoint_name | FORCE 'string' ];
WORK
?:可選的。 它被 Oracle 添加為符合 SQL 標(biāo)準(zhǔn)。 使用或不使用 WORK 參數(shù)來(lái)發(fā)出 ROLLBACK 會(huì)導(dǎo)致相同的結(jié)果。TO SAVEPOINT
savepoint_name
?:可選的。 ROLLBACK語(yǔ)句撤消當(dāng)前會(huì)話的所有更改,直到由 savepoint_name 指定的保存點(diǎn)。 如果省略該子句,則所有更改都將被撤消。FORCE
? ?‘string’
:可選的。它用于強(qiáng)制回滾可能已損壞或有問(wèn)題的事務(wù)。 使用此子句,可以將單引號(hào)中的事務(wù)ID指定為字符串。 可以在系統(tǒng)視圖中找到名為 DBA_2PC_PENDING 的事務(wù)標(biāo)識(shí)。我們來(lái)看一個(gè)示例,演示如何使用 ROLLBACK 語(yǔ)句在 Oracle 中發(fā)出回滾。
例如:
ROLLBACK;
此 ROLLBACK 示例執(zhí)行與以下操作相同:
ROLLBACK WORK;
在這個(gè)例子中,隱含了 WORK 關(guān)鍵字,所以前面2個(gè) ROLLBACK 語(yǔ)句是等價(jià)的。 這些示例將回滾當(dāng)前事務(wù)。
可以通過(guò)兩種方式將 ROLLBACK 寫(xiě)入保存點(diǎn):
ROLLBACK TO SAVEPOINT savepoint1;
或者
ROLLBACK WORK TO SAVEPOINT savepoint1;
由于始終隱含著 WORK 關(guān)鍵字,因此這兩個(gè) ROLLBACK 示例都會(huì)將當(dāng)前事務(wù)回滾到名為 savepoint1 的保存點(diǎn)。
最后,看看 ROLLBACK 的一個(gè)例子,它顯示了如何強(qiáng)制回滾一個(gè)有問(wèn)題的事務(wù)。
例如,您可以通過(guò)兩種方式編寫(xiě)有問(wèn)題事務(wù)的 ROLLBACK:
ROLLBACK FORCE '22.14.67';
或者
ROLLBACK WORK FORCE '22.14.67';
由于始終隱含著 WORK 關(guān)鍵字,因此這兩個(gè) ROLLBACK 示例都將強(qiáng)制回滾由事務(wù) ID “22.14.67”標(biāo)識(shí)的損壞或有問(wèn)題的事務(wù)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: