當前位置:首頁 » 存儲配置 » 獲取oracle存儲過程

獲取oracle存儲過程

發布時間: 2023-04-11 07:43:50

sql命令查詢Oracle存儲過程信息

oracle資料庫中,已建立好的存儲過程信息存儲在系統表ALL_SOURCE 中,需要用sysdba身份登錄資料庫,進行查詢操作,SQL命令如下:

SELECTline,textFROMALL_SOURCE
WHERETYPE='PROCEDURE'
ANDNAME='過程名稱'
ANDOWNER='用戶名'
ORDERBYline;

存儲過程分成多行,每一行會存儲為一條數據,所以,查詢出來的會是多行,line表示行號。


ALL_SOURCE 表中還存儲了以下類型信息:

SQL>selectdistincttypefromall_source;
TYPE
------------
TYPE(對象)類型
TYPEBODY類型體
PROCEDURE存儲過程
FUNCTION函數
TRIGGER觸發器
PACKAGE包
PACKAGEBODY包體

⑵ 如何查看oracle的存儲過程

使用tode或者Navicat 或者navigtor等連接oracle的工具

找到procere的選項即可查看所有的存儲過程,點擊某個名字可以看到其中的定義

⑶ 如何獲取ORACLE存儲過程的參數個數

查看源代碼啊:
查看存儲過程的原代碼:

select dbms_metadata.get_ddl('PROCEDURE','PROCEDURE_NAME') from al;

其中,PROCEDURE_NAME 是你的存儲過程的名字,用大寫!

⑷ Oracle怎麼導出存儲過程

1、首先登錄到資料庫中,點擊右上角有個工具欄,點擊工具欄上的tools。

⑸ 如何獲取oracle 執行過的存儲過程

select t.sql_id,
t.sql_text,
s.plan_hash_value,
s.optimizer_cost,
s.executions_total,
s.elapsed_time_total,
s.disk_reads_total,
s.buffer_gets_total
from DBA_HIST_SQLSTAT s, DBA_HIST_SQLTEXT t
where s.sql_id=t.sql_id
and t.sql_text like'%存儲過程名稱攔清%';

沒有想簡鄭前到其他好辦法,確實不太好查了,把存叢春儲過程當作SQL來查找吧。

⑹ 如何查詢oracle庫中已經存在的存儲過程

命令行:

sqlplus / as sysdba
select name from user_source where type='PROCEDURE';
可查看sys用戶下所有存游舉消儲過程名字
select text from user_source where name='XXX'
可查看該存神知儲過程的內容

plSQLdevloper工具:
左側找到『Proceres』,點開之後即可查看答滾當前用戶的所有存儲過程。
右鍵點擊存儲過程,選擇『view』可查看詳細信息

⑺ oracle怎樣查看正在執行的存儲過程

1、在存儲過程中加一個輸出參數,執行完存儲過程後,判斷輸出參數的值;

2、查看存儲過程中處理數據後,你要的效果達到沒有。

⑻ oracle的存儲過程怎麼查看

在pl/sql左邊樹形列表中找到A這個存儲過程,然後展開A前面的加號,在點擊reference就是調用A的函數和過程

⑼ ORACLE 獲取包中存儲過程或函數的參數

該包用於  動態獲取包中存儲過程或者函數的參數。

create or replace package SF_GET_ARGUMENTS_PKG is

  -- Author  : SANFU

  -- Created : 2020/7/22 14:40:49

  -- Purpose : 動態獲取包中存儲過程或者函數的參數

  PROCEDURE get_arguments(p_pkg_name in VARCHAR2, p_obj_name in VARCHAR2);

  PROCEDURE pf_get_arguments(p_pkg_name in VARCHAR2,

         茄脊差                   p_obj_name in VARCHAR2);

end SF_GET_ARGUMENTS_PKG;

/

