PostgreSQL 错误:最后一个预期列之后有额外数据(但列数量相同)

问题描述 投票:0回答:1

我知道这不是一个不常见的问题,我一直在研究其他问题。 但读完之后我还是没能解决我的问题。

我正在使用 PostgreSQL,想要填充我用生成的表文件创建的 TPC-H 表。我使用以下命令成功填充了除 partsupp 之外的所有表格。

postgres=# COPY tpch1g.partsupp FROM '/home/user/TPC-H_1gb/partsupp.tbl' DELIMITER '|' CSV;

然后我收到这条消息:

错误:最后一个预期列之后有额外数据上下文:复制partsupp, 第 1 行:“1|2|3325|771.64|,甚至经纬仪。常规,最终 经纬仪在小心翼翼地等待的狐狸之后吃东西......”

据我了解,此消息告诉我数据中的列数与 partsupp 表的预期列数不匹配。

partsupp 表有 5 列:

\d tpch1g.partsupp
                         Table "tpch1g.partsupp"
    Column     |          Type          | Collation | Nullable | Default 
---------------+------------------------+-----------+----------+---------
 ps_partkey    | integer                |           | not null | 
 ps_suppkey    | integer                |           | not null | 
 ps_availqty   | integer                |           |          | 
 ps_supplycost | numeric(15,2)          |           |          | 
 ps_comment    | character varying(199) |           |          | 
Indexes:
    "partsupp_pkey" PRIMARY KEY, btree (ps_partkey, ps_suppkey)

我的 partsupp.tbl 中的一行看起来像这样:

1|2|3325|771.64|,甚至是经纬仪。常规的、最后的经纬仪吃 在小心翼翼地等待狐狸之后。疯狂定期存款睡觉 狡猾地。谨慎大胆的领域高于具有讽刺意味的依赖性讨价还价 小心|

它具有相同数量的列,所以我不明白出了什么问题。我的复制命令完美地适用于其他表。我是否做错或忽略了什么?

postgresql
1个回答
0
投票

partsupp.tbl 中的示例以分隔符结尾,因此存在额外的数据列与表结构不匹配。

© www.soinside.com 2019 - 2024. All rights reserved.