當(dāng)前位置:首頁 >  站長(zhǎng) >  數(shù)據(jù)庫 >  正文

postgresql 如何關(guān)閉自動(dòng)提交

 2021-06-03 17:30  來源: 腳本之家   我來投稿 撤稿糾錯(cuò)

  域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過

postgresql中默認(rèn)是自動(dòng)提交的

查看是否是自動(dòng)提交:

 postgres=# \echo :AUTOCOMMIT
 on

關(guān)閉自動(dòng)提交:

 postgres=# \set AUTOCOMMIT off
 postgres=# \echo :AUTOCOMMIT
 off

另一種方式就在會(huì)話開始的時(shí)候以begin開始相當(dāng)于關(guān)閉了自動(dòng)提交,以end或者commit結(jié)束就可以了

補(bǔ)充:pg(hgdb)默認(rèn)事務(wù)自動(dòng)提交

默認(rèn)情況下,AUTOCOMMIT(自動(dòng)提交)是開著的,也就是說任何一個(gè)SQL語句執(zhí)行完畢后,它鎖做的數(shù)據(jù)修改都會(huì)被立即提交,這種情況下每個(gè)語句都是一個(gè)獨(dú)立的事務(wù),一旦 執(zhí)行完畢祁結(jié)果就不可撤銷。

如果你需要運(yùn)行大量的DML語句并且這些語句還未經(jīng)充分測(cè)試,那么自動(dòng)提交功能會(huì)帶來麻煩,此時(shí)有必要關(guān)閉事務(wù)自動(dòng)移交機(jī)制來對(duì)數(shù)據(jù)進(jìn)行保護(hù)。

請(qǐng)先關(guān)閉自動(dòng)提交功能:\set AUTOCOMMIT off,然后就可以按需對(duì)事務(wù)進(jìn)行回滾了:

1update census.fats set short_name='this is a mistake.';

要回滾事務(wù),請(qǐng)執(zhí)行:

1rollback;

文章來源:腳本之家

來源地址:https://www.jb51.net/article/204288.htm

申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)文章

熱門排行

信息推薦