Oracle数据库中,知道一个值,如何查询它所在的表,是哪个字段

Oracle数据库中,知道一个值,如何查询它所在的表,是哪个字段,第1张

--oracle无穷解查询数据库中的所有数据

--TEST0418为表属于的用户(不知道哪个用户,可以用语句查已知表名,

--表所属的用户--可百度)

--1001E71000000002RWGW :为所查询的内容,也可改为模糊查询

DECLARE

V_SQL VARCHAR2(2000);

V_COUNT NUMBER;

BEGIN

FOR XX IN (SELECT TABLE_NAME,COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE OWNER='TEST0418' ) LOOP --WHERE OWNER='TEST0418'

BEGIN

V_SQL:= 'SELECT COUNT(1) FROM TEST0418'||XXTABLE_NAME ||' WHERE '||XXCOLUMN_NAME||' = ''1001E71000000002RWGW'' '; /LIKE ''%123%'' ';/

EXECUTE IMMEDIATE V_SQL INTO V_COUNT;

IF(V_COUNT>=1) THEN

DBMS_OUTPUTPUT_LINE('SELECT TEST0418'||XXCOLUMN_NAME ||' FROM '||XXTABLE_NAME ||' WHERE '||XXCOLUMN_NAME||' = ''1001E71000000002RWGW'' '); /LIKE ''%123%'' ');/

END IF;

EXCEPTION

WHEN OTHERS THEN NULL;

END;

END LOOP;

END;

select from user_tables; --查看现在用户下的表

select from all_tables ; --查看所有表 需要有权限

注意就是要有权限

如何使用plsql查询oracle数据库中的某张表

select

from

用户名表名

where

id=1

当然如果查询的是你所在的用户下的表就可以省略用户名,如果要查询的不是你所在用户下的表,首先要确认你有该用户下查询该表的权限,如果没有,请向管理员联系了。

-- 查询你 当前用户下,有哪些表

SELECT FROM user_tables

-- 查询你 当前用户下, 可以访问哪些表 [也就是访问自己 和 其他用户的]

SELECT FROM all_tables

-- 查询当前数据库所有的表, 需要你有 DBA 的权限

SELECT FROM dba_tables

给你个sql,获取全部表名和表的全部字段信息

select atable_name,

acolumn_name,

adata_type, -- number 针对Varchar2

achar_length, -- 指示varchar2的长度

adata_precision, -- 指示number的长度

adata_scale, -- 指示number小数的长度

bcomments, -- 字段注释

anullable isnullable, -- 是否允许Null

'' column_default, -- 字段默认值

decode(ccolumn_name, null, 0, 1) as iskey -- 是否主键

from user_tab_cols a

left join user_col_comments b on atable_name = btable_name

and acolumn_name = bcolumn_name

left join (SELECT atable_name, acolumn_name, aowner

FROM all_cons_columns a, all_constraints b

WHERE aowner = bowner

AND aconstraint_name = bconstraint_name

AND atable_name = btable_name

AND bconstraint_type = 'P') c on atable_name =

ctable_name

and acolumn_name =

ccolumn_name

where atable_name = '你要查的表名' order by acolumn_id

可通过查询all_tables这个系统表来查看数据库中的所有表。

执行语句:

select table_name from all_tables;

查询结果:

select from user_tables --查询当前用户所拥有的表

select from all_tables --查询当前用户能访问的表

select from dba_tables --拥有DBA权限用户能查询所有的表

以上就是关于Oracle数据库中,知道一个值,如何查询它所在的表,是哪个字段全部的内容,包括:Oracle数据库中,知道一个值,如何查询它所在的表,是哪个字段、在oracle数据库后台怎么查看存在什么表还有 *** 作时候有什么注意事项、如何使用plsql查询oracle数据库中的某张表等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10184896.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存