Home > SELECT INTO OUTFILEでダンプする際に文字コードはどれくらい注意すべきか

SELECT INTO OUTFILEでダンプする際に文字コードはどれくらい注意すべきか

  • June 27, 2007 11:55 AM
Windows上なので文字コードを確認

root@localhost[test]>select hex(convert(_cp932 "あ" using ut
f8));
+--------------------------------------+
| hex(convert(_cp932 "あ" using utf8))   |
+--------------------------------------+
| E38182                               |
+--------------------------------------+
1 row in set (0.00 sec)

16進でデータを入れる

root@localhost[test]>insert into t6 values(1,0xE38182);
Query OK, 1 row affected (0.01 sec)


キャラクタセットを全てCP932へ変えても、

root@localhost[test]>show variables like '%char%';
+--------------------------+--------------------------------
-------------------------+
| Variable_name            | Value
                         |
+--------------------------+--------------------------------
-------------------------+
| character_set_client     | cp932
                         |
| character_set_connection | cp932
                         |
| character_set_database   | cp932
                         |
| character_set_filesystem | binary
                         |
| character_set_results    | cp932
                         |
| character_set_server     | cp932
                         |
| character_set_system     | utf8
                         |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Se
rver 5.0\share\charsets\ |
+--------------------------+--------------------------------
-------------------------+
8 rows in set (0.00 sec)

root@localhost[test]>select * from t6 into outfile 'dump_cp9
32.txt';
Query OK, 2 rows affected (0.00 sec)


select into outfileしたファイルは、UTF8のまま

ファイルは/data/test/ディレクトリ直下に保存されるので、おそらくクライアントにはデータ送信されないので、処理はサーバ側で完結しているのでしょう。

Home > SELECT INTO OUTFILEでダンプする際に文字コードはどれくらい注意すべきか

Search
Feeds

Return to page top