我现在有差不多俩百多张表,我现在想要做的是,把所有的字段名列出来,然后同时列出其全存在与哪些表里,
如:总共有A,B,C,D.....等字段,A字段在Z,X,V,N,M.....表里存在,B字段在Q,W,E,R,T,Y......表里存在
oracle 全部数据库里所有字段存在于什么表
答案:2 悬赏:50 手机版
解决时间 2021-03-10 05:25
- 提问者网友:椧運幽默
- 2021-03-09 22:24
最佳答案
- 五星知识达人网友:有你哪都是故乡
- 2021-03-09 23:24
正好之前帮人写了个,不过列出的信息比你这个多,你运行试试吧
select a.owner 所属用户,a.table_name 表名,a.column_name 字段名,a.data_type 字段类型,a.字段长度,a.字段精度,a.是否为空,a.创建日期,a.最后修改日期,
case when a.owner=d.owner and a.table_name=d.table_name and a.column_name=d.column_name then '主键' else '' end 是否主键
from
(select a.owner,a.table_name,b.column_name,b.data_type,case when b.data_precision is null then b.data_length else data_precision end 字段长度,
data_scale 字段精度,
decode(nullable,'Y','√','N','×') 是否为空,c.created 创建日期,c.last_ddl_time 最后修改日期
from all_tables a,all_tab_columns b,all_objects c
where a.table_name=b.table_name and a.owner=b.owner
and a.owner=c.owner
and a.table_name=c.object_name
and a.owner='SCOTT'--此处用户名可以更改,但必须大写英文
and c.object_type='TABLE') a
left join
(select a.owner,a.table_name,a.column_name,a.constraint_name from user_cons_columns a, user_constraints b
where a.constraint_name = b.constraint_name and b.constraint_type = 'P') d
on a.owner=d.owner and a.table_name=d.table_name and a.column_name=d.column_name
order by a.owner,a.table_name;
select a.owner 所属用户,a.table_name 表名,a.column_name 字段名,a.data_type 字段类型,a.字段长度,a.字段精度,a.是否为空,a.创建日期,a.最后修改日期,
case when a.owner=d.owner and a.table_name=d.table_name and a.column_name=d.column_name then '主键' else '' end 是否主键
from
(select a.owner,a.table_name,b.column_name,b.data_type,case when b.data_precision is null then b.data_length else data_precision end 字段长度,
data_scale 字段精度,
decode(nullable,'Y','√','N','×') 是否为空,c.created 创建日期,c.last_ddl_time 最后修改日期
from all_tables a,all_tab_columns b,all_objects c
where a.table_name=b.table_name and a.owner=b.owner
and a.owner=c.owner
and a.table_name=c.object_name
and a.owner='SCOTT'--此处用户名可以更改,但必须大写英文
and c.object_type='TABLE') a
left join
(select a.owner,a.table_name,a.column_name,a.constraint_name from user_cons_columns a, user_constraints b
where a.constraint_name = b.constraint_name and b.constraint_type = 'P') d
on a.owner=d.owner and a.table_name=d.table_name and a.column_name=d.column_name
order by a.owner,a.table_name;
全部回答
- 1楼网友:玩家
- 2021-03-10 01:02
会,比如 说增加了字段,你
insert into table values()
这样就出错了,因为你是全字段插入。但是其实你没有values。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