У меня проблема с импортом данных из csv в таблицу MySQL. Я пытаюсь использовать «Load Data входной_файл», но каждый раз, когда я пытаюсь запустить свой код, я получаюMySQL Load Data Infile - Nulls, вызывающий ошибку 1265: Data Truncated
"Error Code: 1265. Data Truncated for column 'DIP20' at row 237"
Проблемы связана с тем, что колонна DIP20 в строке 237 является первым входом нуля в файле CSV, но мои исследования показывают, что нулевые записи должны быть прочитаны как 0s MySQL. Это останавливает запуск всего импорта, и никакие данные не попадают в мою таблицу. Я пытался найти способ обучить MySQL принимать Nulls, но не смог ничего найти.
Другие темы, которые я заметил в этой области, предложили перенести исходные данные, чтобы поместить «\ N» в каждый нуль, но это действительно нецелесообразно по нескольким причинам. Сначала у меня есть несколько Terrabytes данных для обработки, и, во-вторых, я должен покинуть эту базу данных с другими людьми, когда я закончу ее разработку, и ни у кого из них не будет времени, способности или желания редактировать данные, когда больше получено в будущее.
Если бы кто-нибудь мог предложить способ запустить этот импорт без падения на нуль, я был бы очень благодарен.
код Я пытаюсь запустить это:
LOAD DATA INFILE '\\\\server\\path\\morepath\\file.csv'
INTO TABLE deidata.tbl_HHDataImport
FIELDS TERMINATED BY ',' ESCAPED BY '\\'
LINES TERMINATED BY '\r\n' STARTING BY ''
IGNORE 1 LINES
Структура таблицы выглядит следующим образом:
table tbl_HHDataImport
(
CNF_ID VARCHAR(10) PRIMARY KEY,
Read_date Datetime,
DIP1 float,
DIP2 float,
//...{48 DIP columns here}...
DIP47 float,
DIP48 float
)
(Это indended быть инсценировка таблица, из которой я трансформирует данные в соответствующую реляционную структуру. Это формат данных, которые я получаю, и которые я не могу изменить.)
Я привык к разработке БД в MS SQL Server, но в настоящее время я работаю g для некомпетентной некоммерческой организации с ограниченными возможностями, поэтому меня попросили работать с MySQL. Я думал, что с ним все наладилось, пока не ударил эту проблему. Я использую MySQL 5.6.13 и MySQL workbench 6.0.
Заранее спасибо
Том
Эта ошибка обычно возникает, когда ввод длиннее, чем поле может принимать, убедитесь, что что-то еще входит в таблицу. – johnny