[英]Oracle Stored Procedure into a View
我在oracle中有一个SP,在我有一个查询来创建viewn之前,它返回一个游标,但是由于我需要的数据的复杂性,获得它的更好的选择是一个SP,但是我严格要求使用信息(客户的要求),但是现在我不知道如何在视图中放置/转换数据(游标),我正在检查“全局临时表”,但这意味着我需要在访问视图之前调用SP,但这不是可能。 至关重要的是,我需要使用select调用access视图,从view_data_sp中选择Select *,显然性能不会受到影响。
知道我该如何实现吗?
谢谢
考虑使用记录类型,记录表和管道行。 这样的事情会成功吗?
CREATE OR REPLACE package sysop as
type file_list_rec is record(filename varchar2(1024));
type file_list is table of file_list_rec;
function ls(v_directory varchar2) return file_list pipelined;
end;
/
CREATE OR REPLACE package body sysop as
function ls(v_directory varchar2) return file_list pipelined is
rec file_list_rec;
v_host_list varchar2(32000) := '';
begin
v_host_list := host_list(v_directory);
for file in (
select regexp_substr(v_host_list, '[^'||chr(10)||']+', 1, level)
from dual
connect by
regexp_substr(v_host_list, '[^'||chr(10)||']+', 1, level) is not null)
loop
pipe row (file);
end loop;
return;
end ls;
end sysop;
/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.