oracle实战2(约束、索引、序列)

第一小节:约束
1.引入约束的目的就是防止那些无效或有问题的数据输入到表中,使用数据库的术语就是维护数据的一致性。
2.修改主外键约束,其实就是先删除,然后再重新建
alter table employee
drop constraint employee_deptno_fk;
alter table employee
add constrarint employee_deptno_fk foreign key (deptno) reference department(deptno)
on delete set null;当删除主键时,外键列的值设为空
3.级联删除
当删除了主表中的某一项记录时,所有子表中的子记录也同时被删除
alter table employee
drop constraint employee_deptno_fk;
alter table employee
add constrarint employee_deptno_fk foreign key (deptno) reference department(deptno)
on delete cascade;级联删除
4.使用条件约束
alter table employee
add constraint emp_age_ck check (age>=18 and age<=60)
5.禁用约束:alter table employee disable constraint emp_age_ck;
6.启用约束:alter table employee enable constraint emp_age_ck;(看老师讲的,好像没必要禁用约束)
第二小节:索引
1.什么时候用索引,什么时候不用索引,要看实际情况......
2.oltp,olap
第三小节:序列
1.在SQL中创建自动增长
userid int not null identity(1000,1)
2.在Oracle中创建自动增长(sequence)
首先创建序列
然后在插值的时候引用序列.nextval

猜你喜欢

转载自roway.iteye.com/blog/1722910