コレクションメソッドはPLサブルーチンに属し、コレクション情報を返す関数またはコレクションを操作するプロシージャーのいずれかです。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
コレクションメソッドにより、コレクションの使用と保守が容易になります。
説明
空コレクションに対して、EXISTSは、事前定義された例外COLLECTION_IS_NULLを発生させない唯一のコレクションメソッドです。
OceanBaseデータベースでサポートされているコレクションメソッドは以下の表のとおりです。
メソッド |
タイプ |
説明 |
|---|---|---|
| DELETE | ストアドプロシージャ | コレクション内の要素を削除します。 |
| TRIM | ストアドプロシージャ | 可変配列またはネスト表の末尾から要素を削除します。 |
| EXTEND | ストアドプロシージャ | 要素を可変配列またはネスト表の末尾に追加します。 |
| EXISTS | 関数 | 指定された要素が可変配列またはネスト表に存在する場合にのみTRUEを返します。 |
| FIRST | 関数 | コレクション内の最初のインデックスを返します。 |
| LAST | 関数 | コレクション内の最後のインデックスを返します。 |
| COUNT | 関数 | コレクション内の要素数を返します。 |
| LIMIT | 関数 | コレクションが収容できる最大要素数を返します。 |
| PRIOR | 関数 | 指定されたインデックスの前のインデックスを返します。 |
| NEXT | 関数 | 指定されたインデックスの次のインデックスを返します。 |
コレクションメソッドを呼び出す基本構文は以下のとおりです:
collection_name.method
コレクションメソッドは、そのタイプ(関数またはプロシージャ)のPLサブルーチン内で呼び出すことができますが、SQL文では呼び出すことはできません。
サブルーチン内では、コレクションパラメータは、それにバインドされたパラメータの属性を継承します。このようなパラメータにコレクションメソッドを適用できます。可変配列パラメータの場合、パラメータモードに関係なく、LIMITの値は常にパラメータ型の定義から得られます。