CREATE OR REPLACE PROCEDURE my_proc
2 IS
3 owner_name VARCHAR2 (100);
4 caller_name VARCHAR2 (100);
5 line_number NUMBER;
6 caller_type VARCHAR2 (100);
7 BEGIN
8 OWA_UTIL.WHO_CALLED_ME (owner_name,caller_name,line_number,caller_type);
9 DBMS_OUTPUT.put_line ( caller_type
10 || ' '
11 || owner_name
12 || '.'
13 || caller_name
14 || ' called MY_PROC from line number '
15 || line_number
16 );
17 END;
18 /
/*///////////////////////////////////////////////////////////////////////////*/SQL> SET serveroutput on
SQL> BEGIN
2 my_proc;
3 END;
4 /
ANONYMOUS BLOCK . called MY_PROC from line number 2SQL> CREATE OR REPLACE FUNCTION my_func
2 RETURN VARCHAR2
3 IS
4 BEGIN
5 my_proc;
6 RETURN 'hi';
7 END;
8 /
Function created.
SQL> SELECT my_func
2 FROM DUAL;
MY_FUNC
----------------------------------------------------------
hi
FUNCTION HR.MY_FUNC called MY_PROC from line number 5
http://asktom.oracle.com/tkyte/who_called_me/index.html burada basit bir örnek var ayrıca
http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/statviews_1041.htm burada da bağlantilarin açiklamasi bulunuyor.
http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28424/adfns_plscope.htm
http://www.praetoriate.com/data_dictionary/dd_all_dependencies.htm bunu incele
SELECT * FROM DBA_SOURCE
WHERE UPPER(TEXT) LIKE '%PROCEDURE_NAME%'
soyle bir sorguda sonuc veriyor.
tamami alıntıdır.
http://www.orafaq.com/forum/t/138619/0/ derinlik bulma ile ilgili level kullanılmış. yönetim hiyararşisini çıkartıyor.
No comments:
Post a Comment