SQL Server 关键字

默认情况下,表的列保存 NULL 值。 SQL Server (Transact-SQL) NOT NULL 关键字是一个约束,用于强制列不接受 NULL 值,即列的字段不可为空。这可确保该列始终具有值。这意味着如果不为此列提供值,则无法插入新记录。同样,该列不能用 NULL 值更新。

SQL Server CREATE TABLE 的  NOT NULL 约束

下面提到的语句创建一个名为 Employee 包含五列:EmpID、Name、City、Age 和 Salary其中 NOT NULL 约束应用于列 EmpID、Name 和 City。

CREATE TABLE Employee (
  EmpID INT NOT NULL,
  Name VARCHAR(255) NOT NULL,
  City VARCHAR(100) NOT NULL,
  Age INT,
  Salary DECIMAL(18,2)
); 

SQL Server ALTER TABLE NOT NULL 约束

在上面的示例中,创建了一个名为 Employee 的表,其中的列 Salary 没有 NOT NULL 约束。要在此列上强制执行 NOT NULL 约束,可以使用以下语句:

ALTER TABLE Employee
ALTER COLUMN Salary DECIMAL(18,2) NOT NULL; 

删除 NOT NULL 约束

从列 City 上述Employee表中,语句如下:

ALTER TABLE Employee
ALTER COLUMN City VARCHAR(100) NULL;