❶ oracle中怎么用sql查表以及表的字段名
1、用sql查表
查表的时候需要用到user_tables、all_tables,user_tables查出来的是该用户拥有的表,all_tables查出来的是所有用户的表。
2、用sql查表的字段
查表的字段需要用到user_tab_columns、all_tab_columns,一样的前者只能查到该用户拥有的表,后者可以查询所有用户的表。
3、其他
与上面类似的还有查询对象(user_objects、all_objects)、索引(user_indexes、all_indexes)、约束(user_constraints、all_constraints)等。
至于到底怎么查,先用select * from XXX查看表的信息,然后看下就知道了。比如查一个system表dba_data_files的字段,可以用select * from all_tab_columns where table_name = 'DBA_DATA_FILES',注意表名大写。
2014-11-04补充:
下列列出一些比较重要的数据字典:
DBA_TABLES:描述数据库中所有相关的表。
DBA_ALL_TABLES:描述数据库中所有的对象以及相关的表。
USER_TABLES:描述数据库中当前用户拥有的相关的表。
USER_ALL_TABLES:描述数据库中当前用户拥有的对象以及相关的表。
ALL_TABLES:描述数据库中所有的用户可以访问的相关的表。
ALL_ALL_TABLES:描述数据库中所有的用户可以访问的对象以及相关的表。
DBA_TAB_COLUMNS:描述数据库中所有表的列属性。
USER_TAB_COLUMNS:描述数据库中当前用户拥有的表的列属性。
ALL_TAB_COLUMNS:描述数据库中所有用户可以访问的表的列属性。
DBA_CONSTRAINTS:描述数据库中所有表的约束和属性。
DBA_CONS_COLUMNS:包含在DBA_CONSTRAINTS约束定义中的可访问的列的信息。
ALL_CONSTRAINTS:描述数据库中所有用户可以访问的表的约束和属性。
ALL_CONS_COLUMNS:包含在ALL_CONSTRAINTS约束定义的可访问的列的信息。
USER_CONSTRAINTS:描述数据库中所有当前用户拥有的表的约束的属性。
USER_CONS_COLUMNS:包含在USER_CONSTRAINTS约束定义的可访问的列的信息。
DBA_SEQUENCES:数据库中所有序列的描述。
ALL_SEQUENCES:描述数据库中所有用户可以访问的序列的描述。
USER_SEQUENCES:描述数据库中所有当前用户拥有的序列的描述。
DBA_INDEXES:描述数据库中所有的索引的属性。
ALL_INDEXES:描述数据库中所有用户可以访问的索引的属性。
USER_INDEXES:描述数据库中所有当前用户拥有的索引的属性。
❷ oracle 怎样查询某用户下的所有表的表名
1、首先在计算机中,打开Oracle的连接程序,用新建的数据库管理员,进入【Oracle控制】的窗口上,鼠标左键单击【服务器】按钮,并选择【SQL工作表】。
❸ 如何用sql在oracle环境下查看一个表空间中的所有表的表名
example:
tablespace : USERS
SQL>select table_name from dba_tables where tablespace_name='USERS';
前提是你要有DBA权限
❹ oracle 怎样查询某用户下的所有表的表名
解决方法:
1、dba_tables(在dba权限下可查) SQL> conn / as sysdba Connected.
SQL> select count(*) from dba_tables where owner='TEST';
COUNT(*)
52
注:表名以及各详细内容可以通过desc dba_tables查看相应字段,在查询相应内容。
2、all_tables(在dba权限下轮并可查) SQL> conn / as sysdba Connected.
SQL> select count(*) from all_tables where owner='TEST';
COUNT(*)
52
SQL>
注:表名以及各详细内容可以通过desc all_tables查看相应字段,在查询相应指启内容。
3、user_tables(当前用户下可查) SQL> conn test/test Connected.
SQL> select count(*) from user_tables;
COUNT(*)
52
SQL> conn matchhr/matchhr Connected.
SQL> select count(*) from user_tables;
COUNT(*)
28
SQL>
注:表唯桐如名以及各详细内容可以通过desc user_tables查看相应字段,在查询相应内容。
❺ oracle里查出某个数据库里的所有表名
方法和详细的操作步骤如下:
1、第一步,
MySQL数据库使用特定字段查询所有表名,代码见下图,转到下面的步骤。
❻ 请问oracle数据库中 怎么查询假设A用户下的所有表表名及表中的索引名称及索引字段呢
查询所有表名(以用户HR为例):
1·登录所要查询的用户然后指岩配卖令:select table_name from user_tables ;
2·登录系统管理员用户然后指令:select table_name from dba_tables where owner='HR';
查询所有索引(以用户hr为例):
登录所要查询粗逗的用户然后指令:select user_indexes.index_name,user_indexes.index_type,user_indexes.table_owner from user_indexes ;
- ·登录系统管理员用户然后指卖渣令:SELECT index_name ,index_type ,owner FROM dba_indexes WHERE owner='HR' AND Table_owner='EMPLOYEES';
❼ oracle SQL语句表记录中有表名的表查询
不是,需要写存储过程,用execute immediat才能执哗悉行动态的sql.
必须存储过辩链程才能搞定哦.
首先定义一个变量接受 比如xm (班主任姓名).
然后select BZRXM into xm from from XSXX where XN='001';
然后定义一个字符串, sql ,
sql指的是'select * from '||xm
然后执行execute immediat(sql)才能实现你想要的.
具体存储过程怎么整,这里只是一个思路,具携芦孙体写法俺得去看语法,不会
❽ 如何用sql语句,查询所有表的名字(Oracle)
使用dba_tables,all_tables等都可以,如查找USERS表空间下的所有表:
select
owner,table_name,tablespace_name
from
all_tables
where
tablespace_name='USERS'
❾ oracle 怎样查询某用户下的所有表的表名
select * from all_tab_comments -- 查询所有用户的表,视图等。
select * from user_tab_comments -- 查询本用户的表,视图等。
select * from all_col_comments --查询所有用户的表的列名和注释。
select * from user_col_comments -- 查询本用户的表的列名和注释。
select * from all_tab_columns --查询所有用户的表的列名等信息。
select * from user_tab_columns --查询本用户的表的列名等信碰灶息。
(9)oraclesql查询表名扩展阅读
ORACLE下有三个视图笑衫扮
DBA_TABLES 拥有DBA角色的用户可以查看系统中的所有表
USER_TABLES 登录塌侍数据库的当前用户拥有的所有表
ALL_TABLES 登录数据库的当前用户有权限查看的所有表