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
関連リンク
コマンド引数にオプションを並べる方法 および /etc/my.cnf と ~/.my.cnf による、mysqlクライアントコマンドの 起動オプション指定について説明した。
この様な指定により、起動時に適切なキャラクタセットに指定できるのだが、 mysqlコマンドを立ち上げ直すことなく、mysqlコマンドに司令を与えるだけで キャラクタセットを変更したいものである。
SHOW VARIABLES .... にて、キャラクタセットの値を表示してきたが、 当然、これらはMySQLの変数であり、変更することができる。
SET構文 SET [GLOBAL | SESSION] sql_variable=expression, [[GLOBAL | SESSION] sql_variable=expression] ...
現状では、起動すると以下のようになっている。
mysql> show variables like 'character\_set\_%'; +--------------------------+--------+ | Variable_name | Value | +--------------------------+--------+ | character_set_client | sjis | | character_set_connection | sjis | | character_set_database | latin1 | | character_set_results | sjis | | character_set_server | latin1 | | character_set_system | utf8 | +--------------------------+--------+ 6 rows in set (0.00 sec) mysql>
ここで、 character_set_client を ujis にしてみよう。
mysql> set character_set_client=ujis; Query OK, 0 rows affected (0.00 sec) mysql> show variables like 'character_set_client'; +----------------------+-------+ | Variable_name | Value | +----------------------+-------+ | character_set_client | ujis | +----------------------+-------+ 1 row in set (0.00 sec) mysql>
という訳で、キャラクタセットは以下のようにして変更できるようです。
SET character_set_何とか = キャラクタセット
変更できない character_set_system
ところが、
mysql> set character_set_system=ujis; ERROR 1193 (HY000): Unknown system variable 'character_set_system' mysql>
となって、character_set_system は、知らないシステム変数という エラーメッセージが表示されて、変更できません。 変数の値がちゃんと得られるのだから、決して知らない変数ではなくて、 知っているけれど変更許可ができない変数だと思うので、 もうすこし別のエラーメッセージが妥当ではないかと思うのだが、 そんな些細なことはどうでもいいか。
フィードバック:
There is no comment.