正文
oracle怎么查找主表,oracle查看某个表的索引
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
Oracle如何查询一个用户所创建的表 以及 如何查询一张表的主人
已知用户名 我如何知道该用户都有什么表有两种方式查看:
1、 dba身份:select table_name from dba_tables where owner='用户名';
2、用户本身身份:select * from user_tables;
已知表名 如何知道表的创建者
dba身份:select owner from dba_tables where table_name='表名';
可否将表转移到另一用户名下
回答:可以的,可以采用:
exp+imp expdp+impdp 或者CTAS 或者sqlplus的copy 或者传输表空间等等,方法太多了
Oracle中怎样查看所有的表,列,属性,主键等信息
在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 : select table_name from user_tables; // 当前用户的表 select table_name from all_tables; // 所有用户的表 select table_name from dba_tables; //包括系统表 可以查询出所有的用户表索引 select * from user_indexes // 查所有用户的表在all_tables 主键名称、外键在all_constraints 索引在all_indexes 但主键也会成为索引,所以主键也会在all_indexes里面。 具体需要的字段可以DESC下这几个view,dba登陆的话可以把all换成dba 1、查找表的所有索引(包括索引名,类型,构成列): select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查询的表 2、查找表的主键(包括名称,构成列): select cu.* from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'P' and au.table_name = 要查询的表 3、查找表的唯一性约束(包括名称,构成列): select column_name from user_cons_columns cu, user_constraints au where cu.constraint_name = au.constraint_name and au.constraint_type = 'U' and au.table_name = 要查询的表 4、查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询): select * from user_constraints c where c.constraint_type = 'R' and c.table_name = 要查询的表查询外键约束的列名: select * from user_cons_columns cl where cl.constraint_name = 外键名称查询引用表的键的列名: select * from user_cons_columns cl where cl.constraint_name = 外键引用表的键名 5、查询表的所有列及其属性 where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = 要查询的表
oracle查询主表有哪些子表?
查看一个表对应的主键和外键的约束关系:
SELECT * FROM user_constraints t where t.table_name='HORDE'
查看关联HORDE的子表 :
select * from user_constraints where
R_CONSTRAINT_NAME in (select constraint_name from user_constraints where table_name = 'HORDE') ;
--在多行子查询中使用all操作符
select ename, sal, deptno from emp
where sal all(select sal from emp where deptno = 30);
--等价于:
select ename, sal, deptno from emp where sal
(select max(sal) from emp where deptno = 30);
--在多行子查询中使用any操作符
select ename, sal, deptno from emp
where sal any(select sal from emp where deptno = 30);
--等价于
select ename, sal, deptno from emp where sal
(select min(sal) from emp where deptno = 30);
查找 oracle 数据库中包含某一字段的所有表的表名
1、首先,打开并登陆plsql。
2、然后点击左上角的新建,选择sqlwindow。
3、此时,右边区域就会弹出一个sql窗口,我们可以在这里输入一些sql语句。
4、查询多个字段的sql语句为:
select字段1,字段2from表名。
5、然后点击左上的执行sql语句图标。
6、耐心等待,在sql窗口下方就会展示你需要查阅的表中的对应字段了。
如何在oracle中查询所有用户表的表名、主键名称、索引、外键等
1、查找表的所有索引(包括索引名,类型,构成列):
select
t.*,i.index_type
from
user_ind_columns
t,user_indexes
i
where
t.index_name
=
i.index_name
and
t.table_name
=
i.table_name
and
t.table_name
=
要查询的表
2、查找表的主键(包括名称,构成列):
select
cu.*
from
user_cons_columns
cu,
user_constraints
au
where
cu.constraint_name
=
au.constraint_name
and
au.constraint_type
=
'P'
and
au.table_name
=
要查询的表
3、查找表的唯一性约束(包括名称,构成列):
select
column_name
from
user_cons_columns
cu,
user_constraints
au
where
cu.constraint_name
=
au.constraint_name
and
au.constraint_type
=
'U'
and
au.table_name
=
要查询的表
4、查找表的外键(包括名称,引用表的表名和对应的键名,下面是分成多步查询):
select
*
from
user_constraints
c
where
c.constraint_type
=
'R'
and
c.table_name
=
要查询的表
查询外键约束的列名:
select
*
from
user_cons_columns
cl
where
cl.constraint_name
=
外键名称
查询引用表的键的列名:
select
*
from
user_cons_columns
cl
where
cl.constraint_name
=
外键引用表的键名
5、查询表的所有列及其属性
在ORACLE如何查看自己建立的所有表,而不是系统表
在ORACLE如何查看自己建立的所有表,而不是系统表?1、 在计算机中,打开Oracle的连接程序,用新建的数据库管理员,进入【Oracle控制】的窗口上,鼠标左键单击【服务器】按钮,并选择【SQL工作表】,如下图所示。
2、接着,在【Oracle服务器】的窗口上,在输入窗口中输入SQL查询语句,并单击【执行】按钮,可以看到查询不到索引表,需要调整SQL语句,如下图所示。
3、然后,在【SQL工作表】的窗口上,输入查询索引表的SQL语句,可以作为参考,如下图所示。
4、 接着,在【SQL工作表】的窗口上,输查询索引表的SQL语句,并单击【执行】按钮,如下图所示。
5、然后,在【SQL工作表】的窗口上,可以看到SQL语句执行成功的提示信息,查询到用户的索引表中的字段,如下图所示。
6、接着,在【SQL工作表】的窗口上,修改索引表的名称,并单击【执行】按钮,如下图所示。
可以根据表建时间不同,来将你本人建的表和数据库自动建的表分开,虽然他们都是同一个用户建的。
在user_table表里没有建表时间这一字段,可以用user_objects这个表。
数据库系统建的表的时间和oracle发行版本有关,我的10.2.0.10版中这些都是2005-8-30建的,你本人建的表都大于这个时间。或者将范围缩更小些,找你最近两个月、一年建的表
具体的,如
select * from user_objects where object_type='TABLE' and create sysdate-30;
select * from user_objects where object_type='TABLE' and create to_date('2005-8-31','yyyy-mm-dd');