查找oracle 数据库中包含某一字段的所有表的表名

发布网友

我来回答

4个回答

懂视网

应用:已知的字段名,表中的所有数据的查询数据库中包含的所有数据表的字段名

操作方法:指定字段名,用户数据库表,它可以执行以下查询

--Oracle生成查询包括对应于所有数据表记录语句中指定的字段名

declare

mycolumnname VARCHAR(255):=‘userid‘;--定义要查询的字段名变量,执行前改动成您要查询的字段名
myownername VARCHAR(255):=‘system‘;--定义要查询的数据库username变量,执行前改动成您要查询的数据库username
mystring NVARCHAR2(4000):=‘‘; --定义要输出的字符串变量   

cursor mycursor is --定义游标          
select * from dba_tab_columns where lower(column_name)=mycolumnname and lower(owner)=myownername;
myrecord mycursor%rowtype;  --定义游标记录类型   
Counter int :=0;   
begin   
open mycursor;  --打开游标   
if mycursor%isopen  then  --推断打开成功   
loop --循环获取记录集     
fetch mycursor into myrecord; --获取游标中的记录         

if mycursor%found then  --游标的found属性推断是否有记录  

mystring:=‘select * from ‘||myrecord.table_name||‘;‘;
dbms_output.put_line(mystring);    

else            
exit;
end if;
   
end loop;   
else     
dbms_output.put_line(‘游标没有打开‘);   
end if;  
close mycursor;

end;


执行结果相似于以下的语句:
select * from DEF$_PROPAGATOR;
select * from REPCAT$_REPCATLOG;
select * from REPCAT$_REPGROUP_PRIVS;
select * from SQLPLUS_PRODUCT_PROFILE;
select * from PRODUCT_PRIVS;


版权声明:本文博主原创文章。博客,未经同意,不得转载。

Oracle生成查询包括对应于所有数据表记录语句中指定的字段名

标签:

热心网友

1、首先,打开并登陆plsql。

2、然后点击左上角的新建,选择sqlwindow。

3、此时,右边区域就会弹出一个sql窗口,我们可以在这里输入一些sql语句。

4、查询多个字段的sql语句为:

select字段1,字段2from表名。

5、然后点击左上的执行sql语句图标。

6、耐心等待,在sql窗口下方就会展示你需要查阅的表中的对应字段了。

热心网友

select table_name from DBA_TAB_COLUMNS where COLUMN_NAME='字段名';

注意:字段名需要大写,否则你查不出来

热心网友

select TABLE_NAME from user_tab_columns where column_name='字段名称'

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com