我想将〜{6}行的.xlsx
文件导入MySQL。有些列包含越南字符。我设法将.xlsx
转换为.csv
而不会弄乱字符集。但是,在将.csv
导入MySQL时,我无法做到这一点。
我使用了LOAD DATA INFILE。它看起来像这样:
LOAD DATA LOCAL INFILE 'c:/Projekt/Big Data/events.csv'
INTO TABLE database.table
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES;
(资料来源:http://blog.habrador.com/2013/01/how-to-import-large-csv-file-into-mysql.html)
此方法导入数据正常,但越南字符的字符集完全搞砸了。我确实将表的排序更改为utf8_unicode_ci
。
我还用较小的数据集测试MySQL的传统导入方法,它完美地保留了字体。但是我不能使用它,因为我的文件大小超过了MySQL的限制。
真的很感激,如果有人可以帮我这个。
答案 0 :(得分:2)
尝试通过导入指定显式字符集:
LOAD DATA LOCAL INFILE 'c:/Projekt/Big Data/events.csv'
INTO TABLE database.table
CHARACTER SET utf8
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES;
See docs了解有关从文件加载的更多详细信息。