MySQLMemo002

BACK

DOS窓+mysqlコマンドで、日本語がINSERT/UPDATEできない

mysqlで

ERROR 1366 (HY000): Incorrect string value

なんかが出る場合。

一時しのぎは

set character_set_client = sjis;
set character_set_results = sjis;

根本治療は my.iniの[mysql]セクションを

[mysql]
#default-character-set=utf8
default-character-set=sjis

と変更する。

参考
■mysqlでERROR 1366 (HY000): Incorrect string value - 忘れないようにメモしておこうかな。
http://blog.goo.ne.jp/nokonoko2006/e/7aa4126c0693fe8840e68176dffb6849

* * * *

後日、実はこれをやっていると、日本語を条件に含むようなVIEWを作ったときに その部分が文字化けしてしまって正しく結果が得られないことが判明した。 なんということだ。なんと中途半端な。 ってことは、やっぱりDOS窓でUTF-8が使えるようにするしかないのか? そのあたり、DOS窓はぜんぜん融通が利かないんだよなぁ。 あるいは全部ShiftJISで統一か!?それはやだぞ。

やっぱMySQLはLinuxで動かすのが一番なのかなぁ。 それか、phpMyAdminに頼るか…。

最終更新:2013年06月11日 19:43