黑马程序员技术交流社区
标题: oracle根据输入内容查询(模糊查询)所有涉及的表及其字段 [打印本页]
作者: fanxin_meng 时间: 2015-6-18 21:00
标题: oracle根据输入内容查询(模糊查询)所有涉及的表及其字段
--------------------------------------------------------------------------------
根据需求创建Oracle存储过程
--创建带输入参数的存储过程
create or replaceprocedure PROC1(param in VARCHAR2) is
--定义变量
v_SQL VARCHAR2(200);
vv VARCHAR2(10);
v_value VARCHAR2(20);
-- 创建游标,系统表user_tab_columns
CURSOR cur_TabInfo IS selectTABLE_NAME,COLUMN_NAME from user_tab_columns;
begin
--遍历系统表user_tab_columns
FOR rec1 IN cur_TabInfo LOOP
--初始化变量
v_SQL:='';
vv:=0;
v_value:=''||param||'';
--定义v_SQL语句
v_SQL:='SELECT count(*) FROM'||rec1.table_name||' WHERE '||rec1.column_name||' like '||v_value;
--执行v_SQL语句
execute immediate v_SQL into vv;
--判断-输出符合要求的表和对应字段
IF vv > 0 Then
DBMS_OUTPUT.put_line(rec1.table_name||''||rec1.column_name);
end if;
end loop;
end PROC1;
--------------------------------------------------------------------------------
执行
--------------------------------------------------------------------------------
-
1.png
(14.67 KB, 下载次数: 16)
输入
-
2.png
(14.31 KB, 下载次数: 12)
输出
作者: a1224577182 时间: 2015-6-18 21:10
看一下,感谢分享!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |