SQL*Plus、SQL Loader、Import、ExportなどのOracleユーティリティをコマンド・プロンプト・ウィンドウから使用する前に、NLS_LANGパラメータのキャラクタ・セット・フィールドをレジストリでの値と異なる値に設定することが必要です。
これが必要なのは、コンソール・モードで実行されているプログラムでは、いくつかの例外を除き、GUIモードで実行されているプログラムとは異なるコード・ページ(キャラクタ・セット)を使用するためです。レジストリでは、デフォルトのOracleホームのNLS_LANGパラメータは、常に該当するGUIコード・ページに設定されています。コンソール・モード・セッションのNLS_LANGパラメータが適切に設定されていない場合、文字変換が正しく行われず、エラー・メッセージやデータが破損する可能性があります。
日本語、韓国語、簡体字中国語、繁体字中国語、タイ語およびベトナム語では、コンソール(OEM)コード・ページはGUI(ANSI)コード・ページと同一です。この場合、NLS_LANGパラメータを設定する必要はありません。他の言語では、影響を受けるユーティリティを起動するのと同じコマンド・プロンプト・ウィンドウでSET NLS_LANGコマンドを発行し、NLS_LANGに正しいキャラクタ・セットの値を設定します。
同様に、バッチ・モードで、バッチ・プロシージャで処理されるファイルのキャラクタ・セットに応じて、プロシージャの開始時に、SET NLS_LANGコマンドを挿入し、NLS_LANGに正しいキャラクタ・セットの値を設定します。
現在のコンソール・コード・ページを確認するには、コマンド・プロンプト・ウィンドウでCHCPコマンドを発行します。表示されたコード・ページ番号を使用して、次の表で対応するOracleキャラクタ・セット名を調べます。
次の表に、コンソール・モード・コード・ページに対応するOracleキャラクタ・セットを示します。
表D-1 コンソール・モード(OEM)コード・ページに対するOracleキャラクタ・セット
| OEMコード・ページ | コンソール・モードのOracleキャラクタ・セット | 
|---|---|
| 437 (US) | US8PC437 | 
| 737 (ギリシャ語) | EL8PC737 | 
| 775 (バルト語) | BLT8PC775 | 
| 850 (多言語ラテンI) | WE8PC850 | 
| 852 (ラテンII) | EE8PC852 | 
| 855 (キリル語) | RU8PC855 | 
| 857 (トルコ語) | TR8PC857 | 
| 858(多言語ラテンI + 西ヨーロッパ語) | WE8PC858 | 
| 866 (ロシア語) | RU8PC866 | 
| 874 (タイ語) | TH8TISASCII | 
| 932 (日本語Shift-JIS) | JA16SJISTILDE | 
| 936 (簡体字中国語GBK) | ZHS16GBK | 
| 949 (韓国語) | KO16MSWIN949 | 
| 950 (繁体字中国語Big5) | ZHT16MSWIN950 | 
| 1258 (ベトナム語) | VN8MSWIN1258 |