SQL各种约束总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL Server 各种约束总结 NOT NULL 约束
Not null ,即不为空。 Not null 约束强制字段始终包含值。 这意味着, 如果不向字段添加值, 就无法插入新记录或者更新记录。 添加此约束有两种方法:
方法一
在表设计器中直接勾选即可。如下图:
方法二
SQL 语句添加约束。 CATE TABLE table_name( ATTRIBUTE Type NOT NULL; ); 点击新建查询,在查询界面中输入相应的 SQL 语句。
PRIMARY KEY 约束
primary key ,顾名思义,即主键,也称主码。在表中一行称一个元组,如果存在某个属 性或几个属性,其值能唯一标识表中的某一行,这样的一个属性或多个属性就能作为表的 primary key。 为一个表设置主码约束有以下三种方法: 若主键设置成功, 在相应的属性旁边会有一把小钥 匙。
方法一
直接右击所要设置的属性,选择设置主键。
方法二
选中要设置的属性,直接点击图箭头所指的小钥匙。
方法三
用 SQL 语言在设计表时同时添加约束。 CREATE TABLE table name( Attribute1 Type PRIMARY KEY, );
FOREIGN KEY
外键约束是用来加强两个表(主表和从表)的一列或多列数据之间的连接的。创建外键约 束的顺序是先定义主表的主键, 然后定义从表的外键。 也就是说只有主表的主键才能被从表 用来作为外键使用, 被约束的从表中的列可以不是主键, 主表限制了从表更新和插入的操作。
方法一
右键单击需要设置外键的列(此时的表是作为从表在外键中出现) ,选择关系。
接下来点击添加 --> 表和列规范。
在主键表中选择主表和主表的主键列。
设置完后保存即可。
方法二
SQL 语句
UNIQUE 约束
UNIQUE 约束唯一标识数据库表中的每一条记录。 附加:UNIQUE 约束和 PRIMARY KEY 约束的区别: UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证; PRIMARY KEY 约束拥有自动定义的 UNIQUE 约束; 每个表中可以有多个 UNIQUE 约束,但是只有有一个 PRIMARY KEY 约束。
方法一
右键单击要设置的列选择索引 / 键。
然后单击添加按钮。
选择需要设置的列,可以是一列也可以是多列的组合。
关闭并保存设置。
方法二
SQL 语句
DEFAULT 约束
DEFAULT 约束用于向列中插入默认值。如果没有规定其他的值,那么会将默认值添加到所
有的新记录。
方法一
以学生信息表为例,在表设计器中,为性别 sex 列填写默认值男。
方法二
SQL 语句 CREATE TABLE table_name( Attribute type constraint, );
CHECK 约束
CHECK 约束用于限制列中的值的范围。 如果对单个列定义 CHECK 约束,那么该列只允许特定的值。 如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制。
Check 约束通过逻辑表达式来判断数据的有效性,用来限制输入一列或多列的值的 范围。在列中更新数据时,所要输入的内容必须满足 Check 约束的条件,否则将无法 正确输入。
方法一
以学生信息表中的 sex 为例,我们要限制 sex 列的值只能为男或女。
关闭并保存设计。
方法二
CREATE TABLE Persons ( Id_P int NOT NULL CHECK (Id_P>0), LastName varchar(255) NOT NULL,
FirstName varchar(255), Address varchar(255), City varchar(255) )
如果需要命名 CHECK 约束,以及为多个列定义 CHECK 约束,请使用下面的 SQL 语法:
CREATE TABLE Persons ( Id_P int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes') )