Oracle数据库中全库查找某个值是否存在
用Oracle数据库的时候,有时不知道某个值在数据库中那张表中,就翻到了下面这个SQL,可以全库查找,很有效!Oracle的全库搜索declarev_Sqlvarchar2(2000);v_count number;beginfor xx in (select t.OWNER, t.TABLE_NAME, t.COLUMN_NAME from dba_tab_columns t where t.O
·
用Oracle数据库的时候,有时不知道某个值在数据库中那张表中,就翻到了下面这个SQL,可以全库查找,很有效!
Oracle的全库搜索
declare
v_Sql varchar2(2000);
v_count number;
begin
for xx in (select t.OWNER, t.TABLE_NAME, t.COLUMN_NAME from dba_tab_columns t where t.OWNER = '数据库的属主名') loop
begin
v_Sql := 'select count(1) from ' || xx.owner || '.' || xx.table_name ||' where ' || xx.column_name || ' like ''%要查找的值,支持模糊查询%'' ';
execute immediate v_Sql
into v_count;
if (v_count >= 1) then
dbms_output.put_line(xx.table_name || ':' || xx.column_name);
end if;
exception
when others then
null;
end;
end loop;
end;
S_CACHE
: 表名
CVALUE
: 列名
更多推荐
已为社区贡献1条内容
所有评论(0)