ヘッダーをスキップ
Oracle® Data Provider for .NET開発者ガイド
11g リリース2 (11.2.0.4)
B66456-02
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

OracleGlobalizationクラス

OracleGlobalizationクラスは、セッション、スレッドおよびローカル・コンピュータのOracleグローバリゼーション設定(読取り専用)の取得および設定に使用されます。

クラスの継承

System.Object

  Oracle.DataAccess.Client.OracleGlobalization

宣言

public sealed class OracleGlobalization : ICloneable, IDisposable

スレッド安全性

パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。

備考

プロパティ値が無効である場合は例外が表示されます。TimeZoneプロパティを除いて、新規に設定されたプロパティ値はすべて検証されます。

OracleGlobalizationオブジェクト・プロパティを変更しても、セッションまたはスレッドのグローバリゼーション設定は変更されません。セッションおよびスレッドのグローバリゼーション設定を変更するには、それぞれ、OracleConnectionオブジェクトのSetSessionInfoメソッド、またはOracleGlobalizationオブジェクトのSetThreadInfoメソッドがコールされる必要があります。

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class OracleGlobalizationSample
{
  static void Main()
  {    
    // Get thread's globalization info
    OracleGlobalization glob = OracleGlobalization.GetThreadInfo();
    
    // Prints "glob.Language = AMERICAN"
    Console.WriteLine("glob.Language = " + glob.Language);
 
    // Set language on thread's globalization info
    glob.Language = "FRENCH";
    OracleGlobalization.SetThreadInfo(glob);
    OracleGlobalization.GetThreadInfo(glob);
 
    // Prints "glob.Language = FRENCH"
    Console.WriteLine("glob.Language = " + glob.Language);
 
    glob.Dispose();
  }
}

要件

ネームスペース: Oracle.DataAccess.Client

アセンブリ: Oracle.DataAccess.dll

ODP.NETのバージョン: ODP.NET for .NET Framework 2.0またはODP.NET for .NET Framework 4


関連項目:



OracleGlobalizationメンバー

OracleGlobalizationメンバーは次の表にリストされています。

OracleGlobalization静的メソッド

OracleGlobalization静的メソッドを、表10-1にリストします。

表10-1 OracleGlobalization静的メソッド

名前 説明

GetClientInfo

ローカル・コンピュータのOracleグローバリゼーション設定を表すOracleGlobalizationオブジェクトを戻します(オーバーロード)

GetThreadInfo

現行スレッドのOracleグローバリゼーション設定を表すOracleGlobalizationインスタンスを戻す、またはリフレッシュします(オーバーロード)

SetThreadInfo

Oracleグローバリゼーション・パラメータを現行スレッドに設定します


OracleGlobalizationプロパティ

OracleGlobalizationプロパティを、表10-2にリストします。

表10-2 OracleGlobalizationプロパティ

名前 説明

Calendar

カレンダ・システムを指定します

ClientCharacterSet

クライアントのキャラクタ・セットを指定します

Comparison

WHERE句の比較およびPL/SQLブロックの比較のメソッドを指定します

Currency

L数値書式要素のローカル通貨記号として使用する文字列を指定します

DateFormat

文字列としてのOracleのDateタイプ用の日付書式を指定します

DateLanguage

曜日と月の名称、および日付の略称を表現するために使用される言語を指定します

DualCurrency

U数値書式要素用のユーロEuroなどの、二重通貨記号を指定します

ISOCurrency

C数値書式要素の国際通貨記号として使用する文字列を指定します

Language

データベースのデフォルト言語を指定します

LengthSemantics

バイトまたは文字(デフォルト)長セマンティクスのいずれかを使用するCHARおよびVARCHAR2列の作成を有効化します

NCharConversionException

暗黙的または明示的なキャラクタ・タイプ変換時のデータ損失によって、エラーを報告するかどうかを判別します

NumericCharacters

文字列の数値に対して、小数点文字およびグループ・セパレータ用に使用される文字を指定します

Sort

