26. SQL--not null:非空约束
1. 前言
默认情况下,表的字段可以包含 null 值,如果您不希望某个字段出现 null 值,那么可以在该字段上添加 not null 约束(非空约束),此时就必须给该字段指定一个具体的值,不能留空。
注意,null 不等于没有数据,而是表示数据是未知的。
2. 示例
下面的 SQL 语句将创建一个名为 website 的新表,该表包含七个字段,其中五个字段不接受 NULL 值,它们分别是 id、name、age、alexa 和 country:
create table website (
id int not null auto_increment,
name varchar(20) not null,
url varchar(30),
age tinyint unsigned not null,
alexa int unsigned not null,
uv float default '0',
country char(3) not null default '',
primary key (`id`)
);
如果已经创建了 website 表,也可以使用 alter table 语句将 not null 约束添加到某个字段,例如:
alter table website
modify url varchar(30) not null;
以上语句在 oracle 和 mysql 数据库上运行通过。