如何解决dbt报错:unrecognized arguments: --schema?
解决dbt运行
dbt --schema报错的问题 --schema不是dbt的全局可用参数,这就是你报错的原因。dbt的参数都是绑定到具体子命令(比如run/test/ls等)或者通过配置文件设置的,没有全局的--schema选项。
根据你的需求,分几种情况给出解决方法:
如果是想指定模型执行时使用的schema:
不要用全局参数,而是通过配置文件或模型级配置实现:- 全局配置:在项目根目录的
dbt_project.yml里设置,比如:models: 你的项目名: +schema: 目标schema名称 - 单个模型配置:在模型SQL文件开头添加配置:
{{ config(schema='目标schema名称') }}
- 全局配置:在项目根目录的
如果是想查看项目中已配置的schema信息:
- 直接查看
dbt_project.yml(模型schema)或models/sources.yml(数据源schema)文件; - 用
dbt ls --output json命令输出所有模型的详细信息,在Windows cmd里可以加上过滤:dbt ls --output json | findstr "schema"
- 直接查看
如果是想确认dbt支持的参数:
查看全局参数用dbt --help,查看具体子命令的可用参数(比如run)用dbt run --help,避免使用不存在的参数。
内容的提问来源于stack exchange,提问作者xavier
相关产品推荐
相关产品推荐

