美文网首页
PL/SQL 内存表删除元素

PL/SQL 内存表删除元素

作者: DreamOver | 来源:发表于2017-05-09 16:23 被阅读28次

    存储过程中的内存表可以当做其他程序语言中的数组来使用。

    删除某一元素后该元素位置仍然存在

    将数组中所有元素都删除后,该数组成为空数组,而不是 null

    DECLARE
      TYPE NUMLIST IS TABLE OF NUMBER;
      ARRAY_TEST NUMLIST := NUMLIST(1, 3, 5, 7);
    
    BEGIN
      --删除元素
      ARRAY_TEST.DELETE(1);
      ARRAY_TEST.DELETE(2);
      ARRAY_TEST.DELETE(3);
      ARRAY_TEST.DELETE(4);
    
      --检查数组长度是否为 0
      DBMS_OUTPUT.PUT_LINE('Length of ARRAY_TEST: ' || ARRAY_TEST.COUNT);
    
      --检查数组是否为 null
      IF ARRAY_TEST IS NULL THEN
        DBMS_OUTPUT.PUT_LINE('ARRAY_TEST IS NULL.');
      ELSE
        DBMS_OUTPUT.PUT_LINE('ARRAY_TEST IS NOT NULL.');
      END IF;
    
    END;
    

    输出结果:

    Length of ARRAY_TEST: 0
    ARRAY_TEST IS NOT NULL.
    

    相关文章

      网友评论

          本文标题:PL/SQL 内存表删除元素

          本文链接:https://www.haomeiwen.com/subject/prqitxtx.html