表中的可空列

创建表时,可以将列声明为可空或不可空。

CREATE TABLE MyTable
(
    MyCol1 INT NOT NULL, -- non-nullable
    MyCol2 INT NULL      -- nullable
) ;

默认情况下,除非我们明确设置 NOT NULL 约束,否则每列(主键约束除外)都可以为空。

尝试将 NULL 分配给不可为空的列将导致错误。

INSERT INTO MyTable (MyCol1, MyCol2) VALUES (1, NULL) ;  -- works fine

INSERT INTO MyTable (MyCol1, MyCol2) VALUES (NULL, 2) ;  
        -- cannot insert
        -- the value NULL into column 'MyCol1', table 'MyTable'; 
        -- column does not allow nulls. INSERT fails.