如何检查自动提交是否打开 postgres 的 psql

How to check if autocommit is on or not postgres' psql

我正在使用 postgres 9.5。如何检查自动提交是打开还是关闭?我尝试 SHOW AUTOCOMMIT 得到 ERROR: unrecognized configuration parameter "autocommit" 然后我做了 \set autocommit off 然后 SHOW AUTOCOMMIT 给我空白输出。如何确定自动提交是打开还是关闭?我还可以将其设置为关闭 while/after 在我的 sql 文件中创建的数据库吗?

根据 this Dustin Marx 文章,您可以使用:

\echo :AUTOCOMMIT

If it's desired to "always" have autocommit disabled, the \set AUTOCOMMIT off meta-command can be added to one's local ~/.psqlrc file. For an even more global setting, this meta-command can be placed in apsqlrc file in the database's system config directory (which can be located using PostgreSQL operating system-level command pg_config --sysconfdir).

一种快速而肮脏的方法是只执行提交;并查找以下消息以推断自动提交是否开启。

错误报告 - SQL错误:启用自动提交时无法提交。

注意:我使用 SQL 开发人员,所以不确定其他 IDE