创建oracle视图,显示库中所有表信息

我的orcl里有一些表,我想创建个视图用来查询所有表及表中字段的信息,不知道怎么创建视图?求帮助,谢谢。 视图显示列如下:
在线等答案。系统原来的SQLServer数据库的视图是这样写的(好复杂,看不懂):

create view v_table_des
as
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个回答  2013-08-08
CREATE VIEW AS
SELECT  * FROM  TABLE1
UNION
SELECT  * FROM  TABLE2
UNION
SELECT  * FROM  TABLE3
UNION
SELECT  * FROM  TABLE4
ORDER BY TABLE1.编号;

 

假设你有4张表!希望可以帮助你.

 

 

你贴上来的SQL不能用么。还是你看不懂。我看了下,感觉没错误啊。

追问

那是SQLServer的 我要创建oracle的啊,就是将上面SQLServer的转换成oracle的创建语句。(SQLServer的我也看不懂)

追答

你把第一句Create view 后面的改一个随便的名字,在放在ORACLE的工具里执行看看,应该就好用了,我看你语句里没有与oracle冲突的语句。

其实各种数据库SQL语句都是共通的,只不过有些数据库中个别的SQL关键字有出入而已。

相似回答