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