这可能是一个微不足道的问题。但是,由于我正在处理很久以前由其他人创建的数据库,没有包含适当的文档或注释,所以我遇到了一个关键问题,我需要知道数据如何插入到某个表中?有没有脚本或者其他方法可以识别数据源。换句话说,我需要知道数据是否是通过某些过程、函数、手动...等插入的。我无法搜索所有过程或函数,它们有数百个。我正在使用 SQL Developer,它是 oracle 11g DB。
不,没有这样的脚本可以让您确定表的数据来源。我能想到的最好的办法是您可以过滤引用您的表的所有存储过程
SELECT *
FROM dba_dependencies
WHERE referenced_owner = 'SCOTT'
AND referenced_name = 'YOUR_TABLE_NAME'
AND referenced_type = 'TABLE'
或者你可以使用这个脚本
SELECT *
FROM dba_source
WHERE UPPER(text) LIKE '%YOUR_TABLE_NAME%';
这将过滤掉引用您的表的所有存储的过程/触发器/其他数据库代码,然后您必须检查您的表的代码insert
语句被使用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)