Chat (Lingr.com)
Informaiton
Daily
Column
- MySQL日本語の旅(5/1)
- アクセス向上秘伝(5/9)
- 一風変ったHaskellλ門(6/13)
- SICP Answer Book (5/31) 問題3.26追加
Zope Solution
Extra
アーカイブ
OSS案内所
Site Info
関連リンク
キャラクタセット関連のシステム変数の変更の仕方を説明したが、 6種類もあり、あれこれ適当に設定するというのは面倒である。
と思ったら、ちゃんと、サーバーとクライアントの接続関係の 文字コードの設定を一発で行なえるらしきステートメントが用意されていた。
SET NAMES character_set_name
SET CHARACTER SET character_set_name
ここで、起動オプションを無くしてみよう。てっとり早くそうするために、 /etc/my.cnf と ~/.my.cnf を消してみた。我ながら、乱暴なやり方だ。 そして、MySQLサーバと、mysqlクライアントコマンドを起動した。
すると、キャラクタセット関係は英語バージョンになっている。
mysql> SHOW VARIABLES LIKE 'character\_set\_%'; +--------------------------+--------+ | Variable_name | Value | +--------------------------+--------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | +--------------------------+--------+ 6 rows in set (0.00 sec)
SET NAMES character_set_name
では、SET NAMES がどういう風に キャラクタセット関連のシステム変数に 影響するか、ujisにして調べてみよう。
mysql> SET NAMES ujis; Query OK, 0 rows affected (0.00 sec) mysql> SHOW VARIABLES LIKE 'character\_set\_%'; +--------------------------+--------+ | Variable_name | Value | +--------------------------+--------+ | character_set_client | ujis | | character_set_connection | ujis | | character_set_database | latin1 | | character_set_results | ujis | | character_set_server | latin1 | | character_set_system | utf8 | +--------------------------+--------+ 6 rows in set (0.00 sec) mysql>
となった。ということは、
$ mysql --default-character-set=ujis
として起動時にデフォルトの文字コードを指定したときと情况は同じだ。
SET CHARACTER SET character_set_name
再び、mysqlクライアントコマンドをキャラクタセット指定なしで立ち上げて、 英語バージョン状態にしておこう。
ここで、SET CHARACTER SET で ujisを指定してみよう。
mysql> SET CHARACTER SET ujis; Query OK, 0 rows affected (0.00 sec) mysql> SHOW VARIABLES LIKE 'character\_set\_%'; +--------------------------+--------+ | Variable_name | Value | +--------------------------+--------+ | character_set_client | ujis | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_results | ujis | | character_set_server | latin1 | | character_set_system | utf8 | +--------------------------+--------+ 6 rows in set (0.00 sec)
今度は、character_set_client と character_set_results は変更されたが、 character_set_connection は変更されなかった。 似ているけれども、ちょっと違いがあるようだ。
次へ:複数キャラクタセット対応端末gnome-terminal
フィードバック:
There is no comment.