Oracle 添加主键和索引


数据的主键和索引一般情况下都是必须的,特别是表有大量数据的时候,索引和主键更是必不可少,这样可以提供数据的查询效率;

一、创建表的同时创建主键约束

(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);

3、当创建主键时,本来主键列有数据,而且有重复的:此时必须先删除重复数据再创建:

  delete  from Tb_TEST       a where rowid !=(select max(rowid)      from Tb_TEst     b where a.test_ID=b.test_ID  );

二、创建索引

create Index IX_xxxx   on table_name (colummname);

相关内容