有没有办法找到所有哪些表(可能)由特定的PLSQL方法更新,而不是通过代码检查?
答案 0 :(得分:0)
不,不是真的。
ALL_DEPENDENCIES
列出了PL / SQL包静态引用的表,但这些表包括read和tebles更新的表,而且它包含整个包,而不仅仅是单个过程。未列出通过动态SQL更新的表。此外,一个过程可以调用包外的过程,并且它们可以反过来更新其他表。
答案 1 :(得分:0)
也许查询all_source表:
select * from all_source
where name = 'procedure_name'
and upper(text) like upper('%update TABLE_NAME%');
虽然不完全是你想要的,但它会在UPDATE之后显示哪些过程,函数或包包含table_name(假设它们在同一行上)。