oracle回滚事务的关键字,Oracle ROLLBACK语句(回滚事务)
Oracle ROLLBACK語句(回滾事務(wù))
在Oracle中,ROLLBACK語句可以用來撤銷當(dāng)前事務(wù)或有問題的事務(wù)。本教程就將教大家如何使用ROLLBACK語句。
ROLLBACK語法
ROLLBACK [ WORK ] [ TO [SAVEPOINT] savepoint_name | FORCE 'string' ];
參數(shù)
WORK:可選的。 它被Oracle添加為符合SQL標(biāo)準(zhǔn)。 使用或不使用WORK參數(shù)來發(fā)出ROLLBACK會導(dǎo)致相同的結(jié)果。
TO SAVEPOINT savepoint_name:可選的。 ROLLBACK語句撤消當(dāng)前會話的所有更改,直到由savepoint_name指定的保存點(diǎn)。 如果省略該子句,則所有更改都將被撤消。
FORCE ‘string’:可選的。它用于強(qiáng)制回滾可能已損壞或有問題的事務(wù)。 使用此子句,可以將單引號中的事務(wù)ID指定為字符串。 可以在系統(tǒng)視圖中找到名為DBA_2PC_PENDING的事務(wù)標(biāo)識。
必須擁有DBA權(quán)限才能訪問系統(tǒng)視圖:DBA_2PC_PENDING和V$CORRUPT_XID_LIST。
您無法將有問題的事務(wù)回滾到保存點(diǎn)。
ROLLBACK語語法示例
我們來看一個示例,演示如何使用ROLLBACK語句在Oracle中發(fā)出回滾。
例如:
ROLLBACK;
此ROLLBACK示例執(zhí)行與以下操作相同:
ROLLBACK WORK;
在這個例子中,隱含了WORK關(guān)鍵字,所以前面2個ROLLBACK語句是等價(jià)的。 這些示例將回滾當(dāng)前事務(wù)。
Savepoint
可以通過兩種方式將ROLLBACK寫入保存點(diǎn):
ROLLBACK TO SAVEPOINT savepoint1;
或者
ROLLBACK WORK TO SAVEPOINT savepoint1;
由于始終隱含著WORK關(guān)鍵字,因此這兩個ROLLBACK示例都會將當(dāng)前事務(wù)回滾到名為savepoint1的保存點(diǎn)。
Force
最后,看看ROLLBACK的一個例子,它顯示了如何強(qiáng)制回滾一個有問題的事務(wù)。
例如,您可以通過兩種方式編寫有問題事務(wù)的ROLLBACK:
ROLLBACK FORCE '22.14.67';
或者
ROLLBACK WORK FORCE '22.14.67';
由于始終隱含著WORK關(guān)鍵字,因此這兩個ROLLBACK示例都將強(qiáng)制回滾由事務(wù) ID “22.14.67”標(biāo)識的損壞或有問題的事務(wù)。
總結(jié)
以上是生活随笔為你收集整理的oracle回滚事务的关键字,Oracle ROLLBACK语句(回滚事务)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 设计资质备案需要哪些材料(设计资质备案)
- 下一篇: oracle sysnonym,Orac