【问题标题】:ERROR: extra data after last expected column : PGADMIN错误:最后一个预期列之后的额外数据:PGADMIN
【发布时间】:2021-05-26 12:20:29
【问题描述】:

我正在尝试使用 pg-admin 将 CSV (Cities.csv) 导入我的 Postgres。我知道这是一个常见问题,在 SO 上找到的答案很少。但是,我们如何通过 pg-admin 解决这个问题?

【问题讨论】:

  • 可以分享ei_test的创建表吗?

标签: sql postgresql csv pgadmin


【解决方案1】:

我不会依赖像 pgAdmin 这样的工具来导入数据。它确实提供了一个不错的用户界面并且非常直观,但是psql 仍然是迄今为止最灵活的选择。

注意:您的 CSV 文件末尾有一个空行,这可能是导致错误的原因。过滤掉它的一种选择是使用sed(参见下面的示例)。这样COPY 命令就已经清理干净并准备好导入记录了。

$ sed -e /^$/d cities.csv | psql -d mydb -c "COPY ei_test FROM STDIN WITH CSV HEADER;"

您的数据已经可以使用了..

SELECT * FROM ei_test LIMIT 10;

 latd | latm | lats | ns | lond | lonm | lons | ew |       city       | state 
------+------+------+----+------+------+------+----+------------------+-------
   41 |    5 |   59 |  N |   80 |   39 |    0 |  W |  Youngstown      |  OH
   42 |   52 |   48 |  N |   97 |   23 |   23 |  W |  Yankton         |  SD
   46 |   35 |   59 |  N |  120 |   30 |   36 |  W |  Yakima          |  WA
   42 |   16 |   12 |  N |   71 |   48 |    0 |  W |  Worcester       |  MA
   43 |   37 |   48 |  N |   89 |   46 |   11 |  W |  Wisconsin Dells |  WI
   36 |    5 |   59 |  N |   80 |   15 |    0 |  W |  Winston-Salem   |  NC
   49 |   52 |   48 |  N |   97 |    9 |    0 |  W |  Winnipeg        |  MB
   39 |   11 |   23 |  N |   78 |    9 |   36 |  W |  Winchester      |  VA
   34 |   14 |   24 |  N |   77 |   55 |   11 |  W |  Wilmington      |  NC
   39 |   45 |    0 |  N |   75 |   33 |    0 |  W |  Wilmington      |  DE
(10 Zeilen)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多