句によってORDERの照合順番を指定します

Territory

地域の名前を指定します

TimeStampFormat

TimeStampタイプの文字列書式を指定します

TimeStampTZFormat

TimeStampTZタイプの文字列書式を指定します

TimeZone

タイムゾーンのリージョン名を指定します


OracleGlobalizationパブリック・メソッド

OracleGlobalizationパブリック・メソッドを、表10-3にリストします。

表10-3 OracleGlobalizationパブリック・メソッド

パブリック・メソッド 説明

Clone

OracleGlobalizationオブジェクトのコピーを作成します

Dispose

System.ComponentModel.Componentからの継承



OracleGlobalization静的メソッド

OracleGlobalization静的メソッドを、表10-4にリストします。

表10-4 OracleGlobalization静的メソッド

名前 説明

GetClientInfo

ローカル・コンピュータのOracleグローバリゼーション設定を表すOracleGlobalizationオブジェクトを戻します(オーバーロード)

GetThreadInfo

現行スレッドのOracleグローバリゼーション設定を表すOracleGlobalizationインスタンスを戻す、またはリフレッシュします(オーバーロード)

SetThreadInfo

Oracleグローバリゼーション・パラメータを現行スレッドに設定します


GetClientInfo

GetClientInfoにより、ローカル・コンピュータのOracleグローバリゼーション設定を表すOracleGlobalizationオブジェクトを戻します。

オーバーロード・リスト:

  • GetClientInfo()

    このメソッドにより、ローカル・コンピュータのグローバリゼーション設定を表すOracleGlobalizationインスタンスを戻します。

  • GetClientInfo(OracleGlobalization)

    このメソッドにより、ローカル・コンピュータのグローバリゼーション設定を含む、指定されたOracleGlobalizationオブジェクトをリフレッシュします。

GetClientInfo()

このメソッドにより、ローカル・コンピュータのグローバリゼーション設定を表すOracleGlobalizationインスタンスを戻します。

宣言

// C#
public static OracleGlobalization GetClientInfo();

戻り値

OracleGlobalizationインスタンス

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class GetClientInfoSample
{
  static void Main()
  {
    // Get client's globalization info
    OracleGlobalization glob = OracleGlobalization.GetClientInfo();
 
    // Prints "glob.Language = AMERICAN"
    Console.WriteLine("glob.Language = " + glob.Language);
 
    glob.Dispose();
  }
}

GetClientInfo(OracleGlobalization)

このメソッドにより、ローカル・コンピュータのグローバリゼーション設定を含む、指定されたOracleGlobalizationオブジェクトをリフレッシュします。

宣言

// C#
public static void GetClientInfo(OracleGlobalization oraGlob);

パラメータ

  • oraGlob

    更新されているOracleGlobalizationオブジェクト

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class GetClientInfoSample
{
static void Main()
{    
    // Get client's globalization info
    OracleGlobalization glob = OracleGlobalization.GetClientInfo();
 
    // Prints "glob.Language = AMERICAN"
    Console.WriteLine("glob.Language = " + glob.Language);
    
    // Get client's globalization info using overload
    OracleGlobalization.GetClientInfo(glob);
 
    // Prints "glob.Language = AMERICAN"
    Console.WriteLine("glob.Language = " + glob.Language);
 
    glob.Dispose();
}
}

GetThreadInfo

GetThreadInfoにより、OracleGlobalizationインスタンスを戻す、またはリフレッシュします。

オーバーロード・リスト:

  • GetThreadInfo()

    このメソッドにより、現行スレッドのOracleGlobalizationオブジェクト・インスタンスを戻します。

  • GetThreadInfo(OracleGlobalization)

    このメソッドにより、現行スレッドのグローバリゼーション設定を含む、OracleGlobalizationオブジェクト・インスタンスをリフレッシュします。

GetThreadInfo()

このメソッドにより、現行スレッドのOracleGlobalizationインスタンスを戻します。

宣言

// C#
public static OracleGlobalization GetThreadInfo();

戻り値

