2010年9月 8日

[mysql 15389] Re: 特定文字列 insert 時に文字化けする

こんばんは。MySqlではなくOracleですが、特定の漢字をInsertしようとしてエラーになった事があります。

DBとサーバで文字コードが異なっていたため、
文字コード変換で制御文字になってしまい、エラーになっていました。(EUCとS-JISだったと思います)

そのときは、想定外のデータだったので登録しなくてもよく、
制御文字が入っていたらはじくようにしました。
何かのご参考になればと思います。

2010年9月8日18:49 立川博敏(mailing受信用) <mailing@xxxxx>:

> 初めて投稿します。
>
> 環境
>
> ●サーバ側
>
> 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 たちかわひろとし
>
>

投稿者 xml-rpc : 2010年9月 8日 22:53
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/98204
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。