0

UCS2-Big Indian でエンコードされた 1 つの大きな csv ファイルを mysql テーブルにインポートしようとしています。

これはmysqlコードです:

DROP TABLE if exists PAPERS; 

CREATE TABLE `PAPERS` (
ID_RESEARCHER VARCHAR(20),
PAPER_ACCESSOR_NUMBER VARCHAR(20),
  primary key(ID_RESEARCHER,PAPER_ACCESSOR_NUMBER)
) ENGINE=InnoDB DEFAULT CHARSET=ucs2;

load data local infile '...dump_all_papers_test_2.csv' 
into table PAPERS
CHARACTER SET ucs2
fields terminated by '\t' enclosed by '"'
lines terminated by '\n' 
(ID_RESEARCHER, PAPER_ACCESSOR_NUMBER);

そしてcsvの内容(フォーマットucs-2 Big Indian、notepad ++で言った)

"100"   "A1974U626600001"
"100"   "A1974U626600001"
"100"   "A1974U626600001"

csv サンプルのコピー:

http://pastebin.com/HMssuxCf

エラーは次のとおりです。

1 row(s) affected, 2 warning(s):
1265 Data truncated for column 'ID_RESEARCHER' at row 1
1261 Row 1 doesn't contain data for all columns
Records: 1  Deleted: 0  Skipped: 0  Warnings: 2

ここで何が起きてるの?

アクションは最初のフィールドのみを埋めます。mysql は ucs2 をサポートしていませんか?

4

1 に答える 1

0

Ok。

解決策はドキュメントにあります:

現在、ucs2 文字セットを使用するデータ ファイルをロードすることはできないことに注意してください。

http://dev.mysql.com/doc/refman/5.0/en/load-data.html

于 2012-07-23T09:36:19.493 に答える