Не удается прочитать файл CSV с помощью pgAdmin, - PullRequest
1 голос
/ 03 июля 2019

Я хочу прочитать CSV-файл на рабочем столе с именем «tripdata». Я написал код, но всегда получаю эту ошибку:

ERROR:  invalid input syntax for integer: "NULL"
CONTEXT:  COPY tripdata, line 4, column birth_year: "NULL"
SQL state: 22P02

Я не знаю, в чем проблема. Я так же читаю другие файлы CSV.

CREATE TABLE public."tripdata"  (tripduration integer,
                starttime timestamp,
                stoptime timestamp,
                start_station_id integer,
                start_station_name varchar(100),
                start_station_latitude float,
                start_station_longituder float,
                end_station_id integer,
                end_station_name varchar(100),
                end_station_latitude float,
                end_station_longituder float,
                bikeid integer,
                usertime varchar(100),
                birth_year integer,
                gender varchar(100));

SELECT * FROM public."tripdata";
COPY public."tripdata" FROM 'C:\Users\Pc\Desktop\tripdata.csv' DELIMITER ',' CSV HEADER;

select * from tripdata;

1 Ответ

2 голосов
/ 03 июля 2019

Полагаю, вам придется сообщить COPY, что такое NULL.

https://www.postgresql.org/docs/10/sql-copy.html

NULL Задает строку, представляющую нулевое значение.По умолчанию используется \ N (обратная косая черта-N) в текстовом формате и пустая строка без кавычек в формате CSV.

Так в вашем случае:

COPY ... NULL AS 'NULL';
...