SQL - PostgreSQL 错误

SQL - Postgresql ERROR

我正在尝试将数据导入 postgresql。 Windows7、64 位。 我的SQL代码如下:

CREATE TABLE films (
  imdib varchar,
  name varchar,
  year integer,
  rating integer,
  votes integer,
  runtime time,
  directors varchar,
  actors varchar,
  genres varchar
);

我的复制码是:

 COPY films from 'C:\Users\Max\Desktop\imdb_top100.txt' DELIMITER ',';

我的 imdb_top100.txt 包含这个:

tt0111161   The Shawshank Redemption    1994    9.3 1462391 142 mins.   Frank Darabont  Tim Robbins|Morgan Freeman|Bob Gunton   Crime|Drama 

在 Postgresql 上出现此错误:

ERROR: missing datas for column „name“

CONTEXT: COPY films, Line 1: „tt0111161 The Shawshank Redemption 1994 9.3 1462391 142 mins. Frank Darabont Tim Robbins|Morgan F...“ ********** Error **********

您的数据是用制表符分隔的,而不是逗号分隔的。所以你必须指定制表符作为分隔符:

COPY films from 'C:\Users\Max\Desktop\imdb_top100.txt' DELIMITER '\t';

Source

报错是因为没有找到逗号,所有行都对应第一个字段,后面的字段(名称)没有剩余数据。