Я пытаюсь импортировать файл CSV, который содержит кучу данных. Данные не имеют первичного ключа или уникального идентификатора, поэтому я создал таблицу с полем «id», которое является первичным ключом и автоматически увеличивается.
Допустим, в таблице три поля: id, LastName и FirstName. Мой CSV-файл имеет только LastName, FirstName. Я получаю кучу ошибок, которые говорят, что строка X не содержит данных для всех столбцов.
Я попытался явно назвать поля, которые я хочу добавить, полагая, что автоматическое увеличение присвоит значение, но это не работает, когда я делаю это:
LOAD DATA LOCAL INFILE '/path/insert.csv' INTO TABLE data (LastName, FirstName);
Я получаю ту же ошибку, строка X не содержит данных для всех столбцов ...
Я попытался затем явно установить id равным Null:
LOAD DATA LOCAL INFILE '/path/insert.csv' INTO TABLE data (id, LastName, FirstName)
SET id=null;
Та же ошибка Строка X не содержит данных для всех столбцов. Я пытался:
LOAD DATA LOCAL INFILE '/path/insert.csv' INTO TABLE data
FIELDS TERMINATED BY ',' LINES TERMINATED BY '/n' SET id=null;
Когда я это делаю, он пытается взять первое значение в моем CSV и присвоить его полю id, а затем дает мне неправильное целочисленное значение для столбца 'id' в строке 1.
Как добавить данные в таблицу, если используемый мной CSV-файл не содержит всех полей в таблице? Спасибо!
EDIT:
Вот поля таблицы:
id | int(11) | NO | PRI | NULL | auto_increment
LastName | tinytext | YES | | NULL |
FirstName | tinytext | YES | | NULL |
Вот файл CSV:
Smith,John
Coconut,Joe
Ann,Pattye
Они находятся на разностных линиях. Я не могу заставить форматирование stackoverflow взаимодействовать.