【问题标题】:Importing large CSV file into Postgres error unquoted carriage将大型 CSV 文件导入 Postgres 错误未加引号的车厢
【发布时间】:2020-04-25 22:49:16
【问题描述】:

我正在尝试使用 COPY 导入一个大型 csv 文件,但我不断收到此错误代码。

ERROR:  unquoted carriage return found in data
HINT:  Use quoted CSV field to represent carriage return.
CONTEXT:  COPY nyc_yellow_taxi_trips_2018_01, line 2
SQL state: 22P04

我知道这是由于标题正下方的空白行,但我尝试通过 TextEdit 打开手动删除空格。我也试过用excel打开,文件太大,无法编辑,但是用TextEdit删除空格后,就没有空格了。

我仍然收到此错误。很可能是一个简单的修复,但我已经有一段时间了。

这是我的代码:

COPY nyc_yellow_taxi_trips_2018_01 
FROM '/Users/eddy/taxi/yellow_tripdata_2018-01.csv' 
WITH (FORMAT CSV, header, Delimiter ',' );

【问题讨论】:

  • 如果没有嵌入的逗号,您可以尝试引用 all 字段。这可以使用 sed 完成,但忽略嵌入的换行符可能会很棘手。 [注意:vi(m) 允许编辑多 GB 文件]

标签: sql postgresql csv copy


【解决方案1】:

您的行尾似乎不一致。它找到了一个回车符,但它预计(基于标题行的结尾)只是换行符或 CRNL。

你需要使行尾一致,我不知道如何使用TextEdit。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-13
    • 1970-01-01
    相关资源
    最近更新 更多