首页 > 数据库 > PostgreSQL > 客户端程序自动提交
PostgreSQL psql里面默认是自动提交;执行完就马上提交,不能回滚,可以关闭自动提交。
AutoCommit基于客户端(psql、pgadmin、navicat等等)SESSION连接参数AUTOCOMMIT,数据库SERVER端不进行控制;
取消自动提交后,DDL语句也需要显示commit或rollback
1、psql
\set AUTOCOMMIT off #仅对当前session有效
\echo :AUTOCOMMIT #查看当前状态

如上图所示,有*号代表有操作未提交或回滚
仅对于psql工具有效
客户端所在系统用户执行以下语句,家目录下生成.psqlrc
$ echo "\set AUTOCOMMIT off" >>$HOME/.psqlrc
2、pgadmin4
使用pgadmin4 v4.28,默认取消了自动提交,
3、navicat15
自动提交,在执行ddl或dml语句前,执行begin语句,这样可以防止自动提交
4、DBeaver
默认自动提交,可以取消自动提交 窗口-首选项-连接-连接类型-默认自动提交
此软件有只读模式,设置后只能查看,不能新建、删除等操作

如上图所示,1代表1个操作未提交或回滚,如没有未提交或回滚的操作,显示None
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/16835711/viewspace-2736552/ ,如需转载,请注明出处,否则将追究法律责任。