【工作心得】有关主键索引

1、创建表的同时创建主键约束
(1)无命名
create table student (
 studentid int primary key not null,
 studentname varchar(8),
 age int);
(2)有命名
create table students (
   studentid int ,
   studentname varchar(8),
   age int,
   constraint yy primary key(studentid));
 
 
2、删除表中已有的主键约束
(1)有命名
 alter table students drop constraint yy;
(2)无命名
可用 SELECT   *   from   user_cons_columns;
查找表中主键名称得student表中的主键名为SYS_C002715
alter table student drop constraint SYS_C002715;
 
3、向表中添加主键约束
 alter table student add constraint pk_student primary key(studentid); 
 
 

查找表的主键,外键,唯一性约束,索引

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 = 要查询的表

转自:http://www.cnblogs.com/chuncn/archive/2009/04/13/1434387.html

 

 

posted @ 2013-11-19 16:15  绿茵飞狼  阅读(160)  评论(0编辑  收藏  举报