You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用dbt redshift.unload_table宏时出现语法错误求助

问题排查与修复

你的代码存在几处语法和参数使用错误,直接导致第13行解析报错,逐一修复如下:

1. 替换中文单引号为英文单引号

第13、14行的aws_key = ‘XXXX'和aws_secret = ‘XXXX'中,开头的引号是中文单引号‘,这会被dbt判定为语法错误,需全部替换为英文单引号'。

2. 修正redshift.unload_table的参数传递

redshift.unload_table宏的第一个参数应为要导出的目标表,直接用this即可(this代表当前dbt模型对应的Redshift表),无需额外拼接dbt_test_ods或user_performance。若需指定其他表,可传入ref('user_performance')或字符串'dbt_test_ods.user_performance'。

3. 简化config写法

dbt的config函数不需要外层嵌套大括号,直接传入键值对参数即可,多余的大括号会引发解析异常。

修复后的完整代码

{{
  config(
    materialized="table",
    post-hook=[
      "{{ redshift.unload_table(
          this,
          s3_path = 's3://XXXX/user_performance/',
          aws_key = 'XXXX',
          aws_secret = 'XXXX',
          format = 'parquet',
          parallel = False
        ) }}"
    ]
  )
}}

内容的提问来源于stack exchange,提问作者brunondjoyer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 00:05:20