• 締切済み

cseデータ閲覧時に文字化け

cseからodbc経由でmysqlに接続しています。 select文発行時の結果が、全角の文字データが??で表示され、正しく見ることができません。 また、cseから以下のようなsqlを発行するとエラーが発生してしまいます。 insert into myaddress values('168-0063','ああ',current_timestamp(),now(),current_date(),1234567,125) エラーメッセージ SQL実行中に以下のエラーが発生しました。 エラーコード:1366 [MySQL][ODBC 3.51 Driver][mysqld-5.0.37-community-nt]Incorrect string value: '\x82\xA0\x82\xA0' for column 'address' at row 1 SQLステータス:S1000 mysqlのプロンプトでデータを見ると全角文字列は文字化けすることなく 表示されます。 解決方法が解らず困っています。 ご存知の方がいらっしゃいましたら、宜しくお願いします。 動作環境は以下です。 wincse: ver 1.59 mysql :5.0.37 myodbc:3.51

みんなの回答

回答No.1

MySQLの文字コードの設定は、正しく行っていますか? MySQLのSQLが入力できる状態で、 「show variables like '%char%'」 と入力したら、文字コードの値が表示されるので、結果を教えてください。

kmayo
質問者

お礼

自力で調べたところ、 myodbcの設定に問題があることが判明しました。 myodbcのconnecter optionsの設定を "set names sjis"とすると 日本語文字列もcseで正しく表示できるようになりました。 解決したのでこの質問を閉じたいと思います。 chukenkenkouさん、ご協力ありがとうございました。

kmayo
質問者

補足

chukenkenkouさん ご回答ありがとうございます。 show variables like'%char%' の結果は以下になりました character_set_client sjis character_set_connection sjis character_set_database sjis character_set_filesystem binary character_set_results sjis character_set_server sjis character_set_system utf8 character_sets_dir C:\Program Files\MySQL\.... mysqlのインストールは文字コードをsjisに設定して行いました。

関連するQ&A