OracleGlobalizationインスタンス

備考

最初に、GetThreadInfo()により、OracleGlobalizationオブジェクトを戻します。このオブジェクトは、アプリケーションでSetThreadInfo()を起動してこれを変更しないかぎり、GetClientInfo()によって戻されるのと同じプロパティ値を持ちます。

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class GetThreadInfoSample
{
  static void Main()
  {    
    // Get thread's globalization info
    OracleGlobalization glob = OracleGlobalization.GetThreadInfo();
 
    // Prints "glob.Language = AMERICAN"
    Console.WriteLine("glob.Language = " + glob.Language);
 
    // Get thread's globalization info using overloaded
    OracleGlobalization.GetThreadInfo(glob);
 
    // Prints "glob.Language = AMERICAN"
    Console.WriteLine("glob.Language = " + glob.Language);
 
    glob.Dispose();
  }
}

GetThreadInfo(OracleGlobalization)

このメソッドにより、現行スレッドのグローバリゼーション設定を含む、OracleGlobalizationオブジェクトをリフレッシュします。

宣言

// C#
public static void GetThreadInfo(OracleGlobalization oraGlob);

パラメータ

  • oraGlob

    更新されているOracleGlobalizationオブジェクト

備考

最初に、GetThreadInfo()により、OracleGlobalizationオブジェクトを戻します。アプリケーションでSetThreadInfo()を起動してこれを変更しないかぎり、このオブジェクトはGetClientInfo()によって戻されるのと同じプロパティ値を持ちます。

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class GetThreadInfoSample
{
  static void Main()
  {    
    // Get thread's globalization info
    OracleGlobalization glob = OracleGlobalization.GetThreadInfo();
 
    // Prints "glob.Language = AMERICAN"
    Console.WriteLine("glob.Language = " + glob.Language);
 
    // Get thread's globalization info using overloaded
    OracleGlobalization.GetThreadInfo(glob);
 
    // Prints "glob.Language = AMERICAN"
    Console.WriteLine("glob.Language = " + glob.Language);
 
    glob.Dispose();
  }
}

SetThreadInfo

このメソッドは、Oracleグローバリゼーション・パラメータを現行スレッドに設定します。

宣言

// C#
public static void SetThreadInfo(OracleGlobalization oraGlob);

パラメータ

  • oraGlob

    OracleGlobalizationオブジェクト

備考

任意の.NET文字列の、ODP.NETタイプへの変換およびODP.NETタイプからの変換では、ODP.NETタイプ・コンストラクタと同様に、適用可能であればグローバリゼーション・プロパティ値を使用します。たとえば、.NET文字列からOracleDate構造を構築するとき、この文字列はスレッドのOracleGlobalization.DateFormatプロパティによって指定された書式であることが予想されます。

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class SetThreadInfoSample
{
  static void Main()
  {
    // Get thread's globalization info
    OracleGlobalization glob1 = OracleGlobalization.GetThreadInfo();
    
    // Prints "glob1.Language = AMERICAN"
    Console.WriteLine("glob1.Language = " + glob1.Language);
 
    // Set language on thread's globalization info
    glob1.Language = "FRENCH";
    OracleGlobalization.SetThreadInfo(glob1);
    OracleGlobalization glob2 = OracleGlobalization.GetThreadInfo();
 
    // Prints "glob2.Language = FRENCH"
    Console.WriteLine("glob2.Language = " + glob2.Language);   
 
    glob1.Dispose();
    glob2.Dispose();
  }
}

OracleGlobalizationプロパティ

OracleGlobalizationプロパティを、表10-5にリストします。

表10-5 OracleGlobalizationプロパティ

名前 説明

Calendar

カレンダ・システムを指定します

ClientCharacterSet

クライアントのキャラクタ・セットを指定します

Comparison

WHERE句の比較およびPL/SQLブロックの比較のメソッドを指定します

Currency

L数値書式要素のローカル通貨記号として使用する文字列を指定します

DateFormat

文字列としてのOracleのDateタイプ用の日付書式を指定します

