域名預(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ī)遇!