Redshift COPY 错误 1206 无效时间戳

Posted

技术标签:

【中文标题】Redshift COPY 错误 1206 无效时间戳【英文标题】:Redshift COPY error 1206 invalid timestamp 【发布时间】:2018-06-28 19:20:42 【问题描述】:

我正在尝试使用 COPY 命令将一些数据移动到 redshift,但是它不喜欢时间戳值的格式。在数据集中它被格式化为 MM/DD/YYYY HH24:MI

copy table_name from '[data source]'
access_key_id '[access key]'
secret_access_key '[secret access key]'
region 'us-east-1'
dateformat 'auto'
null as 'NA'
delimiter ','
removequotes;

我尝试使用 dateformat 'auto' 来检测格式,但它仍然给我相同的错误代码并说:

Invalid timestamp format or value [YYYY-MM-DD HH24:MI:SS]  

我也试过了

dateformat as 'MM/DD/YYYY HH24/MI'

但是,它也出现了错误代码 1206。

有谁知道如何解决这个问题,它将接受数据中已经设置的时间戳格式?

【问题讨论】:

【参考方案1】:

您应该尝试timeformat 'auto' 而不是dateformat 'auto'

见https://docs.aws.amazon.com/redshift/latest/dg/automatic-recognition.html

【讨论】:

试过了,现在我在格式为 MM/DD/YYYY 的下一列日期类型上收到错误代码 1205,它说遇到了无效数字。日期是 2011 年 11 月 18 日【参考方案2】:

同时使用

dateformat as 'auto'
timeformat as 'auto'

他们似乎一起工作,上传所有数据,只是将格式从 MM/DD/YYYY 更改为 YYYY-MM-DD

【讨论】:

以上是关于Redshift COPY 错误 1206 无效时间戳的主要内容,如果未能解决你的问题,请参考以下文章

Redshift COPY Statement 日期加载错误

Redshift COPY 命令中的时间戳格式无效

Redshift COPY 命令返回 stl_load_error 1205 无效的日期格式 - 长度必须为 10 或更多

使用 JSONPATHS 文件到 Redshift 的 JSON 文件 - 无效的 jsonpath 格式

如何将时间插入红移

Redshift 中的无效数据错误