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,而不是引发错误。