【问题标题】:Errors with subqueries and joins in SQL workbench/jSQL workbench/j 中的子查询和连接错误
【发布时间】:2019-11-26 14:10:42
【问题描述】:

我是 redshift 和 sql workbench/j 的新手,而且我刚开始使用 bigquery,所以我可能不知道代码样式的细微变化。我有两个非常简单的查询,我试图在连接到我的 redshift db 的 sql workbench/j 中执行,我不断收到错误消息

亚马逊无效操作:当前事务被中止,命令被忽略,直到事务块结束; [SQL 状态=25P02,数据库错误代码=500310] 1 条语句失败。

关于 workbench/j 的文档非常有限

查询 2

SELECT
report_date,
campaign,
ad_group,
ad_type,
data_source,
channel,
device,
impressions,
clicks,
conversions,
cost,
conversion_type
FROM
( 
SELECT
report_date,
campaign,
ad_group,
ad_type,
'Bing Ads' as data_source,
'Paid Search' as Channel,
device,
impressions,
clicks,
cost,
NULL AS conversions,
NULL as conversion_type,
FROM t1

将创建空转换类型和转换以及 data_source 和通道变量的新列 这两个非常简单的查询我都可以在 BQ 中执行,但不能在 workbench/j 中执行

关于为什么这可能不起作用的任何想法?以及对细微差别的一般见解,因此我将来会意识到。

【问题讨论】:

    标签: amazon-redshift sql-workbench-j


    【解决方案1】:

    这与 SQL Workbench/J 无关。这是 Postgres 和 Redshift 的默认事务行为,因为它是 Postgres 的一个分支。

    如果事务中的任何语句失败,则事务失败。您可能在此之前执行了不同的查询,但失败了,现在您必须在继续之前回滚事务(这是错误消息告诉您的内容)。

    在 SQL Workbench/J(或任何其他 SQL 客户端)中处理该问题的最简单方法是在连接配置文件中启用自动提交,以便每个查询自动结束它启动的事务。

    【讨论】:

      猜你喜欢
      • 2018-02-06
      • 1970-01-01
      • 1970-01-01
      • 2014-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 2020-09-27
      相关资源
      最近更新 更多