LOAD_HISTORY 视图¶
通过此 Information Schema 视图,可以使用 COPY INTO <table> 命令检索过去 14 天内加载到表中的数据的历史记录。该视图为加载的每个文件显示一行。
备注
此视图不返回使用 Snowpipe 加载的数据的历史记录。有关此历史信息,请改为查询 COPY_HISTORY 表函数。
列¶
列名称 |
数据类型 |
描述 |
---|---|---|
SCHEMA_NAME |
TEXT |
目标表的架构 |
FILE_NAME |
TEXT |
源文件的名称 |
TABLE_NAME |
TEXT |
目标表的名称 |
LAST_LOAD_TIME |
TIMESTAMP_LTZ |
加载记录的时间戳 |
STATUS |
TEXT |
状态: |
ROW_COUNT |
NUMBER |
从源文件加载的行数 |
ROW_PARSED |
NUMBER |
从源文件解析的行数 |
FIRST_ERROR_MESSAGE |
TEXT |
源文件的第一个错误 |
FIRST_ERROR_LINE_NUMBER |
NUMBER |
第一个错误的行号 |
FIRST_ERROR_CHARACTER_POSITION |
NUMBER |
第一个错误字符的位置 |
FIRST_ERROR_COL_NAME |
TEXT |
第一个错误的列名 |
ERROR_COUNT |
NUMBER |
源文件中的错误行数 |
ERROR_LIMIT |
NUMBER |
如果错误数达到此限制,则中止 |
使用说明¶
删除表时,将从该视图中移除 COPY INTO 命令的历史数据。
该视图仅包括已执行并完成的 COPY INTO 命令,无论是否出错。例如,如果事务已回滚,或者 COPY INTO <table> 语句中包含 ON_ERROR = ABORT_STATEMENT 复制选项,并且数据文件中检测到的错误中止加载操作,则不会添加任何记录。
此视图返回的上限为 10,000 行。要避免此限制,请使用 LOAD_HISTORY 视图 (Account Usage)、COPY_HISTORY 函数 (Information Schema) 或 COPY_HISTORY 视图 (Account Usage)。
当包含引用
LAST_LOAD_TIME
列的 WHERE 子句时,可以指定一周中的任何一天。例如,2016 年 4 月 1 日是星期五;但是,改为指定星期日不会影响查询结果:WHERE last_load_time > 'Sun, 01 Apr 2016 16:00:00 -0800'
LOAD_HISTORY 视图仅在对目标表执行最新截断操作后才显示加载历史记录。这适用于 复制 之前和之后的 LOAD_HISTORY 视图。
示例¶
检索自 2016 年 4 月 1 日以来加载到 MYDB.PUBLIC.MYTABLE
表中的数据的历史记录,假设 4 月 1 日发生在过去 14 天内:
USE DATABASE mydb; SELECT table_name, last_load_time FROM information_schema.load_history WHERE schema_name=current_schema() AND table_name='MYTABLE' AND last_load_time > 'Fri, 01 Apr 2016 16:00:00 -0800';
检索对 MYDB
数据库执行的 10 个最新 COPY INTO 命令的记录:
USE DATABASE mydb; SELECT table_name, last_load_time FROM information_schema.load_history ORDER BY last_load_time DESC LIMIT 10;