oracle查询所有表和所有数据的方法可能许多刚刚接触oracle数据库的新人都不太了解,下面就为您详细介绍oracle查询所有表的方法,供您参考。
为容县等地区用户提供了全套网页设计制作服务,及容县网站建设行业解决方案。主营业务为成都网站制作、成都网站建设、容县网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
- SELECT t.data_type
- FROM user_tab_columns t
- GROUP BY t.data_type;
- -- Created on 2010-8-26 by RONGZHI_LI
- DECLARE
- CURSOR ot(namelike IN VARCHAR2)
- IS
- (SELECT owner AS uname,
- object_name AS tname
- FROM all_objects
- WHERE object_type='TABLE'
- AND owner LIKE namelike
- );
- CURSOR tc( username IN all_tab_columns.owner%TYPE, tablename IN all_tab_columns.table_name%type)
- IS
- (SELECT t.OWNER AS uname,
- t.table_name AS tab,
- t.column_name AS col,
- t.data_type data
- FROM all_tab_columns t
- WHERE t.owner = username
- AND t.table_name = tablename
- );
- sqlstr VARCHAR2(200);
- findsqlstr VARCHAR2(200);
- foundcount NUMBER;
- data_type VARCHAR2(100):='';
- logic_symbol VARCHAR2(10) :='=';
- data_value VARCHAR2(100);
- --自行设定
- name_like VARCHAR2(100):='%HS_%';
- find_type VARCHAR2(100):='varchar2';--'varchar2';number
- find_value VARCHAR2(100):='工行';
- use_like BOOLEAN :=true;
- BEGIN
- data_type := upper(find_type);
- data_value :=find_value;--先给默认值
--1.判断类型,是否为字符串
- IF data_type = 'VARCHAR2' THEN -- 对于字符串特别判定
- data_value := ''''||find_value||'''';--注意:pl/sql显示' '为''
- END IF;
--2.判断是否使用like 这个应该跟varchar2类型配合
- IF use_like THEN
- logic_symbol:=' like ';
- data_value := '''%'||find_value||'%''';--注意:pl/sql显示' '为''
- END IF;
- --
- FOR aot IN ot(name_like)
- LOOP
- FOR atc IN tc(aot.uname,aot.tname)
- LOOP
- foundcount :=0;
- IF atc.DATA = data_type THEN
- sqlstr := 'select count(*) from '|| atc.uname ||'.' || atc.tab || ' where ' || atc.col
- || logic_symbol || data_value;
- --dbms_output.put_line(sqlstr);--debug用
- EXECUTE immediate sqlstr INTO foundcount;
- IF foundcount > 0 THEN
- findsqlstr := 'select * from ' || atc.uname ||'.' || atc.tab || ' where ' || atc.col ||
- logic_symbol || data_value||';--'||foundcount;
- dbms_output.put_line(findsqlstr);
- END IF;
- END IF;
- END LOOP;
- END LOOP;
- dbms_output.put_line('查找结束');
- END;
以上就是oracle查询所有表的方法介绍。
网站栏目:oracle查询所有表的方法
标题网址:http://www.csdahua.cn/qtweb/news40/145140.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网