DateLanguage

曜日と月の名称、および日付の略称を表現するために使用される言語を指定します

DualCurrency

U数値書式要素用のユーロEuroなどの、二重通貨記号を指定します

ISOCurrency

C数値書式要素の国際通貨記号として使用する文字列を指定します

Language

データベースのデフォルト言語を指定します

LengthSemantics

バイトまたは文字(デフォルト)長セマンティクスのいずれかを使用するCHARおよびVARCHAR2列の作成を有効化します

NCharConversionException

暗黙的または明示的なキャラクタ・タイプ変換時のデータ損失によって、エラーを報告するかどうかを判別します

NumericCharacters

文字列の数値に対して、小数点文字およびグループ・セパレータ用に使用される文字を指定します

Sort

句によってORDERの照合順番を指定します

Territory

地域の名前を指定します

TimeStampFormat

TimeStampタイプの文字列書式を指定します

TimeStampTZFormat

TimeStampTZタイプの文字列書式を指定します

TimeZone

タイムゾーンのリージョン名を指定します


Calendar

このプロパティはカレンダ・システムを指定します。

宣言

// C#
public string Calendar {get; set;}

プロパティ値

Calendarを表す文字列

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_CALENDAR設定です。OracleGlobalizationオブジェクトがクライアント、スレッドまたはセッションの設定を表すかどうかにかかわらず、この値は同じです。

ClientCharacterSet

このプロパティはクライアントのキャラクタ・セットを指定します。

宣言

// C#
public string ClientCharacterSet {get;}

プロパティ値

ローカル・コンピュータのキャラクタ・セットの名前を指定する文字列です。

備考

デフォルト値はローカル・コンピュータのキャラクタ・セットです。

Comparison

このプロパティは、WHERE句の比較およびPL/SQLブロックの比較のメソッドを表します。

宣言

// C#
public string Comparison {get; set;}

プロパティ値

比較のメソッドの名前を指定する文字列

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_COMP設定です。

Currency

このプロパティは、L数値書式要素のローカル通貨記号として使用する文字列を指定します。

宣言

// C#
public string Currency {get; set;}

プロパティ値

L数値書式要素のローカル通貨記号として使用する文字列です。

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_CURRENCY設定です。


関連項目:


DateFormat

このプロパティは、文字列としてのOracleのDateタイプ用の、日付書式を指定します。

宣言

// C#
public string DateFormat {get; set;}

プロパティ値

文字列としてのOracle Dateタイプ用の日付書式です。

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_DATE_FORMAT設定です。

DateLanguage

このプロパティは、曜日、月の名前および日付の略称(たとえば、a.m、p.m、AD、BCなど)を綴るのに使用する言語を指定します。

宣言

// C#
public string DateLanguage {get; set;}

プロパティ値

言語を指定する文字列

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_DATE_LANGUAGE設定です。

DualCurrency

このプロパティは、U数値書式要素用のユーロなどの、二重通貨記号を指定します。

宣言

// C#
public string DualCurrency {get; set;}

プロパティ値

二重通貨記号を指定する文字列

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_DUAL_CURRENCY設定です。


関連項目:


ISOCurrency

このプロパティは、C数値書式要素の国際通貨記号として使用する文字列を指定します。

宣言

// C#
public string ISOCurrency {get; set;}

プロパティ値

国際通貨記号として使用される文字列

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_ISO_CURRENCY設定です。


関連項目:


Language

このプロパティはデータベースのデフォルト言語を指定します。

宣言

// C#
public string Language {get; set;}

プロパティ値

データベースのデフォルト言語

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_LANGUAGE設定です。

Languageはメッセージ、曜日名と月の名前およびソート・アルゴリズムに使用されます。また、これによってNLS_DATE_LANGUAGEおよびNLS_SORTパラメータ値を決定します。

LengthSemantics

このプロパティは、CHARおよびVARCHAR2列がバイトまたは文字(デフォルト)長セマンティクスを使用するかどうかを示します。

宣言

