首页 > 电脑专区 > windows >

图解SQL Server2008创建约束

来源:互联网 2023-02-22 11:59:15 137

SQLServer中有五种约束,Primary Key约束、Foreign Key约束、Unique约束、Default约束和Check约束。a45办公区 - 实用经验教程分享!

本篇经验将使用SQL Server2008来演示一下这几种约束的创建和使用的方法。a45办公区 - 实用经验教程分享!

Primary Key 约束

1

在表中常有一列或多列的组合,其值能唯一标识表中的每一行。a45办公区 - 实用经验教程分享!

这样的一列或多列成为表的主键(PrimaryKey)。一个表只能有一个主键,而且主键约束中的列不能为空值。只有主键列才能被作为其他表的外键所创建。a45办公区 - 实用经验教程分享!

创建主键约束可以右键单击表,选择设计 ,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

2

选中要创建主键的列,然后单击上面的小钥匙,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

3

也可以右键需要创建主键的列,然后单击小钥匙,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

Foreign Key 约束

1

外键约束是用来加强两个表(主表和从表)的一列或多列数据之间的连接的。创建外键约束的顺序是先定义主表的主键,然后定义从表的外键。也就是说只有主表的主键才能被从表用来作为外键使用,被约束的从表中的列可以不是主键,主表限制了从表更新和插入的操作。a45办公区 - 实用经验教程分享!

查看FOREIGN KEY约束,展开Columns,可以看到灰色的小钥匙为Foreign Key;展开Keys,可以看到Foreign Key约束的名字为FK_contact_company,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

2

在表设计器中,也可以点击上面的Relationships按钮,这样就可以查看到所有的Foreign Key约束,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

3

上面的例子可以看到contact 表的companyid为外键,company 表的companyid为主键。a45办公区 - 实用经验教程分享!

下面来演示一下如何创建的该Foreign Key约束。a45办公区 - 实用经验教程分享!

同样是点击完Relationships按钮之后,在弹出的对话框中选择Add,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

4

然后点击下面的红色圆圈内的按钮,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

5

按下图中那样设置主表、主键和从表、外键,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

6

然后点击 OK,不要忘记保存你的设计,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

Unique 约束

1

唯一约束确保表中的一列数据没有相同的值。与主键约束类似,唯一约束也强制唯一性,但唯一约束用于非主键的一列或者多列的组合,且一个表可以定义多个唯一约束。a45办公区 - 实用经验教程分享!

右键单击要设置的列选择索引/键,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

2

然后单击添加按钮,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

3

选择需要设置的列,可以是一列也可以是多列的组合,关闭并保存设置,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

Check 约束

1

Check约束通过逻辑表达式来判断数据的有效性,用来限制输入一列或多列的值的范围。在列中更新数据时,所要输入的内容必须满足Check约束的条件,否则将无法正确输入。a45办公区 - 实用经验教程分享!

以学生信息表中的sex为例,我们要限制sex列的值只能为男或女,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

2

在弹出的CHECK约束对话框中,在常规中选择表达式,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

3

在弹出的CHECK约束表达式对话框中,输入约束脚本,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

4

修改标识中的约束的名称,如下图所示:a45办公区 - 实用经验教程分享!

图解SQL Server2008创建约束a45办公区 - 实用经验教程分享!

5

关闭并保存设计。a45办公区 - 实用经验教程分享!

至此,数据库中的五种约束情况又复习了一遍,约束确保了数据库中数据的完整性,但只有约束是远远不够的。a45办公区 - 实用经验教程分享!

以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!a45办公区 - 实用经验教程分享!


标签: 创建图解约束

办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码