转换数据时出错,参数类型无效:Redshift 中的 2
Posted
技术标签:
【中文标题】转换数据时出错,参数类型无效:Redshift 中的 2【英文标题】:Error converting data, invalid type for parameter: 2 in Redshift 【发布时间】:2016-11-25 09:20:33 【问题描述】:我在将数据从 mysql 移动到 redshift 数据库时遇到以下错误。
源数据是:
id emp_name age city update_date
a01 sarang 25 indore 2016/01/10 00:00:00.000
a02 shri 26 indore 2016/01/11 00:00:00.000
a03 chinu 27 indore 2016/01/12 00:00:00.000
a04 rohan 25 indore 2016/01/13 00:00:00.000
a05 manish 26 shajapur 2016/01/14 00:00:00.000
表定义为:
CREATE TABLE CDC (
id varchar(50) NOT NULL,
emp_name varchar(400) DEFAULT NULL,
age int(10) DEFAULT NULL,
city varchar(200) DEFAULT NULL,
update_date date,
PRIMARY KEY (id))
我看不到任何数据类型问题。
【问题讨论】:
找不到提到的错误。 错误是什么? 【参考方案1】:你可以试试这个吗?
CREATE TABLE CDC (
id varchar(50) NOT NULL,
emp_name varchar(400) DEFAULT NULL,
age integer DEFAULT NULL,
city varchar(200) DEFAULT NULL,
update_date date,
PRIMARY KEY (id))
如文档 (Redshift Data Types) 中所述,声明整数的正确语法是 SMALLINT、INTEGER 或 BIGINT,具体取决于字段的值范围。
如果你想保持第二个精度,你不妨使用时间戳作为 update_date。
【讨论】:
我给的定义是source DB,是MySQL,不是redshift。 那么如何将数据从mysql转移到redshift呢? 我正在使用 Pentaho ETL。以上是关于转换数据时出错,参数类型无效:Redshift 中的 2的主要内容,如果未能解决你的问题,请参考以下文章
使用 spark(py)从 amazon redshift 读取数据时出错请求存储桶位置时必须指定存储桶名称参数
解析 JSON 时出错:输入中有多个文档(Redshift 到 Snowflake SQL)