更新时间:2024-06-29 GMT+08:00
VARRAY
REF CURSOR定义为返回参数。
设置plSQLCollection=varray后进行迁移。
输入: VARRAY
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
CREATE OR REPLACE TYPE TYPE_RMTS_ARRAYTYPE IS TABLE OF VARCHAR2 (30000); CREATE OR REPLACE PACKAGE BODY SCMS_STRING_UTILS As FUNCTION END_WITH (SRCSTRING VARCHAR2, --Source character string ENDCHAR VARCHAR2, --End character string IGNORECASE BOOLEAN --Ignore Case ) RETURN BOOLEAN IS SRCLEN NUMBER (20) := LENGTH(SRCSTRING); ENDLEN NUMBER (20) := LENGTH(ENDCHAR); V_TOKEN_ARRAY TYPE_RMTS_ARRAYTYPE := TYPE_RMTS_ARRAYTYPE (); V_TOKEN_ARRAY1 TYPE_RMTS_ARRAYTYPE := TYPE_RMTS_ARRAYTYPE (); I NUMBER (20) := 1; TMP_CHAR VARCHAR(1); TMP_CHAR1 VARCHAR(1); BEGIN ... END; END; / |
输出
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
CREATE OR REPLACE FUNCTION SCMS_STRING_UTILS.END_WITH (SRCSTRING VARCHAR2 /* source character string */ , ENDCHAR VARCHAR2 /* End character string */ , IGNORECASE BOOLEAN /* Ignore case */ ) RETURN BOOLEAN IS SRCLEN NUMBER (20) := LENGTH(SRCSTRING); ENDLEN NUMBER (20) := LENGTH(ENDCHAR); TYPE TYPE_RMTS_ARRAYTYPE IS VARRAY (1024) OF VARCHAR2 (30000); V_TOKEN_ARRAY TYPE_RMTS_ARRAYTYPE /*:= TYPE_RMTS_ARRAYTYPE()*/ ; V_TOKEN_ARRAY1 TYPE_RMTS_ARRAYTYPE /*:= TYPE_RMTS_ARRAYTYPE()*/ ; I NUMBER (20) := 1; TMP_CHAR VARCHAR(1); TMP_CHAR1 VARCHAR(1); BEGIN END; |
父主题: Oracle语法迁移