Oracle 怎么查询其他用户表中是否包含某个字段
Oracle如何查询其他用户表中是否有包含某个字段名,注意是其他用户中的所有表,而非当前用户。目前登录的用户是有权限浏览和修改其他用户表。如下图所示,我知道怎么查最上面的...
Oracle如何查询其他用户表中是否有包含某个字段名,注意是其他用户中的所有表,而非当前用户。目前登录的用户是有权限浏览和修改其他用户表。如下图所示,我知道怎么查最上面的表,但是想查最下面其他用户中的表是否包含某个字段不会,请各位帮帮忙.
展开
3个回答
展开全部
其实还是 司马铸剑 说的那张表,只不过要把 user_tab_columns 改为all_tab_columns(如果没有这张表,我很少用all的表,经常用dba系列表,所以有没有all的这张表我不确定,但是dba_tab_columns一定存在)这样就可以找到该用户能查看的所有的表了。也就能知道包含该字段的所有的表的表名了。
如果只要其他用户的不要自己用户的,那么就和all_tables两张表联合起来查询,那么就应该没问题了。
类似于:select a.table_name from all_tab_columns a,all_tables b where a.column_name='DNAME' and a.table_name=b.table_name and b.owner !=XXX
不一定完全对,仅仅是一个思路,毕竟这种试图很久没查了,可能有些出入。
如果只要其他用户的不要自己用户的,那么就和all_tables两张表联合起来查询,那么就应该没问题了。
类似于:select a.table_name from all_tab_columns a,all_tables b where a.column_name='DNAME' and a.table_name=b.table_name and b.owner !=XXX
不一定完全对,仅仅是一个思路,毕竟这种试图很久没查了,可能有些出入。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
all_ 开头的视图可以查到你拥有权限的所有对象
比如all_tables , all_objects就能看到,里面有owner字段 , 对应的user_tables是只显示本用户自己的对象
比如all_tables , all_objects就能看到,里面有owner字段 , 对应的user_tables是只显示本用户自己的对象
追问
比如要找所有User=DWH的用户的表我知道select * from All_tables where owner='DWH',但是要找DWH下所有表中的字段是否有包含ID的字段还是搞不定。麻烦帮忙指点一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |