1、非空(not null)约束:用于确保列不能为NULL,如果在列上定义了not null约束,那么当插入数据时,必须为该列提供数据,当更新列数据时,不能将其值设置为null
注:非空(not null)约束是列级约束
(1)、列级约束:column [ constraint constraint_name ] constraint_type;
注:列级约束必须跟在列的定义后面
(2)、表级约束:column, ... [constraint constraint_name ] constraint_type (column, ...),
注:表级约束不与例一起,而是单独定义的。
例:
create table student(
sid number(8,0) not null,
name varchar2(20) constraint nn_sex not null
);
2、创建表和修改表时添加非空约束的方法
(2)、修改表添加约束的语法格式:
alter table tabel_name add [ constraint constraint_name ] constraint_type (column);
(2)、添加非空(not null)约束要使用modify语句
alter table table_name modify (column datatype not null);
3、删除非空约束与删除其他约束的区别
(1)、删除约束的方式
<1>、暂时性删除约束:将约束无效化或激活(disable | enable constraint constraint_name)
<2>、彻底删除约束:drop constraint constraint_name
<3>、删除主键约束的格式:drop primary key
(2)、删除非空约束的方式
<1>、删除非空(not null)约束的语法格式:
alter table table_name modify column_name datatype null;