postgresql 导入csv错误:类型时间戳输入语法无效:“”

ijnw1ujt  于 2023-06-05  发布在  PostgreSQL
关注(0)|答案(1)|浏览(1498)

我试图导入一个CSV文件,我使用PGAdmin从supabase导出我一直得到这个错误:
错误:timestamp类型的输入语法无效:“”?上下文:COPY用户,第2行,电子邮件列验证:“”
在Supabase中,所有记录的emailVerified字段均为空。CSV示例如下所示:

"id","name","email","emailVerified","image"    
"abc123","Guy Man","guyt@man.com","","https://pic.com"

我尝试编辑CSV并将NULL添加到emailVerified字段,但出现同样的错误。我还尝试在PGAdmin中将Null添加到导入选项中。
然后我尝试手动输入一个记录。我通过输入每个字段添加了上面的一个。我没有输入任何电子邮件验证,它接受了它。
如何避免此问题?这是一个有5条记录的测试表,我可以手动添加这些记录,但这不是一个理想的解决方案。如何让PgAdmin接受CSV中写入的记录?

w3nuxt5m

w3nuxt5m1#

在CSV格式中表示NULL的默认方式是使用完全空的字符串。在你的例子中,它看起来像:
“abc123”,“Guy Man”,”guyt@man.com“,,”https://pic.com“
注意第四个字段没有双引号。
要导入当前的数据,可以将force_null ("emailVerified")指定给COPY命令。这告诉它查找表示NULL的字符串,即使它在双引号内。但据我所知,没有办法通过pgAdmin4GUI方法构造这样的COPY命令。
因此,您要么需要手动构造命令并在psql中运行它,要么编辑输入文件以省略空字段周围的双引号。

相关问题