oracle如何查询表 oracle如何查询表分区

如何查看oracle数据库中的所有表

觉得你应该先弄清楚oracle的常规数据字典的结构,像9i里的常规数据字典中对象名称就有以USER,ALL,DBA为前缀的对象。

成都创新互联公司是一家专业从事网站设计制作、做网站的网络公司。作为专业网站制作公司,成都创新互联公司依托的技术实力、以及多年的网站运营经验,为您提供专业的成都网站建设、营销型网站及网站设计开发服务!

以USER为例,我们查该对象下有些什么表,就应该执行下列的语句:

SQLselect table_name from user_tables;

类似的,你可以进行替换。:)

如果你想查数据库中所有的表的话,可以查询

SELECT * FROM dba_tables

如果你想查询数据库中某个用户下的表的话,也可以登录这个用户,再查询:

SELECT * FROM USER_TABLES

要想导入外部sql语句可以用命令

sql @e:\文件名.sql

如你想保存 select * from tablename;语句的结果,可以在sql*plus 里面这样:

SPOOL c:\test.sql //这是保存文件的位置

select * from tablename;

SPOOL OFF

Oracle数据库中如何查询一个用户A下面所有的表的信息

1、打开pl/sql客户端,登录oracle数据库;

2、编写sql,select * from user_tables t where table_name like 'TEST%' order by 1;即可查看该用户下所有的表;

3、编写sql,select * from all_tables t;即可查看该库下所有用户所有的表;

4、编写sql;select * from user_tab_cols t where table_name like 'TEST%' order by 1, column_id;即可查看该用户下所有表的字段信息;

oracle怎么查询所有的表?有没有主键?

1、查找表的所有索引(包括索引名,类型,构成列):\x0d\x0a\x0d\x0aselectt.*,i.index_typefromuser_ind_columnst,user_indexesiwheret.index_name=i.index_nameandt.table_name=i.table_nameandt.table_name=要查询的表\x0d\x0a\x0d\x0a2、查找表的主键(包括名称,构成列):\x0d\x0a\x0d\x0aselectcu.*fromuser_cons_columnscu,user_constraintsauwherecu.constraint_name=au.constraint_nameandau.constraint_type='P'andau.table_name=要查询的表\x0d\x0a\x0d\x0a3、查找表的唯一性约束(包括名称,构成列):\x0d\x0a\x0d\x0aselectcolumn_namefromuser_cons_columnscu,user_constraintsauwherecu.constraint_name=au.constraint_nameandau.constraint_type='U'andau.table_name=要查询的表\x0d\x0a\x0d\x0a4、查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询):\x0d\x0a\x0d\x0aselect*fromuser_constraintscwherec.constraint_type='R'andc.table_name=要查询的表\x0d\x0a\x0d\x0a查询外键约束的列名:\x0d\x0a\x0d\x0aselect*fromuser_cons_columnsclwherecl.constraint_name=外键名称\x0d\x0a\x0d\x0a查询引用表的键的列名:\x0d\x0a\x0d\x0aselect*fromuser_cons_columnsclwherecl.constraint_name=外键引用表的键名\x0d\x0a\x0d\x0a5、查询表的所有列及其属性\x0d\x0a\x0d\x0aselectt.*,c.COMMENTSfromuser_tab_columnst,user_col_commentscwheret.table_name=c.table_nameandt.column_name=c.column_nameandt.table_name=要查询的表\x0d\x0a\x0d\x0a6、Oracle中每个用户表的表名和行数\x0d\x0aselecttable_name,num_rowsfromuser_tables;\x0d\x0a\x0d\x0a7、Oracle查询用户表空间:select*fromuser_all_tables\x0d\x0a\x0d\x0a8、Oracle查询所有函数和储存过程:select*fromuser_source\x0d\x0a\x0d\x0a9、Oracle查询所有用户:\x0d\x0aselect*fromall_users;\x0d\x0aselect*fromdba_users\x0d\x0a\x0d\x0a10、Oracle查看当前用户连接:select*fromv$Session\x0d\x0a\x0d\x0a11、Oracle查看当前用户权限:select*fromsession_privs\x0d\x0a\x0d\x0a12、Oracle查看用户表空间使用情况:\x0d\x0a\x0d\x0aselecta.file_id"FileNo",a.tablespace_name\x0d\x0a\x0d\x0a"Tablespace_name",\x0d\x0a\x0d\x0aa.bytes"Bytes",a.bytes-sum(nvl(b.bytes,0))"Used",\x0d\x0a\x0d\x0asum(nvl(b.bytes,0))"Free",\x0d\x0a\x0d\x0asum(nvl(b.bytes,0))/a.bytes*100"%free"\x0d\x0a\x0d\x0afromdba_data_filesa,dba_free_spaceb\x0d\x0a\x0d\x0awherea.file_id=b.file_id(+)\x0d\x0a\x0d\x0agroupbya.tablespace_name,\x0d\x0a\x0d\x0aa.file_id,a.bytesorderbya.tablespace_name;

