WindowsのクライアントからDB2に特殊文字をinsertして文字化けしないようにする
題名がやたらと長くてすいません。
クライアントの開発環境がWindowsでDBがDB2の場合に発生し得ます。
クライアントのSQL開発環境ツール(A5SQL MK-2やCSEや黒猫等)を使って、
DB2に下記の文字をinsertした場合に文字化けしていまいます。
ざっくりとした原因は「MicrosoftのSJIS⇔Unicode変換ルール」と、
「IBMのSJIS⇔Unicode変換ルール」で差異がある為です。
詳細な事由はこちらの資料をご覧下さい。
それでは対処法ですが、実は必要なものはすでにDB2に含まれています。
ただその設定ファイル(以下 変換表)がデフォルトではMS対応になっていないので、
その変換表をMS対応のものに変更します。
1 「DB2をインストールしたディレクトリ/SQLLIB/conv/ms」に移動します。 2 「0943ucs2.cnv」、「ucs20943.cnv」の2つのファイルを1つ上の階層に既存のファイルに上書きコピーします。 3 DB2を再スタート
設定は以上です。超簡単です。
ただ実行する前は、既存ファイルのバックアップは一応取ってくださいね。