使用 NOT NULL 约束

使用 NOT NULL 关键字来要求列必须在插入或更新操作期间接收值。如果在列删放置了 NOT NULL 约束(并且没有指定缺省值),则当您插入一行或者某行中更新列是,必须在该列中输入一个值。如果没有输入值,则由于不存在缺省值,所以数据库服务器将返回一个错误。

以下示例创建了 newitems 表。在 newitems 中,列 manucode 没有缺省值也不允许有 NULL 值。
CREATE TABLE newitems (
        newitem_num INTEGER,
        manucode CHAR(3) NOT NULL,
        promotype INTEGER,
        descrip CHAR(20));

当您定义 PRIMARY KEY 约束时,数据库服务器还静默地在同一列或在构成主键的列集上创建了 NOT NULL 约束。

如果还指定了 NOT NULL 约束,则不能指定 NULL 作为列的显式缺省值。

如果在同一列上指定 NOT NULL 约束和 NULL 约束,则 CREATE TABLE 语句发生错误并失败。

集合数据类型 LIST 、MULTISET 和 SET的列要求 NOT NULL 约束。在结合数据类型上不允许其它的列约束。