Nick's Blog

SQL Server 2012 零起点 第四讲 如何创建Constraint

本篇将介绍如何在SQL Server 2012下创建表格中的Constraint和Default Constraint

Column可以是null或者not null,如果你的Column是允许空值的Column,当你没有插入任何数据时,这个Column的值将自动标记为NULL。

就例如我们在上一讲中使用过的表格tblPeople

GenderID是允许空值的,因此如果你使用以下的SQL命令行

Insert into tblPeople (ID, Name, Email) values (3,'rik','rik@rik.com')

你会得到一个空的column,如下图:

如果你不想任何人在GenderID下有空值,你可以使用Default Constraint,例如我希望GenderID的Default Value为3

ALTER TABLE tblPerson
ADD CONSTRAINT DF_tblPerson_GenderID
DEFAULT 3 FOR GenderID

当你执行完以上的Query后,你会在Constraints的文件夹下发现一个Default Constraint

现在如果你再执行一次增添语句:

Insert into tblPeople (ID, Name, Email) values (4,'rike','rik@rike.com')

你会在GenderID下得到一个3的初始值

然而,你也可以强制GenderID为NULL

ALTER TABLE {TABLE NAME}
ADD {COLUMN NAME} {DATA TYPE} {NULL | NOT NULL}
CONSTRAINT {CONSTRAINT NAME} DEFAULT {DEFAULT VALUE}