// C#
public string LengthSemantics {get; set;}

プロパティ値

バイトまたは文字長セマンティクスのいずれかを示す文字列

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_LENGTH_SEMANTICS設定です。

NCharConversionException

このプロパティでは、暗黙的または明示的なキャラクタ・タイプ変換時のデータ損失によって、エラーを報告するかどうかを判断します。

宣言

// C#
public bool NCharConversionException {get; set;}

プロパティ値

キャラクタ・タイプ変換によってエラー・メッセージが発生するかどうかを示す文字列です。

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

NLS_NCHAR_CONV_EXCPのデフォルト値は、INIT.ORAファイルの設定が優先される場合以外はFalseです。

NumericCharacters

このプロパティは、文字列の数値に対して、小数点文字およびグループ・セパレータ用に使用される文字を指定します。

宣言

// C#
public string NumericCharacters {get; set;}

プロパティ値

使用される文字を表す文字列

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_NUMERIC_CHARACTERS設定です。

Sort

このプロパティは、句によってORDERの照合順番を指定します。

宣言

// C#
public string Sort {get; set;}

プロパティ値

照合順番を示す文字列

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_SORT設定です。

Territory

このプロパティは、地域の名前を指定します。

宣言

// C#
public string Territory {get; set;}

プロパティ値

地域の名前を指定する文字列

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_TERRITORY設定です。

このプロパティを変更すると、その他のグローバリゼーション設定が変更されます。


関連項目:


TimeStampFormat

このプロパティは、TimeStampタイプの文字列書式を指定します。

宣言

// C#
public string TimeStampFormat {get; set;}

プロパティ値

TimeStampタイプの文字列書式

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_TIMESTAMP_FORMAT設定です。

TimeStampTZFormat

このプロパティは、TimeStampTZタイプの文字列書式を指定します。

宣言

// C#
public string TimeStampTZFormat {get; set;}

プロパティ値

TimeStampTZタイプの文字列書式

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのNLS_TIMESTAMP_TZ_FORMAT設定です。

TimeZone

このプロパティは、タイムゾーンのリージョン名または時間オフセットを指定します。

宣言

// C#
public string TimeZone {get; set;}

プロパティ値

タイムゾーンのリージョン名またはタイムゾーンのオフセットを表す文字列です。

例外

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

デフォルト値はローカル・コンピュータのタイムゾーンのリージョン名です。

スレッドによりTimeStamp構造の1つを構築するときにのみ、TimeZoneは使用されます。TimeZoneはセッションに影響を及ぼしません。

TimeZoneは、時間オフセット(7:00など)か、US/PacificのようなV$TIMEZONE_NAMESで指定される有効なタイムゾーンのリージョン名です。タイムゾーンの略称はサポートされていません


注意:

PSTは、タイムゾーンのリージョン名および略称であるため、OracleGlobalizationによって認証されます。

GetSessionInfo()またはGetSessionInfo(OracleGlobalization)を使用して、OracleGlobalizationオブジェクトが取得される場合、このプロパティにより空の文字列を戻します。デフォルトにより、最初はセッションのタイムゾーンはスレッドのタイムゾーンと同一になっています。したがって、セッションのタイムゾーンがALTER SESSIONコールの起動によって変更されない場合、セッションのタイムゾーンはクライアントのグローバリゼーション設定からフェッチできます。


OracleGlobalizationパブリック・メソッド

OracleGlobalizationパブリック・メソッドを、表10-6にリストします。

表10-6 OracleGlobalizationパブリック・メソッド

パブリック・メソッド 説明

Clone

OracleGlobalizationオブジェクトのコピーを作成します

Dispose

System.ComponentModel.Componentからの継承


Clone

このメソッドでは、OracleGlobalizationオブジェクトのコピーを作成します。

宣言

// C#
public object Clone();

戻り値

OracleGlobalizationオブジェクト

実装

ICloneable

備考

複製されたオブジェクトのプロパティ値は、複製元のオブジェクトのプロパティ値と同じです。