create or replace package body SF_GET_ARGUMENTS_PKG is

  /*============================================*

  * Author  : CZH

  * Created  : 2020-07-22 15:00:12

  * ALERTER  :

  * ALERTER_TIME  :

  * Purpose  :

  * Arg_number  : 2

  * P_PKG_NAME :包名

  * P_OBJ_NAME :存儲過程名或函數名

  *============================================*/

  PROCEDURE get_arguments(p_pkg_name in VARCHAR2, p_obj_name in VARCHAR2) IS

    v_pkg_name  varchar2(100) := upper(p_pkg_name);

    v_obj_name  varchar2(100) := upper(p_obj_name);

    v_arg_number NUMBER;

    cursor data_cur is

      select t.PACKAGE_NAME,

            t.OBJECT_NAME,

            t.ARGUMENT_NAME,

            t.IN_OUT,

            count(t.ARGUMENT_NAME) over(PARTITION BY t.OBJECT_NAME) arg_number,

            row_number() over(partition by t.OBJECT_NAME order by t.POSITION asc) rank_position

   顫皮     from sys.user_arguments t

      where t.PACKAGE_NAME = v_pkg_name

        and t.OBJECT_NAME = v_obj_name

        and t.POSITION <> 0;

  begin

    select count(1)

      into v_arg_number

      from sys.user_arguments t

    where t.PACKAGE_NAME = v_pkg_name

      and t.OBJECT_NAME = v_obj_name

      and t.POSITION <野虧> 0;

    dbms_output.put_line('/*============================================*');

    dbms_output.put_line(' * Author  : SANFU');

    dbms_output.put_line(' * Created  : ' ||

                        TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS'));

    dbms_output.put_line(' * ALERTER  : ');

    dbms_output.put_line(' * ALERTER_TIME  : ');

    dbms_output.put_line(' * Purpose  : ');

    dbms_output.put_line(' * Obj_Name    : ' || v_obj_name);

    dbms_output.put_line(' * Arg_Number  : ' || v_arg_number);

    for rec in data_cur loop

      dbms_output.put_line(' * ' || rec.ARGUMENT_NAME || ' :');

    end loop;

    dbms_output.put_line(' *============================================*/');

  end get_arguments;

  --獲取參數

  PROCEDURE pf_get_arguments(p_pkg_name in VARCHAR2,

                            p_obj_name in VARCHAR2) IS

    v_pkg_name varchar2(100) := upper(p_pkg_name);

    v_obj_name varchar2(100) := upper(p_obj_name);

    v_attr    varchar2(100);

    cursor data_cur is

      select t.PACKAGE_NAME,

            t.OBJECT_NAME,

            t.ARGUMENT_NAME,

            t.IN_OUT,

            count(t.ARGUMENT_NAME) over(PARTITION BY t.OBJECT_NAME) arg_number,

            row_number() over(partition by t.OBJECT_NAME order by t.POSITION asc) rank_position

        from sys.user_arguments t

      where t.PACKAGE_NAME = v_pkg_name

        and t.OBJECT_NAME = v_obj_name

        and t.POSITION <> 0;

  begin

    dbms_output.put_line(v_pkg_name || '.' || v_obj_name || '(');

    for rec in data_cur loop

      if rec.in_out = 'IN' then

        v_attr := '';

      elsif rec.in_out = 'OUT' then

        v_attr := '';

      elsif rec.in_out = 'IN/OUT' then

        v_attr := '';

      end if;

      if data_cur%ROWCOUNT = rec.arg_number then

        dbms_output.put_line(lower(rec.ARGUMENT_NAME) || '        =>' ||

                            '  ' || v_attr || lower(rec.ARGUMENT_NAME));

      else

        dbms_output.put_line(lower(rec.ARGUMENT_NAME) || '        =>' ||

                            '  ' || v_attr || lower(rec.ARGUMENT_NAME) || ',');

      end if;

    end loop;

    dbms_output.put_line(');');

  end pf_get_arguments;

end SF_GET_ARGUMENTS_PKG;

/

熱點內容
李宗瑞文件夾 發布:2025-02-13 04:27:59 瀏覽:609
phpparent的parent 發布:2025-02-13 04:18:08 瀏覽:451
小容量存儲器市場 發布:2025-02-13 04:01:11 瀏覽:371
ickeck文件夾 發布:2025-02-13 04:00:21 瀏覽:640
上傳照片文案 發布:2025-02-13 03:53:13 瀏覽:426
電腦版花雨庭怎麼調中文伺服器 發布:2025-02-13 03:32:35 瀏覽:37
linux開發android 發布:2025-02-13 03:32:34 瀏覽:486
查詢重復欄位的sql語句 發布:2025-02-13 03:12:42 瀏覽:323
8uftp上傳網站 發布:2025-02-13 03:01:57 瀏覽:243
電腦玩游戲如何配置電源 發布:2025-02-13 03:01:53 瀏覽:362