我正在尝试使用MySQL的LOAD DATA语句导入small data set柏林街道地址。问题是,在导入运行之后,德国街道名称中所有漂亮的ß字符都变成了sets集。
这是我用于此表的create-table语句:
CREATE TABLE `subway_distances` (
`STN` varchar(255) DEFAULT NULL,
`HNR` int(9) DEFAULT NULL,
`Lat` decimal(36,15) DEFAULT NULL,
`Lon` decimal(36,15) DEFAULT NULL,
`Distance` decimal(45,20) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8
...这是我的MySQL shell代码:
charset utf8;
TRUNCATE TABLE subway_distances;
LOAD DATA LOCAL INFILE '/path/to/output.csv'
INTO TABLE berlin.subway_distances
FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\\';
SELECT * FROM subway_distances LIMIT 0,10;
我在vim中查看了output.csv,eszett字符似乎很好。
我假设我在MySQL中只需要一个不同的编码声明,但我不知道从哪里开始。
我也假设整理无关紧要,因为我不是在比较价值 - 只是纯粹试图获得有效的导入。
答案 0 :(得分:0)
我找到了相对较快的答案。看起来我只需要在LOAD DATA语句中指定CHARACTER SET值。所以新的陈述如下:
datetime