我正在使用PostgreSQL 9.5。如何检查自动提交是开启还是关闭的?我尝试了 SHOW AUTOCOMMIT
命令,但出现了错误 ERROR: unrecognized configuration parameter "autocommit"
,然后我执行了\set autocommit off
命令,再次运行SHOW AUTOCOMMIT
命令时输出为空白。如何确定自动提交是开启还是关闭?在我的SQL文件中能否设置自动提交为关闭状态?
我正在使用PostgreSQL 9.5。如何检查自动提交是开启还是关闭的?我尝试了 SHOW AUTOCOMMIT
命令,但出现了错误 ERROR: unrecognized configuration parameter "autocommit"
,然后我执行了\set autocommit off
命令,再次运行SHOW AUTOCOMMIT
命令时输出为空白。如何确定自动提交是开启还是关闭?在我的SQL文件中能否设置自动提交为关闭状态?
\echo :AUTOCOMMIT
如果希望“始终”禁用自动提交,可以将\set AUTOCOMMIT off元命令添加到本地的~/.psqlrc文件中。为了实现更全局的设置,可以将此元命令放置在数据库系统配置目录中的apsqlrc文件中(可以使用PostgreSQL操作系统级命令pg_config --sysconfdir查找该目录)。pg_config --sysconfdir
时,出现了 您需要安装postgresql-server-dev-X.Y以构建服务器端扩展或libpq-dev以构建客户端应用程序。
的提示。 - codec,我已经退出并重新登录了,但
echo :AUTOCOMMIT` 始终为开启状态。 - codecset autocommit = off
只适用于旧版本。 - Kjetil S.on
或 off
。* AUTOCOMMIT 必须是大写:\echo :AUTOCOMMIT
如果AUTOCOMMIT开启:
postgres=# \echo :AUTOCOMMIT
on
postgres=# \echo :AUTOCOMMIT
off
一个快速而不太规范的方法是执行 commit; 并查找以下消息以推断是否启用了自动提交。
错误报告 - SQL 错误: 当启用 autoCommit 时无法提交。
注意:我使用的是 SQL Developer,所以不确定其他 IDE 是否适用。
\set AUTOCOMMIT off
将其关闭。 - codec