默认约束
1. 当给表插入一行数据时,含有默认约束的列如果没有插入数据会用默认值自动填充
2. 不能起约束名(只有默认约束)
3. 不能用删除约束的方法对待默认值
4建表的同时建立默认约束
语法:列级约束 create table 表名 (字段1 数据类型,字段2 数据类型 default(默认值);
--default 在哪个字段后面,默认值就会给谁
5.默认约束没有表级约束
create table emp (sex varchar2(3) ,empno number(4) default('男'));
insert into emp3 values (1111,'男');
insert into emp3 values (1111,'女');
insert into emp3 (empno) values (1111,'男');
insert into emp (sex) values ('女');
6.给表新增字段时,同时建立默认约束
alter table 表名 add (字段1 数据类型 default (默认值1),字段2 数据类型 default (默认值2),...);
7.给已有字段建立默认约束 修改默认约束(默认值)
alter table 表名 modify (字段1 数据类型 default (默认值1),字段2 数据类型 default (默认值2),...);
8.默认值的删除方式
alter table 表名 modify (字段1 数据类型 default (''));
9.删除约束的方法
alter table 表名 drop constriaint 约束名; --和删除列
alter table 表名 drop column 列名;
10.约束重命名
表的重命名:alter table 旧表名 rename to 新表名;
列的重命名:alter table 表名 rename column 旧列名 to 新列名;
约束的重命名:alter table 表名 rename constraint 旧约束名 to 新约束名;
11.约束禁用
disable 不允许
alter table 表名 enable constraint 约束名;
12.约束启用 enable 允许
alter table 表名 enable constraint 约束名;
13.约束被禁用后,如果插入了不符合约束的数据,无法再启用约束
14.唯一或者主键被外键引用时,无法直接删除带有唯一或者主键的表,需要先删除外键约束