oracle怎样查询两个表格中的全部数据

1、首先在使用的电脑上,添加想要查询数据库的服务和监听,通过Oracle客户端管理工具中的Net Manager来完成。

2、创建两个数据库的连接---DBLink,可以通过指令完成,也可以通过图形界面完成。

3、在Oracle管理工具中开启一个新的SQL windows窗口,测试操作我们连接的异地Oracle数据库。

4、编写一个查询语句来测试,这里做一个select操作。

5、最后运行,如下图可以看到查询结果。

在oracle数据库中如果查询一个数据库中有哪几张表?

1、本文以plsql图形化管理工具为例,使用它连接oracle数据库。当点开plsql的时候,就需要输入用户名、密码、数据库然后连接。如果连接成功,就能查看里面的表等等操作,如果连接不成功,就输入正确的信息再次尝试。

2、连接上数据库之后,默认会看到这个主界面。顶部是各种操作菜单,左侧第一个框是最近打开的一些信息,第二个框里面的才是数据库的所有信息。

3、如果不想看到这么多的框,只想专注于数据库的相关信息,就可以将其他框关闭或者隐藏,这两种方式只是点击不同的按钮而已,具体参见截图。

4、在oracle数据库中,用户是属于表空间的,因此,当使用某一个用户登录之后,看到的其实就是这个用户默认的表空间中的信息。这个时候,可以展开【Tables】菜单,就能看到当前表空间下的所有表,如果表的数量不多,就可以直接一个一个的数出数量。

5、如果当前用户具有管理员权限,还可以在【Tablespaces】菜单下面,找到所有的表空间名称,在每个表空间名称下面还有【Tables】菜单,这里面会显示这个表空间下面的所有用户和表。

注意,对于同一个表空间下的相同数据库,在这里会显示每个用户都拥有一套表结构

6、如果想直接获得表空间中的表数量,可以点击左上角的新建图标,选择【SQLWindow】,右侧就会出现一个空白的SQL语句书写窗口

7、获取指定表空间下表数量(这是包含了此表空间下的所有用户的表)

selectcount(1)fromall_tableswheretablespace_name='表空间名称';获取指定表空间下,指定用户的表数量。

selectcount(1)fromall_tableswheretablespace_name='表空间名称'andowner='用户名称';如果将count(1)换成星号,就可以查询表空间下的所有表名信息等。

Oracle怎么查看表的大小?

每张表都是作为“段”来存储的,可以通过user_segments视图查看其相应信息。\x0d\x0a段(segments)的定义:如果创建一个堆组织表,则该表就是一个段。\x0d\x0asql:SELECT segment_name AS TABLENAME,BYTES FROM user_segments WHERE segment_name='表名'。\x0d\x0a解释:\x0d\x0asegment_name 就是要查询的表名(大写),BYTES 为表存储所占用的字节数。本sql的意思就是查询出表名和表所占的存储空间大小。


当前文章:oracle如何查询表 oracle如何查询表分区
本文路径:http://cdiso.cn/article/hgjjji.html

其他资讯