mysql:13746
From: YuGo <YuGo <yu.gotou@xxxxxxxxxx>>
Date: Thu, 22 Feb 2007 16:13:07 +0900
Subject: [mysql 13746] Re: mysqlimportでの文字化け
こんにちは。 1.クライアントのキャラクタセットとサーバーのキャラクタセットは違いますか? mysql>SHOW VARIBLES LIKE 'char%' ; の結果 character_set_client ? character_set_database sjis 2.mysqlimportのオプションを変えてみる --default-character-set=binary 3.16進数にして、どう置き換わったか調べる。 mysql> SELECT HEX('アイソテック') ; mysql> SELECT HEX('アイャeック') ; 富士和電子 伊藤浩樹 wrote: > 初級者 いとうと申します。 > > mysqlimportにてCSVファイルをテーブルにインポートしています。 > > 困ったことは有る特定の日本語一部が化けてしまい元データと違うデータとなっ > てしまいます。cronを使った半自動化を考えており、load data infileを極力 > 使いたく無いのです。 > > 解決へのヒントなど有りましたら、お手数ですが御指南頂きたいと思います。 > > mysqlimport -u root --password=***** -d -v > --fields-terminated-by=',' > --default-character-set=sjis > --fields-enclosed-by='"' > --ignore-lines=1 shukei /var/lib/mysql/BUSYOPF.CSV > ****はパスワードを記載しています。 > > 結果は > > Connecting to localhost > Selecting database shukei > Deleting the old data from table BUSYOPF > Loading data from SERVER file: /var/lib/mysql/BUSYOPF.CSV into BUSYOPF > shukei.BUSYOPF: Records: 300 Deleted: 0 Skipped: 0 Warnings: 0 > Disconnecting from localhost > > と問題がなさそうですが、データの表示をしてみると > > 正しい文字列 アイソテック > インポート後の文字列 アイャeック > > となってしまいます。 > > load data infileの場合はこのようなことは発生していません。 > mysql> load data infile './BUSYOPF.CSV' > into table BUSYOPF > fields terminated by ',' > enclosed by '"' ignore 1 lines; > > > 実行環境は以下の通りです。 > OS FedoraCore4 mysql-4.1.19-1.FC4.1 > > mysql Ver 14.7 Distrib 4.1.19, for redhat-linux-gnu (i386) using readline 4.3 > > Connection id: 3 > Current database: > Current user: root@localhost > SSL: Not in use > Current pager: stdout > Using outfile: '' > Using delimiter: ; > Server version: 4.1.19 > Protocol version: 10 > Connection: Localhost via UNIX socket > Server characterset: sjis > Db characterset: sjis > Client characterset: sjis > Conn. characterset: sjis > UNIX socket: /var/lib/mysql/mysql.sock > Uptime: 22 sec > > > my.cnf > > [mysqld] > datadir=/var/lib/mysql > socket=/var/lib/mysql/mysql.sock > old_passwords=1 > port = 13306 > default-character-set=sjis > skip-character-set-client-handshake > [mysql.server] > user=mysql > basedir=/var/lib > port = 13306 > [mysqld_safe] > err-log=/var/log/mysqld.log > pid-file=/var/run/mysqld/mysqld.pid > > > よろしくお願いいたします。 > > >
13744 2007-02-22 15:21 [富士和電子 伊藤浩樹 ] mysqlimportでの文字化け 13745 2007-02-22 15:27 ┣[Tetsuro IKEDA <te.ik] 13747 2007-02-22 16:33 ┃┗[富士和電子 伊藤浩樹 ] 13749 2007-02-22 16:52 ┃ ┗[Tetsuro IKEDA <te.ik] 13760 2007-02-23 11:37 ┃ ┗[富士和電子 伊藤浩樹 ] -> 13746 2007-02-22 16:13 ┗[YuGo <yu.gotou@xxxxx] 13748 2007-02-22 16:43 ┗[富士和電子 伊藤浩樹 ] 13750 2007-02-22 16:57 ┣[富士和電子 伊藤浩樹 ] 13752 2007-02-22 18:06 ┃┗[YuGo <yu.gotou@xxxxx] 13751 2007-02-22 17:51 ┗[YuGo <yu.gotou@xxxxx]