ジオノームデータセットをロードする際に問題が発生しています。 HERESに私のプロセス:最初のmysqlにgeonames.orgデータセットをロードするには
私は私のデータベースGEONAMES
を作成し、その後、私は私のテーブルを作成します。次の
CREATE TABLE `geoname` (
`geonameid` int(11) NOT NULL,
`name` varchar(200) DEFAULT NULL,
`asciiname` varchar(200) DEFAULT NULL,
`alternatenames` varchar(4000) DEFAULT NULL,
`latitude` decimal(10,7) DEFAULT NULL,
`longitude` decimal(10,7) DEFAULT NULL,
`fclass` char(1) DEFAULT NULL,
`fcode` varchar(10) DEFAULT NULL,
`country` varchar(2) DEFAULT NULL,
`cc2` varchar(60) DEFAULT NULL,
`admin1` varchar(20) DEFAULT NULL,
`admin2` varchar(80) DEFAULT NULL,
`admin3` varchar(20) DEFAULT NULL,
`admin4` varchar(20) DEFAULT NULL,
`population` int(11) DEFAULT NULL,
`elevation` int(11) DEFAULT NULL,
`gtopo30` int(11) DEFAULT NULL,
`timezone` varchar(40) DEFAULT NULL,
`moddate` date DEFAULT NULL,
PRIMARY KEY (`geonameid`),
KEY `name` (`name`),
KEY `asciiname` (`asciiname`),
KEY `latitude` (`latitude`),
KEY `longitude` (`longitude`),
KEY `fclass` (`fclass`),
KEY `fcode` (`fcode`),
KEY `country` (`country`),
KEY `cc2` (`cc2`),
KEY `admin1` (`admin1`),
KEY `population` (`population`),
KEY `elevation` (`elevation`),
KEY `timezone` (`timezone`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_unicode_ci;
は私の問題であり、私はデータにGETをロードしようとしている。
最後のエラーメッセージ
無効utf8文字列: '' Afikanisitani、「Apekanikana、Aプー漢(アフガニスタンn)は、AのデータをロードするためのPHU漢 "
HERESに私のクエリ:
LOAD DATA LOCAL INFILE 'allCountries.txt'
INTO TABLE geoname
CHARACTER SET 'UTF8'
(geonameid, name, asciiname, alternatenames, latitude, longitude, fclass, fcode, country, cc2, admin1, admin2, admin3, admin4, population, elevation, gtopo30, timezone, moddate);
私は続編プロコマンドラインで私のクエリを実行していますよ。
データがUTF8であり、テーブルがUTF8用に正しく設定されていると仮定すると、問題はクライアント(sequel pro)の可能性が最も高いです。それはutf8を扱うように設定されていますか、それともラテン文字かASCIIかUTF16か他の何か奇妙なものにデフォルト設定されていますか? – JNevill
@JNevill - 私は同じ問題があります。私はSequel Proを使用しないで、私は今日まで働いていたUbuntuの端末でMySQLコマンドを実行します。他のアイデア? – TomDogg