Oracle® Data Provider for .NET開発者ガイド ODAC 12c リリース4 (12.1.0.2) for Microsoft Windows E72575-01 |
|
前 |
次 |
OracleUdt
クラスは、カスタム・タイプからOracle UDTを変換、またはその逆を実行する際に使用される静的メソッドを定義します。
クラスの継承
System.Object
System.OracleUdt
宣言
public sealed class OracleUdt
要件
プロバイダ | ODP.NET管理対象外ドライバ |
アセンブリ | Oracle.DataAccess.dll |
ネームスペース | Oracle.DataAccess.Types |
.NET Framework | 3.5, 4.0, 4.5, 4.6 |
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
OracleUdt
静的メソッドを、表16-28にリストします。
OracleUDT
メソッドを、表16-29にリストします。
表16-29 OracleUdt静的メソッド
静的メソッド | 説明 |
---|---|
Equals |
|
|
指定されたOracle UDTからの属性または要素を取得します(オーバーロード) |
|
取得される指定属性が |
|
指定されたOracle UDTに対する属性または要素を設定します(オーバーロード) |
GetValue
メソッドは、指定されたOracle UDTから属性または要素を取得します。
オーバーロード・リスト:
GetValue(OracleConnection, IntPtr, string)
このメソッドは、指定属性名を使用した指定Oracle UDTから属性または要素を取得します。
GetValue(OracleConnection, IntPtr, int)
このメソッドは、指定された索引を使用した指定Oracle UDTから属性または要素を取得します。
GetValue(OracleConnection, IntPtr, string, out object)
このメソッドは、指定Oracleオブジェクトの指定コレクション属性の要素または指定Oracleコレクションの要素のいずれかを戻します。
GetValue(OracleConnection, IntPtr, int, out object)
このメソッドは、指定Oracleオブジェクトの指定コレクション属性の要素または指定Oracleコレクションの要素のいずれかを戻します。
このメソッドは、指定属性名を使用した指定Oracle UDTから属性または要素を取得します。
宣言
public static object GetValue(OracleConnection con, IntPtr pUdt, string attrName);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのポインタ。
attrName
取得される大/小文字を区別する属性の名前。Oracleコレクションを表すカスタム・タイプからコレクション要素を取得する場合、NULLを指定します。
戻り値
戻された属性またはコレクション要素を表すオブジェクト。
例外
ArgumentException
- 指定された名前は無効な属性名です。
備考
IOracleCustomType.ToCustomObject
メソッドは、OracleUdt.GetValue
メソッドを呼び出し、con
およびpUdt
パラメータを渡します。OracleUdt.GetValue
メソッドは次のタイプのオブジェクトを戻します。
Oracleオブジェクト型
カスタム・タイプがOracleオブジェクト型を表す場合、指定属性名の戻されるタイプは、カスタム・クラスまたは構造体のメンバーのタイプであり、OracleObjectMappingAttribute
オブジェクトを使用して属性にマップされます。
Oracleコレクション型
カスタム・タイプがOracleコレクション型を表す場合、戻されるタイプは、OracleArrayMappingAttribute
オブジェクトが適用されたカスタム・クラスまたは構造体のメンバーのタイプです。
NULL
属性値の場合、タイプの適切なNULL表現を戻します。たとえば、カスタム・タイプおよびプロバイダ固有のタイプを表す属性の場合、タイプの静的Null
プロパティを戻します。Nullableタイプを表す属性の場合、たとえばSystem.String
およびSystem.Array
タイプにはNULLを戻し、Int32
およびDateTime
のような他の残りのビルトイン・タイプには、DBNull.Value
を戻します。
このメソッドは、指定された索引を使用した指定Oracle UDTから属性または要素を取得します。
宣言
// C# public static object GetValue(OracleConnection con, IntPtr pUdt, int attrIndex,);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのポインタ。
attrIndex
取得される属性のゼロベースの索引。Oracleコレクションを表すカスタム・タイプからコレクション要素を取得する場合、0を指定する必要があります。
戻り値
戻された属性またはコレクション要素を表すオブジェクト。
例外
ArgumentOutOfRangeException
- 指定された索引は無効な属性索引です。
備考
IOracleCustomType.ToCustomObject
メソッドは、OracleUdt.GetValue
メソッドを呼び出し、con
およびpUdt
パラメータを渡します。OracleUdt.GetValue
メソッドは次のタイプのオブジェクトを戻します。
Oracleオブジェクト型
カスタム・タイプがOracleオブジェクト型を表す場合、指定された属性索引の戻されるタイプは、カスタム・クラスまたは構造体のメンバーのタイプであり、OracleObjectMappingAttribute
オブジェクトを使用して属性にマップされます。
Oracleコレクション型
カスタム・タイプがOracleコレクション型を表す場合、戻されるタイプは、OracleArrayMappingAttribute
オブジェクトが適用されたカスタム・クラスまたは構造体のメンバーのタイプです。
NULL
属性値の場合、タイプの適切なNULL表現を戻します。たとえば、カスタム・タイプおよびプロバイダ固有のタイプを表す属性の場合、タイプの静的Null
プロパティを戻します。Nullableタイプを表す属性の場合、たとえばSystem.String
およびSystem.Array
タイプにはNULLを戻し、Int32
およびDateTime
のような他の残りのビルトイン・タイプには、DBNull.Value
を戻します。
このメソッドは、指定Oracleオブジェクトの指定コレクション属性の要素または指定Oracleコレクションの要素のいずれかを戻します。
宣言
// C# public static object GetValue(OracleConnection con, IntPtr pUdt, string attrName, out object statusArray);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのOPAQUE型のポインタ。
attrName
取得される大/小文字を区別する属性の名前。Oracleコレクションを表すカスタム・タイプからコレクション要素を取得する場合に、NULLを指定する必要があります。
statusArray
- OracleUdtStatus
配列であり、取得されたコレクション要素に対してNULLステータスを戻します。
戻り値
戻された属性またはコレクション要素を表すオブジェクト。
例外
ArgumentException
- 指定された名前は無効な属性名です。
備考
IOracleCustomType.ToCustomObject
メソッドは、OracleUdt.GetValue
メソッドを呼び出し、con
およびpUdt
パラメータを渡します。OracleUdt.GetValue
メソッドは次のタイプのオブジェクトを戻します。
Oracleオブジェクト型
カスタム・タイプがOracleオブジェクト型を表す場合、指定属性名の戻されるタイプは、カスタム・クラスまたは構造体のメンバーのタイプであり、OracleObjectMappingAttribute
オブジェクトを使用して属性にマップされます。
Oracleコレクション型
カスタム・タイプがOracleコレクション型を表す場合、戻されるタイプは、OracleArrayMappingAttribute
オブジェクトが適用されたカスタム・クラスまたは構造体のメンバーのタイプです。
NULL
属性値の場合、タイプの適切なNULL表現を戻します。たとえば、カスタム・タイプおよびプロバイダ固有のタイプを表す属性の場合、タイプの静的Null
プロパティを戻します。Nullableタイプを表す属性の場合、たとえばSystem.String
およびSystem.Array
タイプにはNULLを戻し、Int32
およびDateTime
のような他の残りのビルトイン・タイプには、DBNull.Value
を戻します。
戻されたコレクションがNULL
でない場合、出力statusArray
パラメータはコレクション要素ごとにNULLステータスが指定されて移入されます。
このメソッドは、指定Oracleオブジェクトの指定コレクション属性の要素または指定Oracleコレクションの要素のいずれかを戻します。
宣言
// C# public static object GetValue(OracleConnection con, IntPtr pUdt, int attrIndex, out object statusArray);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのOPAQUE型のポインタ。
attrIndex
取得される属性のゼロベースの索引。Oracleコレクションを表すカスタム・タイプからコレクション要素を取得する場合、0
を指定します。
statusArray
OracleUdtStatus
配列で、取得されたコレクション要素に対してNULLステータスを戻します。
戻り値
戻された属性またはコレクション要素を表すオブジェクト。
例外
ArgumentOutOfRangeException
- 指定された索引は無効な属性索引です。
備考
IOracleCustomType.ToCustomObject
メソッドは、OracleUdt.GetValue
メソッドを呼び出し、con
およびpUdt
パラメータを渡します。OracleUdt.GetValue
メソッドは次のタイプのオブジェクトを戻します。
Oracleオブジェクト型
カスタム・タイプがOracleオブジェクト型を表す場合、指定された属性索引の戻されるタイプは、カスタム・クラスまたは構造体のメンバーのタイプであり、OracleObjectMappingAttribute
オブジェクトを使用して属性にマップされます。
Oracleコレクション型
カスタム・タイプがOracleコレクション型を表す場合、戻されるタイプは、OracleArrayMappingAttribute
オブジェクトが適用されたカスタム・クラスまたは構造体のメンバーのタイプです。
NULL
属性値の場合、タイプの適切なNULL表現を戻します。たとえば、カスタム・タイプおよびプロバイダ固有のタイプを表す属性の場合、タイプの静的Null
プロパティを戻します。Nullableタイプを表す属性の場合、たとえばSystem.String
およびSystem.Array
タイプにはNULLを戻し、Int32
およびDateTime
のような他の残りのビルトイン・タイプには、DBNull.Value
を戻します。
戻されたコレクションがNULLでない場合、出力statusArray
パラメータはコレクション要素ごとにNULLステータスが指定されて移入されます。
IsDBNull
メソッドは、取得される指定属性がNULL
かどうかを示します。
オーバーロード・リスト:
IsDBNull(OracleConnection, IntPtr, string)
このメソッドは、OracleConnection
、ポインタおよび属性名が指定し、取得する属性がNULL
かどうかを示します。
IsDBNull(OracleConnection, IntPtr, int)
このメソッドは、OracleConnection
、ポインタおよび属性索引が指定し、取得する属性がNULL
かどうかを示します。
このメソッドは、OracleConnection
、ポインタおよび属性名が指定し、取得する属性がNULL
かどうかを示します。
宣言
// C# public static bool IsDBNull(OracleConnection con, IntPtr pUdt, string attrName);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのポインタ。
attrName
大/小文字を区別する属性名。
戻り値
指定された属性がNULL
の場合はTrue
、それ以外はfalse
です。
例外
ArgumentException
- 指定された名前は無効な属性名です。
備考
このメソッドは、IOracleCustomType.ToCustomObject
メソッドから呼び出されます。IOracleCustomType.ToCustomObject
メソッドからOracleUdt.IsDBNull
メソッドへcon
およびpUdt
パラメータを渡します。attrName
パラメータは大/小文字を区別します。
このメソッドは、OracleConnection
、ポインタおよび属性索引が指定し、取得する属性がNULL
かどうかを示します。
宣言
// C# public static bool IsDBNull(OracleConnection con, IntPtr pUdt, int attrIndex);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのOPAQUE型のポインタ。
attrIndex
ゼロベースの属性の索引。
戻り値
指定された属性がNULL
の場合はTrue
、それ以外はfalse
です。
例外
ArgumentOutOfRangeException
- 指定された索引は無効な属性索引です。
備考
このメソッドは、IOracleCustomType.ToCustomObject
メソッドから呼び出されます。IOracleCustomType.ToCustomObject
メソッドからOracleUdt.IsDBNull
メソッドへcon
およびpUdt
パラメータを渡します。
SetValue
メソッドは、指定されたOracle UDTに属性または要素を設定します。
オーバーロード・リスト:
SetValue(OracleConnection, IntPtr, string, object)
このメソッドは、指定された属性名および値を使用して、指定Oracle UDTに属性または要素を設定します。
SetValue(OracleConnection, IntPtr, int, object)
このメソッドは、指定された索引および値を使用して、指定Oracle UDTに属性または要素を設定します。
SetValue(OracleConnection, IntPtr, string, object, object)
このメソッドは、コレクション要素の指定されたNULLステータスを使用して、指定Oracleオブジェクトの指定コレクション属性または指定Oracleコレクションの要素のいずれかを指定した値に設定します。
SetValue(OracleConnection, IntPtr, int, object, object)
このメソッドは、コレクション要素の指定されたNULLステータスを使用して、指定Oracleオブジェクトの指定コレクション属性または指定Oracleコレクションの要素のいずれかを指定した値に設定します。
このメソッドは、指定された属性名および値を使用して、指定Oracle UDTに属性または要素を設定します。
宣言
// C# public static void SetValue(OracleConnection con, IntPtr pUdt, string attrName, object value);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのOPAQUE型のポインタ。
attrName
設定される属性名。Oracleコレクションを表すカスタム・タイプからのコレクション要素を設定するためにNULLを指定します。
value
設定される属性またはコレクション値。
例外
ArgumentException
- 指定した値は適切な型ではありません。
備考
IOracleCustomType.FromCustomObject
メソッドは、OracleUdt.SetValue
を呼び出してcon
およびpUdt
パラメータを渡します。OracleUdt.SetValue
メソッドは、次のタイプのオブジェクトを戻します。
Oracleオブジェクト型
カスタム・タイプがOracleオブジェクト型を表す場合、OracleObjectMappingAttribute
オブジェクトを使用して属性にマップされるカスタム・クラスまたは構造体のメンバーのタイプが、指定した属性の名前に対して受け入れられます。
Oracleコレクション型
カスタム・タイプがOracleコレクション型を表す場合、OracleArrayMappingAttribute
オブジェクトが適用されるカスタム・クラスまたは構造体のメンバーのタイプが受け入れられます。
このメソッドは、指定された索引および値を使用して、指定Oracle UDTに属性または要素を設定します。
宣言
// C# public static void SetValue(OracleConnection con, IntPtr pUdt, int attrIndex, object value);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのOPAQUE型のポインタ。
attrIndex
設定される属性の索引。Oracleコレクションを表すカスタム・タイプからのコレクション要素を設定するために0を指定します。
value
設定される属性またはコレクション値。
例外
ArgumentException
- 指定した値は適切な型ではありません。
備考
IOracleCustomType.FromCustomObject
メソッドは、OracleUdt.SetValue
を呼び出してcon
およびpUdt
パラメータを渡します。OracleUdt.SetValue
メソッドは、次のタイプのオブジェクトを戻します。
Oracleオブジェクト型
カスタム・タイプがOracleオブジェクト型を表す場合、OracleObjectMappingAttribute
オブジェクトを使用して属性にマップされるカスタム・クラスまたは構造体のメンバーのタイプが、指定した属性索引のタイプに対して受け入れられます。
Oracleコレクション型
カスタム・タイプがOracleコレクション型を表す場合、OracleArrayMappingAttribute
オブジェクトが適用されるカスタム・クラスまたは構造体のメンバーのタイプが受け入れられます。
このメソッドは、コレクション要素の指定されたNULLステータスを使用して、指定Oracleオブジェクトの指定コレクション属性または指定Oracleコレクションの要素のいずれかを指定した値に設定します。
宣言
// C# public static void SetValue(OracleConnection con, IntPtr pUdt, string attrName, object value, object statusArray);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのOPAQUE型のポインタ。
attrName
設定される属性名。Oracleコレクションを表すカスタム・タイプからのコレクション要素を設定するためにNULLを指定します。
value
設定される属性またはコレクション値。
statusArray
コレクション要素のNULLステータス。
例外
ArgumentException
- 指定した値は適切な型ではありません。
備考
IOracleCustomType.FromCustomObject
メソッドは、OracleUdt.SetValue
を呼び出してcon
およびpUdt
パラメータを渡します。OracleUdt.SetValue
メソッドは、次のタイプのオブジェクトを戻します。
Oracleオブジェクト型
カスタム・タイプがOracleオブジェクト型を表す場合、OracleObjectMappingAttribute
オブジェクトを使用して属性にマップされるカスタム・クラスまたは構造体のメンバーのタイプが、指定した属性の名前に対して受け入れられます。
Oracleコレクション型
カスタム・タイプがOracleコレクション型を表す場合、OracleArrayMappingAttribute
オブジェクトが適用されるカスタム・クラスまたは構造体のメンバーのタイプが受け入れられます。
このメソッドは、コレクション要素の指定されたNULLステータスを使用して、指定Oracleオブジェクトの指定コレクション属性または指定Oracleコレクションの要素のいずれかを指定した値に設定します。
宣言
// C# public static void SetValue(OracleConnection con, IntPtr pUdt, int attrIndex, object value, object statusArray);
パラメータ
con
OracleConnection
インスタンス。
pUdt
Oracle UDTへのOPAQUE型のポインタ。
attrIndex
設定される属性の索引。Oracleコレクションを表すカスタム・タイプからのコレクション要素を設定するために0を指定します。
value
設定される属性またはコレクション値。
statusArray
コレクション要素のNULLステータス。
例外
ArgumentException
- 指定した値は適切な型ではありません。
備考
IOracleCustomType.FromCustomObject
メソッドは、OracleUdt.SetValue
を呼び出してcon
およびpUdt
パラメータを渡します。OracleUdt.SetValue
メソッドは、次のタイプのオブジェクトを戻します。
Oracleオブジェクト型
カスタム・タイプがOracleオブジェクト型を表す場合、OracleObjectMappingAttribute
オブジェクトを使用して属性にマップされるカスタム・クラスまたは構造体のメンバーのタイプが、指定した属性索引のタイプに対して受け入れられます。
Oracleコレクション型
カスタム・タイプがOracleコレクション型を表す場合、OracleArrayMappingAttribute
オブジェクトが適用されるカスタム・クラスまたは構造体のメンバーのタイプが受け入れられます。