尝试将数据从CSV文件导入AWS Postgres DB时出错

bejyjqdl  于 9个月前  发布在  其他
关注(0)|答案(1)|浏览(71)

我试图插入存储在AWS s3存储桶中的CSV文件到Postgres数据库中,在psql会话中使用aws_s3.table_import_from_s3函数。它似乎正在工作(表中的所有varchar数据似乎都被接受),直到它遇到布尔值。我想知道我能做些什么,让它接受我的数据。
我的代码看起来像这样:

postgres=> SELECT aws_s3.table_import_from_s3(
   'my_table',
   '', 
   '(format csv)',
   :'s3_uri'
);

字符串
然后我遇到了这个错误:

invalid input syntax for type boolean: "Mixed Breed"
CONTEXT:  COPY my_table, line 1, column mixed_breed: "Mixed Breed"


CSV数据是从API中提取的,并在Python中创建。我使用类型仔细检查了它是布尔数据类型。列中的值都是“True”和“False”。
有什么建议吗?ChatGPT帮不上忙。

ibrsph3r

ibrsph3r1#

aws_s3.table_import_from_s3函数在里面隐藏了一个COPY命令。并且错误msg.表示列标题。所以尝试添加header

SELECT aws_s3.table_import_from_s3('my_table', '', '(format csv, header)', :'s3_uri');

字符串
手册:
在输入时,当此选项设置为true时,第一行将被丢弃
唯一的其他解释是源中的数据无效。但您排除了这种情况:
我使用类型仔细检查了它是布尔数据类型。列中的值都是“True”和“False”。

相关问题