database - 如何找出从哪里填充数据库表?

标签 database oracle triggers procedure

我负责我们没有任何文档的 Oracle 数据库。目前,我需要了解如何填充表格。

我如何找出该表从哪个过程、触发器或其他来源获取数据?

最佳答案

或者更好的是,查询 DBA_DEPENDENCIES 表(或其等效的 USER_ )。您应该看到哪些对象依赖于它们以及谁拥有它们。

select owner, name, type, referenced_owner
from dba_dependencies
where referenced_name = 'YOUR_TABLE'

是的,您需要查看对象以查看是否有 INSERT 发生。

还有这个,来 self 上面的评论。

If it is not a production system, I would suggest you to raise an user defined exception in TRIGGER- before INSERT with some custom message or LOCK the table from INSERT and watch over the applications which try inserting into them failing. But yeah, you might also get calls from many angry people.

关于database - 如何找出从哪里填充数据库表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2857990/

相关文章:

c# - CommandText 属性未正确初始化 (MySqlDataReader)

database - 如何在一个表中连接五个表?

oracle - 如何解决 SP2-0552 : Bind variable not declared?

database - 应该模拟数据库连接吗?

c# - EF 核心实体数据访问中的强制转换无效

mysql - 如何在数据库中创建动态 'types'

java - 在 Hibernate 中映射计算字段

triggers - SQLite创建触发器: What is the default if neither BEFORE nor AFTER has been specified?

sql - 基于 sysdate 的事件

MySQL Trigger 语法错误 unexpected end of input