Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL Chaîne de caractères UTF8 non valide lors de l'importation de la table csv

Rien d'autre que j'ai essayé n'a fonctionné pour moi, notamment en veillant à ce que mon fichier .csv soit enregistré avec l'encodage UTF-8.

Cela a fonctionné :

Lors de l'utilisation de LOAD DATA LOCAL INFILE , définissez CHARACTER SET latin1 au lieu de CHARACTER SET utf8mb4 comme indiqué dans https://dzone.com/ articles/mysql-57-utf8mb4-and-the-load-data-infile

Voici un exemple complet qui a fonctionné pour moi :

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;