sql >> Database >  >> RDS >> Mysql

MySQL Ongeldige UTF8-tekenreeks bij het importeren van csv-tabel

Niets anders dat ik probeerde, werkte voor mij, inclusief ervoor zorgen dat mijn .csv werd opgeslagen met UTF-8-codering.

Dit werkte:

Bij gebruik van LOAD DATA LOCAL INFILE , stel CHARACTER SET latin1 . in in plaats van CHARACTER SET utf8mb4 zoals getoond in https://dzone.com/ artikelen/mysql-57-utf8mb4-and-the-load-data-infile

Hier is een volledig voorbeeld dat voor mij werkte:

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;


  1. Batch-bestand voor mysqldump om een ​​back-up te maken van elke database in een apart bestand

  2. Hoe ORA-12505 te repareren, TNS:luisteraar kent momenteel geen SID die is opgegeven in de connect-descriptor

  3. Slaapstand:automatisch de db-tabellen maken/bijwerken op basis van entiteitsklassen

  4. Wanneer cursors te sluiten met MySQLdb