簡體   English   中英

Oracle存儲過程進入視圖

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM