GET_DEPENDENCY 过程 - 列示依赖于给定对象的对象
GET_DEPENDENCY 过程能够列示依赖于给定对象的所有对象。
语法
参数
- 类型
- 类型为 VARCHAR(128) 的输入自变量,用于指定类型为 name 的对象。有效值为 FUNCTION、INDEX、LOB、PACKAGE、PACKAGE BODY、PROCEDURE、SEQUENCE、TABLE、TRIGGER 和 VIEW。
- schema
- 类型为 VARCHAR(128) 的输入自变量,用于指定 name 中存在的模式的名称。
- name
- 类型为 VARCHAR(128) 的输入自变量,用于指定要获取其依赖性的对象的名称。
权限
对 DBMS_UTILITY 模块的 EXECUTE 特权。
示例
示例 1:以下匿名块查找表 T1 以及函数 FUNC1 的依赖性。
SET SERVEROUTPUT ON@
CREATE TABLE SCHEMA1.T1 (C1 INTEGER)@
CREATE OR REPLACE FUNCTION SCHEMA2.FUNC1( parm1 INTEGER )
SPECIFIC FUNC1
RETURNS INTEGER
BEGIN
RETURN parm1;
END@
CREATE OR REPLACE FUNCTION SCHEMA3.FUNC2()
SPECIFIC FUNC2
RETURNS INTEGER
BEGIN
DECLARE retVal INTEGER;
SELECT SCHEMA2.FUNC1(1) INTO retVal FROM SCHEMA1.T1;
END@
CALL DBMS_UTILITY.GET_DEPENDENCY('FUNCTION', 'SCHEMA2', 'FUNC1')@
CALL DBMS_UTILITY.GET_DEPENDENCY('TABLE', 'SCHEMA1', 'T1')@此示例生成以下输出:
SET SERVEROUTPUT ON
DB20000I The SET SERVEROUTPUT command completed successfully.
CREATE TABLE SCHEMA1.T1 (C1 INTEGER)
DB20000I The SQL command completed successfully.
CREATE OR REPLACE FUNCTION SCHEMA2.FUNC1( parm1 INTEGER )
SPECIFIC FUNC1
RETURNS INTEGER
BEGIN
RETURN parm1;
END
DB20000I The SQL command completed successfully.
CREATE OR REPLACE FUNCTION SCHEMA3.FUNC2()
SPECIFIC FUNC2
RETURNS INTEGER
BEGIN
DECLARE retVal INTEGER;
SELECT SCHEMA2.FUNC1(1) INTO retVal FROM SCHEMA1.T1;
END
DB20000I The SQL command completed successfully.
CALL DBMS_UTILITY.GET_DEPENDENCY('FUNCTION', 'SCHEMA2', 'FUNC1')
Return Status = 0
DEPENDENCIES ON SCHEMA2.FUNC1
------------------------------------------------------------------
*FUNCTION SCHEMA2.FUNC1()
* FUNCTION SCHEMA3 .FUNC2()
CALL DBMS_UTILITY.GET_DEPENDENCY('TABLE', 'SCHEMA1', 'T1')
Return Status = 0
DEPENDENCIES ON SCHEMA1.T1
------------------------------------------------------------------
*TABLE SCHEMA1.T1()
* FUNCTION SCHEMA3 .FUNC2()
