读书人

“无法从非嵌套表项访问行”的错解决方

发布时间: 2012-05-23 13:44:13 作者: rapoo

“无法从非嵌套表项访问行”的错
我只是在存储过程中调用了下函数,为什么报这个错啊!各位有经验的朋友,一般这是怎么回事啊?

[解决办法]

SQL code
--你想用 table() 这种方式查询数据,你的函数不能是普通函数。create table tb1(k number, v varchar2(10)); insert into tb1(k, v) values(100,'aaa'); insert into tb1(k, v) values(200,'bbb'); insert into tb1(k, v) values(200,'ccc'); select * from tb1; create type row_type1 as object(k number, v varchar2(10)); create type table_type1 as table of row_type1; create or replace function fun1 return table_type1 pipelined as v row_type1; begin      for myrow in (select k, v from tb1) loop        v := row_type1(myrow.k, myrow.v);        pipe row (v);      end loop;      return; end; select * from table(fun1); 

读书人网 >oracle

热点推荐