#PIPE ROW Statement
PIPE ROW语句在管道函数中使用,产生一行数据并写入管道中。格式为:
PIPE ROW(expr);
其中,expr为行数据表达式,其结果类型必须与管道函数定义指定的返回集合元素类型匹配。
Note:
如果管道函数在自治事务中,在执行PIPE ROW之前必须先执行COMMIT或ROLLBACK。
示例
CREATE OR REPLACE TYPE ya_pipe_func_typ1 IS TABLE OF INT;
/
CREATE OR REPLACE FUNCTION ya_pipe_func(p1 INT) RETURN ya_pipe_func_typ1 PIPELINED IS
BEGIN
FOR i IN 1..p1 LOOP
pipe row(i);
END LOOP;
RETURN;
END;
/