You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将含JSONB的CSV导入PostgreSQL 14报错,求排查指导

问题原因与解决办法

核心问题

你遇到的错误源于两个关键参数设置错误:

  • 错误的escape参数:你将转义符设为了换行符E'\n',但你的CSV里是用双引号转义双引号(即""表示单个")。这个错误设置会让PostgreSQL无法正确识别JSONB字段的边界,把字段内部的内容当成额外的列,从而触发"extra data after last expected column"错误。
  • 可能的表头参数错误:如果你的CSV文件里并没有表头行,命令里的header参数会把第一行数据当成表头处理,同样会导致列数不匹配的错误。

修正后的导入命令

根据你的CSV实际情况选择:

情况1:CSV无表头行

移除header和错误的escape参数(PostgreSQL默认CSV转义符就是双引号,无需额外指定):

\copy task (id,details,status,time_started,time_completed) FROM '0000-2893fb23.parquet.csv' csv quote '"';

情况2:CSV有表头行

保留header,但移除错误的escape参数:

\copy task (id,details,status,time_started,time_completed) FROM '0000-2893fb23.parquet.csv' csv header quote '"';

验证导入结果

导入完成后,可以执行以下SQL验证JSONB字段是否正确解析:

SELECT id, details->>'t_id', details->>'m_id' FROM task;

内容的提问来源于stack exchange,提问作者JollyRoger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 15:57:11