Snowflake中的工作表、错误表和日志表?
Posted
技术标签:
【中文标题】Snowflake中的工作表、错误表和日志表?【英文标题】:Work table, error table and log table in Snowflake? 【发布时间】:2020-05-26 15:25:01 【问题描述】:Snowflake 中的以下 Teradata 表相当于什么:
工作台 (WT) 错误表(ET) UV 表-(另一个存储违反唯一性数据的错误表) 日志表(LT)这些表使用 Teradata TPT 填充,Snowflake 中是否有等价物?
【问题讨论】:
【参考方案1】:为了便于分析错误,COPY INTO 语句随后会将有问题的记录卸载到文本文件中,以便在原始数据文件中进行分析和修复。 该语句查询 RESULT_SCAN 表函数以检索记录。请注意,本节中的语句必须连续运行才能使用 LAST_QUERY_ID 函数检索适用的记录。
copy into mytable
from @mystage/myfile.csv.gz
validation_mode=return_all_errors;
set qid=last_query_id();
copy into @mystage/errors/load_errors.txt from (select rejected_record from table(result_scan($qid)));
文档参考:https://docs.snowflake.com/en/user-guide/data-load-bulk-ts.html#step-2-validating-the-data-load
【讨论】:
感谢@FKayani 的回答。我正在使用pyodbc
并一个接一个地运行查询,不确定set qid=last_query_id();
是否有效?而不是文本,我相信我可以将它复制到错误表中?另外,您能否在WT
、UV
、LT
表上添加详细信息?以上是关于Snowflake中的工作表、错误表和日志表?的主要内容,如果未能解决你的问题,请参考以下文章
在 Python 中获取 google 电子表格 api v4 中的工作表和最新工作表列表