我们如何知道我的oracle表中的列是由另一个表的触发器填充/更新? [英] How can we figure out that a column in my oracle table is being populated/updated by a trigger of another table?
问题描述
表A具有触发器Ta加入这个项目,因此我完全不知道触发器],它更新了表B中名为colB的列。
主要使用表B和关注colB的方式,我不知道触发器Ta是否正在更新此列。
是,有没有直接的oracle查询/方式来查找一个表中的列是否正在由另一个表上运行的任何触发器更新?
感谢提前教育我
<$ p $
p>
SELECT *
FROM
user_sources
WHERE
type ='TRIGGER'
AND UPPER(text)LIKE'%UPDATE A% ;
但是如果查询在两行中,它将不起作用:
UPDATE
pre>
A
SET
...
因为
text
匹配对应对象中的给定行。Consider a scenario, where there are two tables "A" and "B".
Table "A" has a trigger "Ta" [written long before me joining this project and thus I'm completely unaware of the trigger], which updates a column named "colB" in table "B".
Now, since I'm mostly using table "B" and concerned about the way "colB" is getting, I won't know if trigger "Ta" is updating this column.
So my question is, is there a direct oracle query/way to find if a column in one table is getting updated by any trigger running on another table?
Thanks in advance for educating me on this.
Regards a.b
解决方案SELECT * FROM user_sources WHERE type = 'TRIGGER' AND UPPER(text) LIKE '%UPDATE A%';
But it won't work if the query is in two lines such as :
UPDATE A SET ...
because
text
matches to a given line in the corresponding object.这篇关于我们如何知道我的oracle表中的列是由另一个表的触发器填充/更新?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!