【发布时间】:2015-01-23 08:50:39
【问题描述】:
对于作业,建议使用集合。简单地说,我需要将一个字符串分成几个子字符串,将这些字符串的顺序颠倒并将它们放在一起。
省略了实际代码,因为它在声明部分崩溃。 不断收到错误:stringlist1 不是过程或未定义 因此,出于某种原因,我尝试分配给 stringlist1 的类型没有这样做。 你们知道为什么会这样吗?如果这无法解决,除了为集合中的每一行创建一个变量之外,还有什么巧妙的解决方法?
我尝试过的事情:
-
* 事先在“创建类型”语句中创建我自己的类型
* 在函数之前的匿名块中创建类型
* 在函数的声明部分中创建一个 varchar 集合
* 下面使用的 dbms 包
* 重命名它
* 尝试启动类似 stringlist1 dbms_utility.name_array 的类型 := dbms_utility.name_array();
Create or replace FUNCTION TEST (p_number varchar2)
RETURN varchar2
IS
stringlist1 dbms_utility.name_array;
stringlist2 dbms_utility.name_array;
BEGIN
stringlist1('test');
stringlist2('test');
dbms.output.put_line(stringlist1(1));
return stringlist1(1);
END;
【问题讨论】:
标签: oracle function collections plsql