Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL Stringa di caratteri UTF8 non valida durante l'importazione della tabella CSV

Nient'altro che ho provato ha funzionato per me, incluso assicurarmi che il mio .csv fosse salvato con la codifica UTF-8.

Questo ha funzionato:

Quando si utilizza LOAD DATA LOCAL INFILE , imposta CHARACTER SET latin1 invece di CHARACTER SET utf8mb4 come mostrato in https://dzone.com/ articoli/mysql-57-utf8mb4-and-the-load-data-infile

Ecco un esempio completo che ha funzionato per me:

TRUNCATE homestead_daily.answers;
SET FOREIGN_KEY_CHECKS = 0; 
TRUNCATE homestead_daily.questions;
SET FOREIGN_KEY_CHECKS = 1; 
LOAD DATA LOCAL INFILE 'C:/Users/me/Desktop/questions.csv' INTO TABLE homestead_daily.questions
CHARACTER SET latin1
FIELDS TERMINATED BY ',' 
ENCLOSED BY '"' 
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES
(type, question, created_at, updated_at);
SELECT * FROM homestead_daily.questions;