W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
在從頂層調(diào)用的過(guò)程中或者從頂層調(diào)用的匿名代碼塊(DO
命令)中,可以控制事務(wù)。要提交當(dāng)前的事務(wù),可調(diào)用commit
。要回滾當(dāng)前事務(wù),可調(diào)用rollback
(注意不能通過(guò)spi_exec
或類似的函數(shù)運(yùn)行SQL命令COMMIT
或者
ROLLBACK
。這類工作必須用這些函數(shù)完成)。在事務(wù)結(jié)束以后,一個(gè)新的事務(wù)會(huì)自動(dòng)開始,因此沒有獨(dú)立的函數(shù)用來(lái)開始新事務(wù)。
這里是一個(gè)例子:
CREATE PROCEDURE transaction_test1()
LANGUAGE pltcl
AS $$
for {set i 0} {$i < 10} {incr i} {
spi_exec "INSERT INTO test1 (a) VALUES ($i)"
if {$i % 2 == 0} {
commit
} else {
rollback
}
}
$$;
CALL transaction_test1();
當(dāng)一個(gè)顯式的子事務(wù)處于活躍狀態(tài)時(shí),事務(wù)不能被結(jié)束。
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)系方式:
更多建議: