从Oracle的约束到索引

2014-11-24 17:49:10 · 作者: · 浏览: 0

这里说明下check约束:ALTER TABLE temp ADD CONSTRAINT ck_temp_age CHECK


((AGE>0) AND (AGE <= 125)); 这样age只能属于0到125区间了。别的数据插不进去。


再解释一下primary keys 约束和Unique约束的区别:


primary keys 约束要大于Unique约束,就是说Unique约束能有的,primary keys 约束都具有。而且primary keys 约束要求字段不能是空值。primary keys 约束会自动往字段添加唯一索引。


唯一索引是索引种类的一种。


Oracle的索引类型:有三种分类方法:


第一种:按类型分 :1.B-树索引 2.位图索引


第二种:1.唯一索引 2.主关键字索引 3.一般索引(主要用来提高查询速度)


第三种:1.单列索引 2.多列索引 3.函数索引


create index i_ename on emp(ename); 这样便创建了一个一般索引。


CREATE BITMAP INDEX index_name ON normal_index_creation_clause;这样便创建了一个位图索引。


create unique index dept_unique_idx on dept(dept_no) tablespace idx_1; 这样便创建唯一索引


创建与约束相关的索引 ,可以用using index字句,为与unique和primary key约束相关的索引,例如:


  alter table table_name


  add constraint PK_primary_keyname primary key (field_name)


  using index tablespace tablespace_name;


最后一个创建与约束相关的索引其实用的挺多的。