AWS Redshift:[Amazon](500339)TiMESTAMP发生意外错误

时间:2018-09-14 07:36:12

标签: timestamp locale amazon-redshift

请允许我问有关Redshift TIMESTAMP的更多问题。

当我们选择TIMESTAMP字段时,会出现错误500339或40483,但是使用To_Char公式,它可以按如下所示成功返回;

-- create test table on Redshift
create table test_datetime (
  a timestamp
);

-- insert test data 
insert into test_datetime values ('20180914 04:05:06.789')

-- get error when you select all that table
select *  from test_dm_dbo.test_datetime
error : [Amazon](500339) Unexpected error consuming date type from server, 
source data: "09/14/2018" 1 statement failed.

-- you can get correctly timestamp data to degignate datetime format 
select to_char(a, 'YYYY-MM-DD HH24:MI:SS') as migrated_dt from test_datetime;

migrated_dt
----------------------
2018-09-14 04:05:06

select to_char(a, 'MM/DD/YYYY HH12:MI:SS') as migrated_dt from test_datetime;

migrated_dt
----------------------
09/14/2018 04:05:06

我想象我们的Redshift语言环境或其他需要进一步设置的内容,但是我不确定应该是什么以及应该如何。

如果您有任何解决方法来避免此类问题,那么任何建议都将非常有帮助。

最好的问候;

1 个答案:

答案 0 :(得分:0)

F.Y.I。, 看来我们问题的原因是“ datestyle”。

最初,我们的日期样式被设置为“ SQL,YMD”,即使使用以下简单查询也返回错误;

show datestyle;

NAME        SETTING
------------------------------------
datestyle   SQL, YMD

-- returns error
select current_date;

[Amazon](500339) Unexpected error consuming date type from server, source data: "10/04/2018"
1 statement failed.

使用日期样式“ ISO,YMD”时,将返回日期值而不再发出问题;

-- change datestyle
set datestyle to 'ISO, YMD'

-- returns date value as expected
select current_date;

DATE
------------
2018-10-04

感谢您的关注和建议。 希望它能帮助遇到任何同类问题的人,特别是在美国以外的地区。

好的,

相关问题