プライマリ・コンテンツに移動
Oracle® Database Oracleプリコンパイラのためのプログラマーズ・ガイド
12c リリース1 (12.1)
B71398-03
目次へ移動
目次
索引へ移動
索引

前
次

グローバリゼーション・サポート

広く使用されている7ビットまたは8ビットのASCIIおよびEBCDICのキャラクタ・セットは、アルファベットを表すには十分ですが、日本語のようなアジアの言語には数千もの文字が含まれるものがあります。これらの言語では、1文字を表すために16ビット(2バイト)が必要です。Oracleではこうした様々な言語がどのように処理されるかについて説明します。

Oracleには、シングルバイトおよびマルチバイトの文字データを処理し、キャラクタ・セット間で変換できるように、グローバリゼーション・サポートが用意されています。また、アプリケーションを異なる言語環境で実行することもできます。グローバリゼーション・サポートでは、数値書式および日付書式はユーザー・セッション用に指定された言語規則に自動的に適応します。したがって、グローバリゼーション・サポートにより、世界中のユーザーがそれぞれの母国語でOracleとやりとりできます。

様々なグローバリゼーション・サポート・パラメータを指定して、言語によって異なる機能の操作を制御できます。これらのパラメータのデフォルト値は、Oracleの初期化ファイルで設定できます。表3-9は、それぞれのグローバリゼーション・サポート・パラメータの指定内容を示しています。

表3-9 グローバリゼーション・サポート・パラメータ

グローバリゼーション・サポート・パラメータ 指定内容

Globalization Support_LANGUAGE

言語によって異なる表記規則

Globalization Support_TERRITORY

地域によって異なる表記規則

Globalization Support_DATE_FORMAT

日付書式

Globalization Support_DATE_LANGUAGE

日および月の名前に使用する言語

Globalization Support_NUMERIC_CHARACTERS

10進数文字およびグループ・セパレータ

Globalization Support_CURRENCY

各国通貨記号

Globalization Support_ISO_CURRENCY

ISO通貨記号

Globalization Support_SORT

ソートの順序

主なパラメータは、Globalization Support_LANGUAGEおよびGlobalization Support_TERRITORYです。Globalization Support_LANGUAGEでは、言語によって異なる次の機能のデフォルト値を指定します。

Globalization Support_TERRITORYでは、地域によって異なる次の機能のデフォルト値を指定します。

Globalization Support_LANGパラメータを次のように指定して、ユーザー・セッション用に言語ごとに異なるグローバリゼーション・サポート機能の操作を制御できます。

Globalization Support_LANG = <language>_<territory>.<character set>

languageはユーザー・セッション用のGlobalization Support_LANGUAGEの値、territoryはGlobalization Support_TERRITORYの値、character setは端末に使用されるコード体系を指定します。コード体系(通常はキャラクタ・セットまたはコード・ページと呼ばれる)は、端末で表示可能なキャラクタ・セットに対応する数値コードの範囲です。これには、端末との通信を制御するコードも含まれています。

Globalization Support_LANGは、環境変数(またはシステムでそれに相当するもの)として定義します。たとえば、Cシェルを使用するUNIXでは、Globalization Support_LANGを次のように定義できます。

setenv Globalization Support_LANG French_France.WE8ISO8859P1

セッション中にグローバリゼーション・サポート・パラメータを変更するには、ALTER SESSION文を次のように使用します。

ALTER SESSION SET <Globalization Support_parameter> = <value>

Oracleプリコンパイラでは、グローバリゼーション・サポート機能がすべてサポートされているため、アプリケーションではOracleデータベースに格納されている多言語のデータを処理できます。たとえば、外国語の文字変数を宣言し、それをINSTRBLENGTHBおよびSUBSTRBなどの文字列ファンクションに渡すことができます。これらのファンクションにはそれぞれ、INSTRLENGTHおよびSUBSTRファンクションと同じ構文がありますが、文字単位ではなく、バイト単位で機能します。

Globalization Support_INITCAP、Globalization Support_LOWERおよびGlobalization Support_UPPERファンクションを使用して、大文字小文字変換の特別なインスタンスを処理できます。また、Globalization Support_SORTファンクションを使用して、バイナリ順序ではなく、言語上の順序に基づいてWHERE句の比較を指定できます。グローバリゼーション・サポート・パラメータをTO_CHAR, TO_DATEおよびTO_NUMBERファンクションに渡すこともできます。グローバリゼーション・サポートの詳細は、『Oracle Databaseアドバンスト・アプリケーション開発者ガイド』を参照してください。