如何用PL/SQL查询我的oarcle数据库里有多少个表,每个表都叫什么名

我新接手了一个oracle数据库,对整个库的结构不熟,想要查询一下库里有多少个表,每个表都叫什么名,每个表的列名... 我新接手了一个oracle数据库,对整个库的结构不熟,想要查询一下库里有多少个表,每个表都叫什么名,每个表的列名 展开
 我来答
百度网友c5f275c
2008-09-23 · TA获得超过1842个赞
知道小有建树答主
回答量:646
采纳率:50%
帮助的人:809万
展开全部
首先你要有一个登陆用户,根据这个用户有3个查看表信息数据字典,分别是
ALL_TABLES USER_TABLES DBA_TABLES
如果你的用户有DBA权限,那么可以
SELECT * FROM DBA_TABLES那么可以查看数据库所有的表,不过最好带上WHERE条件,指定要查找的范围,要不结果很大的。

ALL_TABLES的话,SELECT * FROM ALL_TABLES查找的是用户下的所有表和授权该用户访问的所有表。

USER_TABLES的话,SELECT * FROM USER_TABLES查找的是用户下的所有表。

你可以用
SELECT * FROM USER_TABLES
然后对查到的表名,比如EMP,用
DESC EMP
查看表结构
然后可以用
SELECT * FROM EMP WHERE rownum < 10;
查看里面的10条信息,看下大概内容;

当然还有别的COL的数据字典,OBJECT数据字典等等,或者你进企业资源管理器进可视化界面可以直接看用户下的所有对象了。
东桖柳83
2008-09-22 · TA获得超过599个赞
知道小有建树答主
回答量:603
采纳率:0%
帮助的人:375万
展开全部
select object_name from user_objects where lower(object_type)='table';这是查表名
对于每个表的列只能用desc table_name;了,一个表一个表的查,
这可以查出当前用户下的表,也就是说你想要知道所有的表,就得用各个用户去连接,然后查它名下有多少张表,然后查这些表的结构.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wastelandxf
2008-09-23 · TA获得超过281个赞
知道小有建树答主
回答量:400
采纳率:25%
帮助的人:242万
展开全部
直观一点,用可视化的东西,不知道你是否安装了pl/sql这个工具,如果没有,建议安装一个,非常好用。在pl/sql的左边菜单找到tables,下面就是一系列的表名,对某个表名 点击右键-->点击查看 就可以看到表的各种信息了。
另外你也可以用oracle的oracle enterprise manager console工具用sys或system用户登录,就能查看不同用户下的表以及表结构的信息
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jxae2611555
2008-09-22
知道答主
回答量:55
采纳率:0%
帮助的人:22.1万
展开全部
select * from user_table;

over~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式