首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用DBT创建表

使用DBT创建表
EN

Stack Overflow用户
提问于 2022-07-08 07:07:35
回答 1查看 638关注 0票数 0

我们可以在DBT中创建一个新表吗?我们能否使用DBT将数据库中dev环境中存在的表结构复制到另一个环境中?

EN

回答 1

Stack Overflow用户

发布于 2022-07-10 16:49:57

是。但是,Dbt需要一个“理由”来创建表,例如,实现其模型之一生成的数据。DBT不能仅仅为了创建而创建表。

严格地说,您可以通过将CREATE TABLE...放在一个前钩或后钩部分来实现这一点,但是我想这不是您想要的,因为dbt在这里没有任何区别。

您可以在资料来源中定义已存在的表,在该表中可以设置数据库、架构和表名,这与dbt写入数据的目标存储空间不同。然后,定义一个模型,比如:

代码语言:javascript
复制
{{ materialized="table" }}
select * 
from {{ source('your_source', 'existed_table_name') }}
limit 1 /* add "limit 1" if you only want the structure  */ 

profiles.yml中放置必要的连接凭据,并构建模型。在免费创建模型表之前,Dbt将从源表复制一行到模型表。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72907860

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档