Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


对象依赖关系-SYS_DEPENDS

📄字数 1.3K
👁️阅读量 加载中...

功能描述

SYS_DEPENDS系统表用于保存和管理对象之间依赖关系信息。

字段说明

序号字段名类型说明V11V12
0DB_IDINTEGER库ID
1OBJ_TYPE1INTEGER被依赖对象类型
2OWNER_ID1INTEGER被依赖对象模式ID
3OBJ_ID1INTEGER被依赖对象的ID
4OBJ_TYPE2INTEGER依赖对象类型
5OWNER_ID2INTEGER依赖对象模式ID
6OBJ_ID2INTEGER对象的ID
7RESERVED1VARCHAR保留字段
8RESERVED2VARCHAR保留字段

OBJ_TYPE:详见SYS_OBJECTS

应用举例

  • 外键表依赖主键表
sql
SQL> CREATE TABLE tab_dep_info1(id INT,CONSTRAINT pk1 PRIMARY KEY(id));

SQL> CREATE TABLE tab_dep_info2(id INT,CONSTRAINT pk2 PRIMARY KEY(id),CONSTRAINT fkd FOREIGN KEY(id) REFERENCES tab_dep_info1(id));

SQL> SELECT sd.*,st.table_name FROM SYS_DEPENDS sd JOIN SYS_TABLES st ON sd.db_id=st.db_id AND sd.obj_id1=st.table_id WHERE st.table_name='TAB_DEP_INFO1';
+-------+-----------+-----------+---------+-----------+-----------+---------+-----------+-----------+---------------+
| DB_ID | OBJ_TYPE1 | OWNER_ID1 | OBJ_ID1 | OBJ_TYPE2 | OWNER_ID2 | OBJ_ID2 | RESERVED1 | RESERVED2 |  TABLE_NAME   |
+-------+-----------+-----------+---------+-----------+-----------+---------+-----------+-----------+---------------+
| 1     | 5         | 1         | 1048577 | 5         | 1         | 1048579 | <NULL>    | <NULL>    | TAB_DEP_INFO1 |
+-------+-----------+-----------+---------+-----------+-----------+---------+-----------+-----------+---------------+
  • 视图依赖基表
sql
SQL> CREATE TABLE tab_base_view(c1 INT, c2 DOUBLE);

SQL> CREATE VIEW view1 AS SELECT c2 FROM tab_base_view;

SQL> SELECT sd.*,st.table_name FROM SYS_DEPENDS sd JOIN SYS_TABLES st ON sd.db_id=st.db_id AND sd.obj_id1=st.table_id WHERE st.table_name='tab_base_view';
+-------+-----------+-----------+---------+-----------+-----------+---------+-----------+-----------+---------------+
| DB_ID | OBJ_TYPE1 | OWNER_ID1 | OBJ_ID1 | OBJ_TYPE2 | OWNER_ID2 | OBJ_ID2 | RESERVED1 | RESERVED2 |  TABLE_NAME   |
+-------+-----------+-----------+---------+-----------+-----------+---------+-----------+-----------+---------------+
| 1     | 5         | 1         | 1048581 | 9         | 1         | 1048582 | <NULL>    | <NULL>    | TAB_BASE_VIEW |
+-------+-----------+-----------+---------+-----------+-----------+---------+-----------+-----------+---------------+
  • 表依赖存储函数
sql
SQL> CREATE FUNCTION dep_func RETURN VARCHAR AS
     BEGIN
     RETURN 'TOM';
     END;
     /

SQL> CREATE TABLE tab_dep_func(c1 VARCHAR DEFAULT dep_func);

SQL> SELECT sd.*,st.table_name FROM SYS_DEPENDS sd JOIN SYS_TABLES st ON sd.db_id=st.db_id AND sd.obj_id2=st.table_id WHERE st.table_name='tab_dep_func';
+-------+-----------+-----------+---------+-----------+-----------+---------+-----------+-----------+--------------+
| DB_ID | OBJ_TYPE1 | OWNER_ID1 | OBJ_ID1 | OBJ_TYPE2 | OWNER_ID2 | OBJ_ID2 | RESERVED1 | RESERVED2 |  TABLE_NAME  |
+-------+-----------+-----------+---------+-----------+-----------+---------+-----------+-----------+--------------+
| 1     | 7         | 1         | 1048583 | 5         | 1         | 1048584 | <NULL>    | <NULL>    | TAB_DEP_FUNC |
+-------+-----------+-----------+---------+-----------+-----------+---------+-----------+-----------+--------------+

相关系统表