日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

oracle自治事务的写法_Oracle的自治事务

發(fā)布時(shí)間:2025/3/19 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle自治事务的写法_Oracle的自治事务 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

自治事務(wù)(autonomous transaction)允許你創(chuàng)建一個(gè)"事務(wù)中的事務(wù)",它能獨(dú)立于其父事務(wù)提交或回滾。利用自治事務(wù),可以掛起當(dāng)前執(zhí)行的事務(wù),開始一個(gè)新事務(wù),完成一些工作,然后提交或回滾,所有這些都不影響當(dāng)前所執(zhí)行事務(wù)的狀態(tài)。自治事務(wù)提供了一種用PL/SQL控制事務(wù)的新方法,可用于:頂層匿名塊;

本地(過(guò)程中的過(guò)程)、獨(dú)立或打包的函數(shù)和過(guò)程;

對(duì)象類型的方法;

數(shù)據(jù)庫(kù)觸發(fā)器。

使用例子演示自治事務(wù)如何工作--創(chuàng)建測(cè)試表用于保存信息

zx@ORCL>create?table?t?(?msg?varchar2(25)?);

Table?created.

--創(chuàng)建自治事務(wù)的存儲(chǔ)過(guò)程

zx@ORCL>create?or?replace?procedure?Autonomous_Insert

2??as

pragma?autonomous_transaction;---指示自治事務(wù)語(yǔ)句

4??begin

5??????????insert?into?t?values?(?'Autonomous?Insert'?);

6??????????commit;

7??end;

8??/

Procedure?created.

--創(chuàng)建普通存儲(chǔ)過(guò)程

zx@ORCL>create?or?replace?procedure?NonAutonomous_Insert

2??as

3??begin

4??????????insert?into?t?values?(?'NonAutonomous?Insert'?);

5??????????commit;

6??end;

7??/

Procedure?created.

觀察使用PL/SQL代碼中非自治事務(wù)的行為zx@ORCL>begin

2??????????insert?into?t?values?(?'Anonymous?Block'?);

3??????????NonAutonomous_Insert;

4??????????rollback;

5??end;

6??/

PL/SQL?procedure?successfully?completed.

zx@ORCL>select?*?from?t;

MSG

---------------------------------------------------------------------------

Anonymous?Block

NonAutonomous?Insert

可以觀察到非自治事務(wù)的過(guò)程中的commit也把調(diào)用它的父事務(wù)也提交了,而父事務(wù)中的rollback沒有起到作用。

再觀察使用PL/SQL代碼中非自治事務(wù)的行為zx@ORCL>delete?from?t;

2?rows?deleted.

zx@ORCL>commit;

Commit?complete.

zx@ORCL>begin

insert?into?t?values?(?'Anonymous?Block'?);

Autonomous_Insert;

rollback;

end;

6??/

PL/SQL?procedure?successfully?completed.

zx@ORCL>select?*?from?t;

MSG

---------------------------------------------------------------------------

Autonomous?Insert

可以看到,自治事務(wù)過(guò)程中的commit只把它本身的事務(wù)提交了,而對(duì)于父事務(wù)的語(yǔ)句沒有起到作用,而父事務(wù)中的rollback對(duì)自治事務(wù)中的語(yǔ)句也沒有作用。

與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的oracle自治事务的写法_Oracle的自治事务的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。