重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
问题描述的不是很准确,查询主外键信息的话,可以查询dba_constraints视图。可以看到创建的主外键名称、类型、具体创建在哪张表、owner等信息。相对应的还有user_constraints。
创新互联,是一家集策划、设计、技术开发一体的专业互联网产品服务公司,致力于为企业信息化提供驱动力。技术团队10年来致力于为客户提供企业网站定制,成都手机网站制作。先后服务了成百上千客户,包括各类中小企业、高校、政府。 创新互联将利用公司在过去10年的资源积累,力争为客户打造真正革命性的口碑产品!
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、查询表的所有列及其属性
select t.*,c.COMMENTS from user_tab_columns t,user_col_comments c where t.table_name = c.table_name and t.column_name = c.column_name and t.table_name = 要查询的表
6、Oracle中每个用户表的表名和行数
select table_name,num_rows from user_tables;
7、Oracle查询用户表空间:select * from user_all_tables
8、Oracle查询所有函数和储存过程:select * from user_source
9、Oracle查询所有用户:
select * from all_users;
select * from dba_users
10、Oracle查看当前用户连接:select * from v$Session
11、Oracle查看当前用户权限:select * from session_privs
12、Oracle查看用户表空间使用情况:
select a.file_id "FileNo",a.tablespace_name
"Tablespace_name",
a.bytes "Bytes",a.bytes-sum(nvl(b.bytes,0)) "Used",
sum(nvl(b.bytes,0)) "Free",
sum(nvl(b.bytes,0))/a.bytes*100 "%free"
from dba_data_files a, dba_free_space b
where a.file_id=b.file_id(+)
group by a.tablespace_name ,
a.file_id,a.bytes order by a.tablespace_name;
查看表索引、主键、外键、约束
(包括索引名,类型,构成列)
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 = 'ORG_DLF' ----指定表
AND T.TABLE_OWNER= 'ODSRPT_SIT2'; ----指定用户
(包括名称,构成列)
SELECT CU.*
FROM DBA_CONS_COLUMNS CU, DBA_CONSTRAINTS AU
WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME
AND AU.CONSTRAINT_TYPE = 'P'
AND AU.TABLE_NAME = 'LOAN_APPLICATION_FEE' -----指定表名
AND CU.OWNER='ODSRPT_SIT2'; -----指定用户名
(包括表名称,构成列)
SELECT CU.COLUMN_NAME,AU.TABLE_NAME
FROM DBA_CONS_COLUMNS CU, DBA_CONSTRAINTS AU
WHERE CU.CONSTRAINT_NAME = AU.CONSTRAINT_NAME
AND AU.CONSTRAINT_TYPE = 'U'
AND AU.OWNER='RPT_UAT2' -----指定用户名
AND AU.TABLE_NAME = 表名 ; -----指定表名
Select a.Owner 外键拥有者,
a.Table_Name 外键表,
c.Column_Name 外键列,
b.Owner 主键拥有者,
b.Table_Name 主键表,
d.Column_Name 主键列,
c.Constraint_Name 外键名,
d.Constraint_Name 主键名
From User_Constraints a,
user_Constraints b,
user_Cons_Columns c, --外键表
user_Cons_Columns d --主键表
Where a.r_Constraint_Name = b.Constraint_Name
And a.Constraint_Type = 'R'
And b.Constraint_Type = 'P'
And a.r_Owner = b.Owner
And a.Constraint_Name = c.Constraint_Name
And b.Constraint_Name = d.Constraint_Name
And a.Owner = c.Owner
And a.Table_Name = c.Table_Name
And b.Owner = d.Owner
And b.Table_Name = d.Table_Name;
这个表记录着用户的所有约束 USER_CONSTRAINTS constraint_type='P'的,就是这个表的主键
1、首先开启Oracle管理工具,找到Tablespaces。
2、首先要看的是表空间的总大小和使用状况以及当前状态。
3、Free Space 里面是各个表中的相关大小信息(一个表空间可能有多个表在使用)。
4、Objects 就如第三步中所提到的使用这个表空间的表明细。
5、Script 是创建表空间的PL/SQL,可以去了解它的相关信息和学习怎么创建表空间文件。