select table_name from all_tables; //所有用户的表
select table_name from dba_tables; //包括系统表
select table_name from dba_tables where owner='用户名'select from user_tables --查询当前用户所拥有的表
select from all_tables --查询当前用户能访问的表
select from dba_tables --拥有DBA权限用户能查询所有的表觉得你应该先弄清楚oracle的常规数据字典的结构,像9i里的常规数据字典中对象名称就有以USER,ALL,DBA为前缀的对象。
以USER为例,我们查该对象下有些什么表,就应该执行下列的语句:
SQL>select table_name from user_tables;
类似的,你可以进行替换。:)
如果你想查数据库中所有的表的话,可以查询
SELECT FROM dba_tables
如果你想查询数据库中某个用户下的表的话,也可以登录这个用户,再查询:
SELECT FROM USER_TABLES
要想导入外部sql语句可以用命令
sql >@e:\文件名sql
如你想保存 select from tablename;语句的结果,可以在sqlplus 里面这样:
SPOOL c:\testsql //这是保存文件的位置
select from tablename;
SPOOL OFF1、查找表的所有索引(包括索引名,类型,构成列):
select
t,iindex_type
from
user_ind_columns
t,user_indexes
i
where
tindex_name
=
iindex_name
and
ttable_name
=
itable_name
and
ttable_name
=
要查询的表
2、查找表的主键(包括名称,构成列):
select
cu
from
user_cons_columns
cu,
user_constraints
au
where
cuconstraint_name
=
auconstraint_name
and
auconstraint_type
=
'P'
and
autable_name
=
要查询的表
3、查找表的唯一性约束(包括名称,构成列):
select
column_name
from
user_cons_columns
cu,
user_constraints
au
where
cuconstraint_name
=
auconstraint_name
and
auconstraint_type
=
'U'
and
autable_name
=
要查询的表
4、查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询):
select
from
user_constraints
c
where
cconstraint_type
=
'R'
and
ctable_name
=
要查询的表
查询外键约束的列名:
select
from
user_cons_columns
cl
where
clconstraint_name
=
外键名称
查询引用表的键的列名:
select
from
user_cons_columns
cl
where
clconstraint_name
=
外键引用表的键名
5、查询表的所有列及其属性
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)