如何在我的 redshift / SQL Workbench 连接中找到 AUTOCOMMIT 的当前值?
Posted
技术标签:
【中文标题】如何在我的 redshift / SQL Workbench 连接中找到 AUTOCOMMIT 的当前值?【英文标题】:How can I find the current value for AUTOCOMMIT in my redshift / SQL Workbench connection? 【发布时间】:2018-10-15 14:23:57 【问题描述】:我想通过 SQL Workbench / JDBC 连接“调查”一下 Redshift AutoCommit 设置的行为。
我可以在连接页面选择设置,或者通过“SET AUTOCOMMIT ON/OFF”强制设置
但是我怎样才能在我的连接中找到它的当前值呢?
SET 命令的文档并没有给出太多...
而SHOW ALL没有提到这个参数...
【问题讨论】:
这有用吗?Connection.setAutoCommit()
我想这是javascript?我的意思是通过一条 SQL 语句。 @botchniaque 回答(显示自动提交)谢谢
【参考方案1】:
我正在使用 psql
客户端连接到 Redshift。当我尝试将 SET
自动提交到 OFF
时,我收到一条错误消息,提示 ERROR: SET AUTOCOMMIT TO OFF is no longer supported
,这听起来像你无法在 Redshift 中执行任何操作交易,虽然我没有找到任何关于它的文档。
psql \
--host=localhost \
--username=xxx \
--port=6506 \
--dbname=datalake
psql (10.5 (Ubuntu 10.5-0ubuntu0.18.04), server 8.0.2)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.
datalake=# SHOW AUTOCOMMIT;
autocommit
------------
on
(1 row)
datalake=# SET AUTOCOMMIT=false;
ERROR: SET AUTOCOMMIT TO OFF is no longer supported
【讨论】:
谢谢。我以为我已经尝试过了,但我显然没有! :-( @Eric Mamet,如果您认为我的回答有帮助,您可以考虑点赞:) 我确实做到了,但没有考虑到(还没有?)因为我是堆栈溢出的新手......【参考方案2】:在 SQL Workbench/J 中没有“SQL”命令可以做到这一点
您目前可以看到它的唯一方法是查看菜单项。如果选择了 Autocommit 项,则它已打开。
您也可以查看Commit
或Rollback
菜单项。如果它们被禁用,那么自动提交也会被打开。
【讨论】:
以上是关于如何在我的 redshift / SQL Workbench 连接中找到 AUTOCOMMIT 的当前值?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 redshift 数据库连接到在 ec2 实例上运行的 bash 脚本