我在LOAD DATA LOCAL INFILE加载utf8文件时遇到问题.查询看起来像这样:
LOAD DATA LOCAL INFILE 'file.csv' INTO TABLE artikel CHARACTER SET UTF8
FIELDS TERMINATED BY ';' ENCLOSED BY '"' LINES TERMINATED BY '\r\n';
Run Code Online (Sandbox Code Playgroud)
但是像"Dämmung"这样的特殊字符的字段将被剪切为"D".
SHOW VARIABLES LIKE '%_set_%';
Run Code Online (Sandbox Code Playgroud)
显示它全部设置为utf8,我甚至使用notepad ++来确保文件是utf8.
这真的有帮助,如果有人知道建议,这是一个巨大的文件,我想避免手动输入错误的字段: - /
我试图用“%”替换所有特殊字符,例如:
"123.456/789" -> "123%465%798"
Run Code Online (Sandbox Code Playgroud)
我的正则表达式是:
[^a-zA-Z0-9]+
Run Code Online (Sandbox Code Playgroud)
在在线工具*中它工作得很好,但是在java中
s.replaceAll("[^a-zA-Z0-9]+", "%");
Run Code Online (Sandbox Code Playgroud)
琴弦保持不变。