Oracle COMMIT語句(提交事務(wù))

Oracle COMMIT語句(提交事務(wù))

在Oracle中,COMMIT語句可以用來提交當(dāng)前事務(wù)的所有更改。提交后,其他用戶將能夠看到您的更改。本文腰圍大家?guī)淼木褪荂OMMIT語句的用法。

 

COMMIT語句語法:

Oracle / PLSQL中COMMIT語句的語法是:

COMMIT [ WORK ] [ COMMENT clause ] [ WRITE clause ] [ FORCE clause ];

參數(shù)

  • WORK:可選的。它被Oracle添加為符合SQL標(biāo)準(zhǔn)。使用或不使用WORK參數(shù)來執(zhí)行COMMIT將產(chǎn)生相同的結(jié)果。
  • COMMENT clause:可選的。 它用于指定與當(dāng)前事務(wù)關(guān)聯(lián)的注釋。 該注釋最多可以包含在單引號中的255個(gè)字節(jié)的文本中。 如果出現(xiàn)問題,它將與事務(wù)ID一起存儲(chǔ)在名為DBA_2PC_PENDING的系統(tǒng)視圖中。
  • WRITE clause:可選的。 它用于指定將已提交事務(wù)的重做信息寫入重做日志的優(yōu)先級。 用這個(gè)子句,有兩個(gè)參數(shù)可以指定:WAIT 或 NOWAIT (如果省略,WAIT是默認(rèn)值)IMMEDIATE或BATCH(IMMEDIATE是省略時(shí)的默認(rèn)值)
  • FORCE clause:可選的。 它用于強(qiáng)制提交可能已損壞或有疑問的事務(wù)。 有了這個(gè)子句,可以用3種方式指定FORCE:FORCE'string',[integer]或FORCE CORRUPT_XID'string'或FORCE CORRUPT_XID_ALL

注意

  • 必須擁有DBA權(quán)限才能訪問系統(tǒng)視圖 - DBA_2PC_PENDING和V$CORRUPT_XID_LIST。
  • 必須擁有DBA權(quán)限才能指定COMMIT語句的某些功能。

 

COMMIT語句示例

我們來看一個(gè)示例,演示如何使用COMMIT語句在Oracle中發(fā)出提交。

COMMIT;

此COMMIT示例將執(zhí)行與以下相同的操作:

COMMIT WORK WRITE WAIT IMMEDIATE;

在此示例中,隱含了WORK關(guān)鍵字,并且省略WRITE子句將缺省為WRITE WAIT IMMEDIATE,因此它與前面的COMMIT語句是等效的。

添加備注

我們來看一個(gè)顯示如何使用COMMENT子句的COMMIT示例:

例如,您可以通過兩種方式使用注釋編寫COMMIT:

COMMIT COMMENT 'This is the comment for the transaction';

或者

COMMIT WORK COMMENT 'This is the comment for the transaction';

由于始終隱含WORK關(guān)鍵字,因此這兩個(gè)COMMIT示例都是等效的。 如果事務(wù)出錯(cuò)或存在疑問,COMMIT會(huì)將包含在引號中的注釋與事務(wù)ID一起存儲(chǔ)在DBA_2PC_PENDING系統(tǒng)視圖中。

強(qiáng)制最后,看一下顯示如何使用FORCE子句的COMMIT示例。

例如,可以通過兩種方式編寫可疑事務(wù)的COMMIT:

COMMIT FORCE '22.14.67';

或者

COMMIT WORK FORCE '22.14.67';

由于始終隱含WORK關(guān)鍵字,因此這兩個(gè)COMMIT示例都會(huì)強(qiáng)制執(zhí)行由事務(wù)ID “22.14.67”標(biāo)識的已損壞或疑問事務(wù)。

下一節(jié):Oracle ROLLBACK語句(回滾事務(wù))

Oracle教程

相關(guān)文章
亚洲国产精品第一区二区,久久免费视频77,99V久久综合狠狠综合久久,国产免费久久九九免费视频