postgresql中默認(rèn)是自動提交的
查看是否是自動提交:
postgres=# \echo :AUTOCOMMIT
on
關(guān)閉自動提交:
postgres=# \set AUTOCOMMIT off
postgres=# \echo :AUTOCOMMIT
off
另一種方式就在會話開始的時候以begin開始相當(dāng)于關(guān)閉了自動提交,以end或者commit結(jié)束就可以了
補(bǔ)充:pg(hgdb)默認(rèn)事務(wù)自動提交
默認(rèn)情況下,AUTOCOMMIT(自動提交)是開著的,也就是說任何一個SQL語句執(zhí)行完畢后,它鎖做的數(shù)據(jù)修改都會被立即提交,這種情況下每個語句都是一個獨(dú)立的事務(wù),一旦 執(zhí)行完畢祁結(jié)果就不可撤銷。
如果你需要運(yùn)行大量的DML語句并且這些語句還未經(jīng)充分測試,那么自動提交功能會帶來麻煩,此時有必要關(guān)閉事務(wù)自動移交機(jī)制來對數(shù)據(jù)進(jìn)行保護(hù)。
請先關(guān)閉自動提交功能:\set AUTOCOMMIT off,然后就可以按需對事務(wù)進(jìn)行回滾了:
update census.fats set short_name='this is a mistake.';
要回滾事務(wù),請執(zhí)行:
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
您可能感興趣的文章:- Postgresql 默認(rèn)用戶名與密碼的操作
- postgresql 中的加密擴(kuò)展插件pgcrypto用法說明
- PostgreSQL表膨脹監(jiān)控案例(精確計(jì)算)
- Postgresql 解決pg掉電后無法重啟的問題
- PostgreSQL 恢復(fù)誤刪數(shù)據(jù)的操作
- PostgreSQL 日志文件的所在位置
- PostgreSQL 實(shí)現(xiàn)登錄及修改密碼操作