• 締切済み

Access→Oracleへ更新クエリで、文字が化ける?

クライアント:WindowsXPSP2 / Access2003 サーバ:VineLinux2.6 / Oracle9i クライアントから更新クエリを使用してサーバでデータの書き換えをしているのですが、そのときに 「高」「崎」「柳」という文字をレコードに入れると、とあるシステムでデータを表示させたときに「□」になって表示されてしまいます。 そのシステムは、以前から「高」etcを表示させても問題なく表示できてました。 何かAccess or Oracle側であるのでしょうか? ご存知の方がいらっしゃいましたらお教えください。

みんなの回答

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.1

OracleとWindowsとのSJISとUnicode間の変換を行う時のUnicodeの対応が異なるために発生しるのではと思いますが・・。 Unicodeに対応するのにOracleには A16SJISTILDE JA16EUCTILDE がありますよね。 クライアント側でレジストリキー HKEY_LOCAL_MACHIN\SOFTWARE\ORACLE\HOMEx 値の名前 NLS_LANG の値をJAPANESE_JAPAN.JA16SJISTILDEなどにすると解消されると思います。 データベースのCHARACTER SETはJA16SJISTILDE、JA16EUCTILDEになっていますでしょうか。 CHARACTER SETをJA16SJISTILDE、NLS_LANGはサーバもクライアントもJAPANESE_JAPAN.JA16SJISTILDEにすれば文字化けは防げると思います。

taktak888jp
質問者

お礼

返事が遅くなりました。 ありがとうございます、試してみます。

関連するQ&A