7.3 コレクションの作成

各コレクションには、データ要素(メンバー)の名前付きリストが含まれます。このリストには、最大50個の文字属性(VARCHAR2(4000))、5個の数値属性、1個のXMLタイプ属性、1個のラージ・バイナリ属性(BLOB)および1個のラージ・キャラクタ属性(CLOB)を含めることができます。次のメソッドを使用してコレクションを作成します。

  • CREATE_COLLECTION

    このメソッドは、指定された名前で空のコレクションを作成します。名前付きコレクションが存在すると、例外が発生します。

  • CREATE_OR_TRUNCATE_COLLECTION

    このメソッドは、指定された名前付きコレクションが存在しないと、指定された名前で空のコレクションを作成します。名前付きコレクションが存在すると、このメソッドによって切り捨てられます。コレクションは切り捨てられることによって空になりますが、そのまま残ります。

  • CREATE_COLLECTION_FROM_QUERY

    このメソッドは、コレクションを作成してから、指定された問合せの結果を移入します。名前付きコレクションが存在すると、例外が発生します。このメソッドは、SELECT句に最大50個の列を指定した問合せで使用できます。SELECT句内のこれらの列は、コレクションの50個の文字属性(C001からC050)に移入されます。

  • CREATE_COLLECTION_FOM_QUERY2

    このメソッドは、コレクションを作成してから、指定された問合せの結果を移入します。名前付きコレクションが存在すると、例外が発生します。このメソッドは、CREATE_COLLECTION_FROM_QUERYと同じですが、SELECT句の最初の5列は数値である必要があります。数値データ型の列に続いて、最大50個の文字データ型の列をSELECTに指定できます。

  • CREATE_COLLECTION_FROM_QUERY_B

    このメソッドでは、バルクSQL操作を実行することにより、CREATE_COLLECTION_FROM_QUERYメソッドよりも非常に速いパフォーマンスが提供されますが、次の制限があります。

    • 問合せの選択リスト内の列値は、2,000バイトを超えることはできません。列値が2,000バイトを超える行がある場合は、実行中にエラーが発生します。

    • コレクション内のいずれのメンバーに対してもMD5チェックサムは計算されません。

  • CREATE_COLLECTION_FROM_QUERYB2

    このメソッドも、コレクションを作成してから、指定された問合せの結果を移入します。名前付きコレクションが存在すると、例外が発生します。このメソッドは、CREATE_COLLECTION_FROM_QUERY_Bと同じですが、SELECT句の最初の5列は数値である必要があります。数値データ型の列に続いて、最大50個の文字データ型の列をSELECTに指定できます。