Oracle中有关字段信息储存

来源:互联网 发布:跑团软件 编辑:程序博客网 时间:2024/05/04 19:00
         今天接到一个任务需要统计数据库表中的行长,以前也没怎么弄过Oracle,只知道Oracle会把一些数据结构的信息储存 到系统表中,所以就开始从系统表中寻找吧。
         首先从ALL_OBJECTS下手,既然跟字段有关系,那么就先找找名称带有COLUMN的对象吧。
select * from all_objects where Object_name like '%COLUMN%' AND OBJECT_TYPE='VIEW';
         看里面的对象,感觉USER_TAB_COLUMNS这个试图有点象,看了看,过着就是我要找的那张表,不过里面没有owner信息,不要紧,关联一下就OK了
select a.TABLE_NAME,sum(DATA_LENGTH) AS ROWLENGTH from USER_TAB_COLUMNS a,
all_objects b  
where b.owner='YYGL' and b.Object_type='TABLE' and b.object_name = a.TABLE_NAME
GROUP BY A.TABLE_NAME  order by a.TABLE_NAME;

这样就可以轻易的统计出表的行长了。

本人对Oracle了解还不多,不知道有没有什么更简单的方法。