- 締切済み
文字化けの解決方法
Oracle12cR2のデータベースを構築中なのですが、あるSQLを実行したときだけSPOOLしたファイルの日本語が文字化けしてしまいます。 コマンドプロンプト上では日本語表示されているのですが、出力されたファイルのみに起こっているように見られます。 前後に実行しているSQLはコマンドプロンプト、SPOOLファイルともに日本語表示になっています。 SQLの実行結果自体に問題はないと思うので実害はないのだと思うのですが、エビデンスとしては直しておきたいところです。 どのような設定を確認すればよいでしょうか? SQLは以下の順で実行しています(添付ファイルの番号順) 1.DBFファイルを作成し、ALTERコマンドを実行(該当SQLの前に実行しているSQL) 2.実行SQLをまとめたSQLを実行(該当SQL) よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- baunce
- ベストアンサー率66% (2/3)
先ほど回答の追記です。spoolファイルはShift_JISで出力されます。
- baunce
- ベストアンサー率66% (2/3)
見る限り日本語が文字化けしているようですね。 NLS_LANGの環境変数にはなにが設定されていますか?dos窓から実行する場合基本的にはJapanese_Japan.JA16SJISTILDEとすべきと思います。 set NLS_LANG=Japanese_Japan.JA16SJISTILDE
- superside0
- ベストアンサー率64% (461/711)
「SPOOLしたファイル」のその部分よりも前に 異なる日本語の文字エンコード(SJIS/EUC/UTF8/UTF16)で 記録されている部分があって このファイルの表示に使っているエディターでの 日本語文字コードの自動解析がそれに引っ張られて表示されて 該当部分が化けて見えているだけ ということはありませんか? たとえば、エディターでの日本語文字コード(エンコード)の設定を 他の文字コードに強制変更して、見えるようになるかで 確認してはどうでしょう。