sql – 我们如何判断我的oracle表中的列是否被另一个表的触发器填充/更新?

前端之家收集整理的这篇文章主要介绍了sql – 我们如何判断我的oracle表中的列是否被另一个表的触发器填充/更新?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
考虑一个场景,其中有两个表“A”和“B”.

表“A”有一个触发器“Ta”[在我加入这个项目之前就写好了,因此我完全没有意识到触发器],它更新了表“B”中名为“colB”的列.

现在,由于我主要使用表“B”并且关注“colB”的方式,我不知道触发器“Ta”是否正在更新此列.

所以我的问题是,有没有直接的oracle查询/方法来查找一个表中的列是否被另一个表上运行的任何触发器更新?

在此先感谢您对此进行教育.

问候
A·B

解决方法

SELECT *
FROM 
    user_sources
WHERE
    type = 'TRIGGER'
AND UPPER(text) LIKE '%UPDATE A%';

但如果查询分为两行,它将无法工作,例如:

UPDATE
    A
SET
   ...

因为文本匹配相应对象中的给定行.

猜你在找的MsSQL相关文章