Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Cadeia de caracteres UTF8 inválida do MySQL ao importar a tabela csv


Nada mais que tentei funcionou para mim, incluindo garantir que meu .csv fosse salvo com codificação UTF-8.

Isso funcionou:

Ao usar LOAD DATA LOCAL INFILE , defina CHARACTER SET latin1 em vez de CHARACTER SET utf8mb4 como mostrado em https://dzone.com/ artigos/mysql-57-utf8mb4-and-the-load-data-infile

Aqui está um exemplo completo que funcionou para mim:
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;