通过MySQL Workbench导入大CSV文件时遇ASCII编码解码错误求助
MySQL Workbench导入CSV时ASCII编码错误的解决办法
指定CSV文件的编码格式
在MySQL Workbench导入向导的「高级选项」里,找到「字符集」下拉菜单,选择和CSV文件匹配的编码(比如UTF-8,0xc3属于UTF-8字节,对应特殊字符或带重音的字符)。不确定编码的话,用Notepad++打开CSV,查看右下角的编码标识即可。调整数据库/表的字符集
确保目标数据库和表的字符集支持非ASCII字符,推荐用utf8mb4(比普通utf8支持更多字符),执行以下SQL修改:ALTER DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;用LOAD DATA INFILE命令替代图形界面
大型CSV用命令行方式更稳定,执行以下SQL(替换占位符为实际信息):LOAD DATA INFILE '/path/to/your/file.csv' INTO TABLE your_table_name CHARACTER SET utf8mb4 FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 有表头的话忽略第一行注意:若服务器无法读取文件,可添加
LOCAL关键字改为LOAD DATA LOCAL INFILE,从客户端加载文件。预处理CSV文件
若以上方法无效,用Notepad++打开CSV,通过「编码」菜单选择「转为UTF-8」,保存后再重新导入。
内容的提问来源于stack exchange,提问作者cget
相关产品推荐
相关产品推荐

