⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 plglst.sps

📁 Oracle PL/SQL procedure generator (second generator type)
💻 SPS
字号:
CREATE OR REPLACE PACKAGE PLGlst 
/*----------------------------------------------------------------
||                  PL/Vision Professional 
||----------------------------------------------------------------
||    File: plglst.sps
||  Author: Steven Feuerstein
||
|| This is a part of the PL/Vision Professional Code library.
|| Copyright (C) 1996-99 Quest Software, Inc.
|| All rights reserved.
||
|| For more information, call Quest Software at 1-800-REVEAL4
|| or check out our Web page: www.Quest Software.com
*/
IS
   /* Set of exceptions specific to and raised by the package */
   list_undefined EXCEPTION;
   list_full EXCEPTION;
   out_of_bounds EXCEPTION;

   c_maxitems CONSTANT PLS_INTEGER := 100000;

/* Set maximum number of items allowed in list */

   PROCEDURE set_maxitems (max_in IN PLS_INTEGER := c_maxitems);
   FUNCTION maxitems RETURN PLS_INTEGER;

   /* Returns TRUE if list has been allocated. */

   FUNCTION is_made (list_in IN VARCHAR2) RETURN BOOLEAN;
   FUNCTION is_made (list_in IN PLS_INTEGER) RETURN BOOLEAN;

   /* The number of items currently in the list. */

   FUNCTION nitems (list_in IN VARCHAR2) RETURN PLS_INTEGER;
   FUNCTION nitems 
      (list_in IN PLS_INTEGER, validate_in IN BOOLEAN := TRUE)
       RETURN PLS_INTEGER; 

   /* Append an item onto the end of the list. */

   PROCEDURE appenditem (list_in IN VARCHAR2, item_in IN VARCHAR2);
   PROCEDURE appenditem (list_in IN PLS_INTEGER, item_in IN VARCHAR2);

   /* Destroy the list, freeing up associated memory. */

   PROCEDURE destroy (list_in IN VARCHAR2, keep_list_in IN BOOLEAN := FALSE);
   PROCEDURE destroy (list_in IN PLS_INTEGER, keep_list_in IN BOOLEAN := FALSE);

   /* Delete the specified item from the list. */

   PROCEDURE deleteitem 
      (list_in IN VARCHAR2, item_in IN VARCHAR2, all_in IN BOOLEAN := FALSE);
   PROCEDURE deleteitem 
      (list_in IN PLS_INTEGER, item_in IN VARCHAR2, all_in IN BOOLEAN := FALSE);

   /* Delete the Nth item from the list. */

   PROCEDURE deleteitem (list_in IN VARCHAR2, pos_in IN PLS_INTEGER);
   PROCEDURE deleteitem (list_in IN PLS_INTEGER, pos_in IN PLS_INTEGER);
   
   /* Get the Nth item from the list. */

   FUNCTION getitem (list_in IN VARCHAR2, pos_in IN PLS_INTEGER) RETURN VARCHAR2;
   FUNCTION getitem (list_in IN PLS_INTEGER, pos_in IN PLS_INTEGER) RETURN VARCHAR2;

   /* Get the position of the specified item in the list. */

   FUNCTION getposition (list_in IN VARCHAR2, item_in IN VARCHAR2)
      RETURN PLS_INTEGER;
   FUNCTION getposition (list_in IN PLS_INTEGER, item_in IN VARCHAR2)
      RETURN PLS_INTEGER;

   /* Insert an item at the specified position in the list. */

   PROCEDURE insertitem 
      (list_in IN VARCHAR2, pos_in IN PLS_INTEGER, item_in IN VARCHAR2);
   PROCEDURE insertitem
      (list_in IN PLS_INTEGER, pos_in IN PLS_INTEGER, item_in IN VARCHAR2);

   /* Make a new list of the specified name. */

   PROCEDURE make 
      (list_in IN VARCHAR2, 
       overwrite_in IN BOOLEAN := FALSE,
       maxlen_in IN PLS_INTEGER := PLGadmin.dbmax_len);

   FUNCTION make 
      (list_in IN VARCHAR2,
       overwrite_in IN BOOLEAN := FALSE,
       maxlen_in IN PLS_INTEGER := PLGadmin.dbmax_len)
   RETURN PLS_INTEGER;

   FUNCTION make 
      (overwrite_in IN BOOLEAN := FALSE,
       maxlen_in IN PLS_INTEGER := PLGadmin.dbmax_len)
   RETURN PLS_INTEGER;

   /* Insert an item at the first position of the list. */

   PROCEDURE prependitem (list_in IN VARCHAR2, item_in IN VARCHAR2);
   PROCEDURE prependitem (list_in IN PLS_INTEGER, item_in IN VARCHAR2);

   /* Replace the Nth item in the list with the new item. */

   PROCEDURE replaceitem 
      (list_in IN VARCHAR2, pos_in IN PLS_INTEGER, item_in IN VARCHAR2);
   PROCEDURE replaceitem 
      (list_in IN PLS_INTEGER, pos_in IN PLS_INTEGER, item_in IN VARCHAR2);

/* Display/retrieve information about list. */

   PROCEDURE display (list_in IN VARCHAR2);
   PROCEDURE display (list_in IN PLS_INTEGER);

   PROCEDURE show (list_in IN VARCHAR2);
   PROCEDURE show (list_in IN PLS_INTEGER, name_in IN VARCHAR2 := NULL);

   PROCEDURE showall;

   FUNCTION name (list_in IN PLS_INTEGER) RETURN VARCHAR2;
   FUNCTION id (list_in IN VARCHAR2) RETURN PLS_INTEGER;

END PLGlst;
/
rem show errors

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -