■ NLS_TERRITORY
NLS_LANGUAGE
NLS_LANGUAGEは、次のセッション特性に対してデフォルトの規則を指定します。
■ サーバー・メッセージの言語
■ 曜日名と月名の言語およびその略称(SQL関数TO_CHARとTO_DATEで指定されます)
■ AM、PM、ADおよびBCに相当する記号(A.M.、P.M.、A.D.およびB.C.は、
NLS_LANGUAGEがAMERICANに設定されている場合のみ有効です)
■ ORDERBYの指定時に使用する文字データに対するデフォルトのソート基準(ORDERBY を指定しない場合、GROUP BYはバイナリ・ソートを使用します)
■ 書込み方向
■ 肯定的および否定的な応答文字列(YESおよびNOなど)
初期化パラメータ・ファイルのNLS_LANGUAGEに指定されている値は、そのインスタンス 内のすべてのセッションに対するデフォルト値になります。たとえば、デフォルトのセッ ション言語をフランス語に指定するには、パラメータを次のように設定する必要がありま す。
NLS_LANGUAGE = FRENCH 関連項目 関連項目関連項目
関連項目: OCINlsGetInfo()関数の詳細は、第8章「グローバル環境 でのOCIプログラミング」を参照してください。
パラメータ・タイプ パラメータ・タイプパラメータ・タイプ
パラメータ・タイプ: 文字列 パラメータの有効範囲
パラメータの有効範囲パラメータの有効範囲
パラメータの有効範囲: 初期化パラメータおよびALTERSESSION デフォルト値
デフォルト値デフォルト値
デフォルト値: NLS_LANGから導出 値の範囲
値の範囲値の範囲
値の範囲: 有効な任意の言語名
サーバー・メッセージ
ORA-00942: table or view does not exist
言語がフランス語の場合は、次のように表示されます。
ORA-00942: table ou vue inexistante
サーバーが使用するメッセージは、$ORACLE_HOME/product_name/mesgディレクトリに あるバイナリ形式ファイル、あるいはそれに相当するオペレーティング・システム用ファイ ルに格納されます。このファイルには、次のファイル名規則に従って、サポート対象言語ご とに1バージョンずつ、複数のバージョンが存在します。
<product_id><language_abbrev>.MSB
たとえば、Fはフランス語の略称であるため、フランス語のサーバー・メッセージが含まれ たファイルはORAF.MSBと呼ばれます。
メッセージは、言語とオペレーティング・システムに応じて、特定キャラクタ・セットごと にこれらのファイルに格納されます。このキャラクタ・セットがデータベース・キャラク タ・セットと異なる場合、メッセージ・テキストはデータベース・キャラクタ・セットに自 動的に変換されます。クライアント・キャラクタ・セットがデータベース・キャラクタ・
セットと異なる場合、メッセージ・テキストは、必要に応じてクライアント・キャラクタ・
セットに変換されます。このようにキャラクタ・セット変換の制限に従うことによって、
メッセージはユーザーの端末に正しく表示されます。
NLS_LANGUAGEのデフォルト値が、オペレーティング・システム固有の値である場合があ ります。初期化パラメータ・ファイルでその値を変更してインスタンスを再起動すると、
NLS_LANGUAGEパラメータを変更できます。
メッセージとテキストはすべて同じ言語にする必要があります。たとえば、Oracle
Developerアプリケーションの実行時にユーザーが参照するメッセージとボイラープレー
ト・テキストは、次の3つのソースから導出されます。
■ サーバーからのメッセージ
■ Oracle Formsによって生成されたメッセージとボイラープレート・テキスト
■ アプリケーションによって生成されたメッセージとボイラープレート・テキスト 最初の2種類のテキストに使用される言語は、NLSによって決定されます。アプリケーショ ンは、そのメッセージとボイラープレート・テキストに使用する言語を受け持ちます。
関連項目 関連項目関連項目
関連項目: NLS_LANGUAGEのデフォルト値の詳細は、オペレーティン グ・システム固有のOracleマニュアルを参照してください。
言語および地域のパラメータ
次の例に、NLS_LANGUAGEを異なる値に設定した場合の動作を示します。
例例例
例 3-3 NLS_LANGUAGE=ITALIAN
ALTER SESSION文を使用して、NLS_LANGUAGEをイタリア語に設定します。
ALTER SESSION SET NLS_LANGUAGE=Italian;
SELECT文を入力します。
SQL> SELECT last_name, hire_date, ROUND(salary/8,2) salary FROM employees;
結果は次のようになります。
LAST_NAME HIRE_DATE SALARY --- --- ---Sciarra 30-SET-97 962.5 Urman 07-MAR-98 975 Popp 07-DIC-99 862.5
月名の略称にイタリア語が使用されていることに注意してください。
例例例
例 3-4 NLS_LANGUAGE=GERMAN
ALTER SESSION文を使用して、言語をドイツ語に変更します。
SQL> ALTER SESSION SET NLS_LANGUAGE=German;
前述と同じSELECT文を入力します。
SQL> SELECT last_name, hire_date, ROUND(salary/8,2) salary FROM employees;
結果は次のようになります。
LAST_NAME HIRE_DATE SALARY --- --- ---Sciarra 30-SEP-97 962.5 Urman 07-MÄR-98 975 Popp 07-DEZ-99 862.5
月名の略称の言語が変更されていることに注意してください。
関連項目 関連項目関連項目
関連項目: ALTER SESSION文の使用方法の詳細は、3-16ページの
「セッション中のNLS_LANGUAGEおよびNLS_TERRITORYのデフォル ト値のオーバーライド」を参照してください。