こんばんは。MySqlではなくOracleですが、特定の漢字をInsertしようとしてエラーになった事があります。
 
DBとサーバで文字コードが異なっていたため、
文字コード変換で制御文字になってしまい、エラーになっていました。(EUCとS-JISだったと思います)
 
そのときは、想定外のデータだったので登録しなくてもよく、
制御文字が入っていたらはじくようにしました。
何かのご参考になればと思います。

 
2010年9月8日18:49 立川博敏(mailing受信用) <mailing@tacho-net.com>:
初めて投稿します。

環境

●サーバ側

OS : Windows Server 2003
DB : Mysql 5.0.86-community-nt
DB文字コード : utf8


●クライアント

OS : Windows XP Professional
    ACCESS 2007
ODBC : 3.51.27


●現象

(1)DBオブジェクトを使ってODBC経由で直接接続して
varchar 項目にINSERT文で追加を行うと、特定文字列で文字化けが
起きたり、SELECT文でvarchar項目に対する条件文字列が
特定文字列のときにエラーとなりSQL文が実行できない


ex '五十嵐'を含む文字列をINSERTするSQLを実行すると
 文字化けして登録される。


(2)すべての文字で文字化けするわけではなく、特定文字列で起きる

(3)リンクテーブルを直接操作する場合には、文字化けは起きない

ex リンクテーブルを基にフォームを作り、テキストボックスの
 データソースに問題の起きている項目を割り当てて
 画面から「五十嵐」を入れると文字化けせずに登録できる


テーブルリンクした場合と、直接つないだ場合で、ACCESS内で
なにかしかの処理の違いがあるのでしょうか?

・全て文字化けしているなら文字コードの問題と判断できるのですが
特定文字列でおきていること

・SELECT文の条件でも、問題が起きることからSQL文に特定文字列が
入ったときに、SQLの解析に失敗している?

・接続時のパラメータが足りずにおちているのかなとおもうが、
特定文字列の場合に発生している。


などなど、なぞだらけです。

同様の現象を回避された経験のある方がおられましたら
是非、知恵を貸してください。

よろしくおねがいします。




2010.9.8 たちかわひろとし