EXISTS

EXISTS メソッドは、コレクション内に添え字が存在することを確認します。下付き文字が存在する場合、 EXISTS は TRUE を返します。下付き文字が存在しない場合、 EXISTS は FALSE を返します。このメソッドは単一の引数を取ります。テスト対象の subscript 。構文は次のとおりです。

<collection>.EXISTS(<subscript>)

collection はコレクションの名前です。

subscript は、テストする値です。 NULL, EXISTS の値を指定すると、 false が返されます。

次の例は、添え字番号 10 が連想配列内に存在することを確認します。

DECLARE
    TYPE sparse_arr_typ IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
    sparse_arr      sparse_arr_typ;
BEGIN
    sparse_arr(-100)  := -100;
    sparse_arr(-10)   := -10;
    sparse_arr(0)     := 0;
    sparse_arr(10)    := 10;
    sparse_arr(100)   := 100;
    DBMS_OUTPUT.PUT_LINE('The index exists: ' ||
        CASE WHEN sparse_arr.exists(10) = TRUE THEN 'true' ELSE 'false' END);
END;

The index exists: true

一部のコレクションメソッドは、指定されたコレクション内に存在しない添え字で呼び出した場合に例外を発生させます。エラーを発生させるのではなく、 EXISTS メソッドは FALSE の値を返します。