`
lu930124
  • 浏览: 28640 次
  • 性别: Icon_minigender_2
  • 来自: 廊坊
文章分类
社区版块
存档分类
最新评论

SQLSEVER 中的那些键和约束

 
阅读更多

SQLServer中有五种约束类型,分别是PRIMARYKEY约束、FOREIGNKEY约束、UNIQUE约束、DEFAULT约束、和CHECK约束。查看或者创建约束都要使用到MicrosoftSQLServerManagmentStudio

1.PRIMARYKEY约束

在表中常有一列或多列的组合,其值能唯一标识表中的每一行。这样的一列或多列成为表的主键(PrimaryKey)。一个表只能有一个主键,而且主键约束中的列不能为空值。

查看PRIMARYKEY约束可以在objectexplorer中依次展开Databases>选择你要查看的数据库(在我的例子中是chargesystem)–>表–>你要查看的表(在我的例子中是BasicTale->

如上图所示,PrimaryKey有一把金色的小钥匙。ModifyIDea即为BasicTable表的primarykey

创建PRIMARYKEY约束可以右键点击表,然后选择设计,打开表设计器,选中行,点击上面的金色小钥匙,来创建PrimaryKey

也可以右键点击想设为主键的行,然后选择设置主键。

2.FOREIGNKEY约束

外键(ForeignKey)是用于建立和加强两个表(主表与从表)的一列或多列数据之间的连接的。创建约束的顺序是先定义主表的主键,再对从表定义外键约束。

查看FOREIGNKEY约束,展开列,可以看到灰色的小钥匙为ForeignKey;展开Keys,可以看到ForeignKey约束的名字为FK_contact_company

在表设计器中,也可以点击上面的关系按钮,这样就可以查看到所有的ForeignKey约束

上面的例子可以看到billTable表的OperatorID为外键,OperatorIDea表的OperatorIDea为主键。

下面来演示一下如何创建的该ForeignKey约束。

同样是点击完关系按钮之后,在弹出的对话框中选择添加

然后点击下面的红色框内的按钮:

按下图中那样设置主表、主键和从表、外键

然后点击OK,不要忘记保存你的设计。

3.UNIQUE约束(唯一键或索引)

UNIQUE约束用于确保表中的两个数据行在非主键中没有相同的列值。与PRIMARYKEY约束类似,UNIQUE约束也强制唯一性,但UNIQUE约束用于非主键的一列或多列组合,且一个表可以定义多个UNIQUE约束,另外UNIQUE约束可以用于定义多列组合。

还以BillTable为例,假设我们要约束BillIDea为唯一的,点击管理索引和键

然后点击Add来添加Unique约束

选择BillIDASC是唯一的

关闭并保存你的设计,这样一个Unique约束就创建好了。

分享到:
评论

相关推荐

    sqlserver约束详解

    sqlserver 数据库中主键,唯一键,外部键,约束键的创建与删除详解

    SQL SERVER 2000中的列级约束与表级约束

    SQL Server 2000中的列级约束与表级约束 在SQL Server 2000中有5 种约束: 主键约束(primary key constraint) 唯一性约束(unique constraint) 检查约束(check constraint...外部键约束(foreign key constraint)

    SQL Server 2008编程入门经典(第3版)

    6.3 键约束 6.3.1 主键约束 6.3.2 外键约束 6.3.3 唯一约束 6.4 CHECK约束 6.5 DEFAuLT约束 6.5.1 在cREATETABLE语句中定义DEFAULT约束 6.5.2 在已存在的表中添加DEFAUIT约束 6.6 禁用约束 6.6.1 在创建约束时忽略...

    SQL Server 创建约束图解(唯一 主键)

    SQLServer中有五种约束,Primary Key约束、Foreign Key约束、Unique约束、Default约束和Check约束,今天使用SQL Server2008来演示下这几种约束的创建和使用的方法。 什么是主键? 在数据库中,常常不只是一个表,...

    数据库下所有表的外键约束查询

    用于查询某个数据库下所有表的外键约束情况,以便统一分析外键约束是否合理...主要查询出外键的,是否级联删除,级联更新,强制外键约束,强制复制约束始终状态。如想使用别的状态,请自行添加。下载的童鞋别下载错了。

    SQL Server中用T-SQL语句实现(建表、键约束、建关系)

     本文将会用T-SQL 语句实现建表、建约束、建关系。 一. 对表进行操作  1.1 创建表 --使用 create table 语句创建表 语法: create table 表名(字段 数据类型 约束) 例如: create table Student( StudentId ...

    SQL.Server.2008编程入门经典(第3版).part2.rar

    6.3 键约束 6.3.1 主键约束 6.3.2 外键约束 6.3.3 唯一约束 6.4 CHECK约束 6.5 DEFAuLT约束 6.5.1 在cREATETABLE语句中定义DEFAULT约束 6.5.2 在已存在的表中添加DEFAUIT约束 6.6 禁用约束 6.6.1 在创建约束时忽略...

    SQLServer2000高级编程技术-已添加书签,想学存储过程、SQL编程务必要看,分析非常透彻

    目录如下: 第1章 简介 1.1 谁是本书的读者 1.2 本书的内容 1.3 需求 1.4 SQL Server 2000的新特性 1.4.1 改进了对Web的支持 1.4.2 改进了伸缩能力和...附录A SQL Server 2000中的T-SQL和XML数据类型 附录B 练习答案

    SQL.Server.2008编程入门经典(第3版).part1.rar

    6.3 键约束 6.3.1 主键约束 6.3.2 外键约束 6.3.3 唯一约束 6.4 CHECK约束 6.5 DEFAuLT约束 6.5.1 在cREATETABLE语句中定义DEFAULT约束 6.5.2 在已存在的表中添加DEFAUIT约束 6.6 禁用约束 6.6.1 在创建约束时忽略...

    SQL Server 2008数据库设计与实现

     本书浓缩了作者作为SQL Server数据库架构师多年来丰富的实践经验,适合各类数据库开发和管理人员学习参考 目录 第1章 数据库概念简介  1.1 数据库设计阶段  1.1.1 概念阶段  1.1.2 逻辑阶段 ...

    SQLServer主键和唯一约束的区别

    首先说明一点,主键又称主键约束,它也是一种约束,看下它和唯一约束的创建语法: alter table Person add constraint PK_Id primary key (Id) ...·SQLServer默认为主键字段创建聚集索引,为唯一约

    SQLServer2000高级编程技术(part02)-想学存储过程 SQL编程 务必要看

    第1章 简介 1.1 谁是本书的读者 1.2 本书的内容 1.3 需求 1.4 SQL Server 2000的新特性 1.4.1 改进了对Web的支持 1.4.2 改进了伸缩能力和可靠性 ...附录A SQL Server 2000中的T-SQL和XML数据类型 附录B 练习答案

    SQLSserver2008 上

    第一章 SQL Server基础 ? ? 1、SQL 2008视频教程—SQL数据库连接 ? 2、SQL 2008视频教程-系统数据库 ? 3、SQL 2008视频教程-数据库创建 ? 4、SQL 2008视频教程-数据库创建2 ? 5、SQL 视频教程-对...

    SQL Server系统调优解决方案

    聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如:如果应用程序执行的一个查询经常检索某一日期范围内的记录,则使用聚集索引...

    SQL Server允许重复空字段不空字段值唯一

    GO 解决方案1: 对于这个问题,大家的第一个想法可能是:在Caption这个字段上面加一个唯一键不就可以了吗?好,我们按着这个思路做下去,先创建唯一索引。 代码如下: CREATE UNIQUE NONCLUSTERED INDEX un_test_tb ...

    北邮数据库实验5数据库完整性与安全性

    1. 通过对完整性规则的定义实现,熟悉了解SQL Server数据库中实体完整性、参照完整性、断言等完整性保证的规则和实现方法,加深对数据完整性的理解。 2. 通过对安全性相关内容的定义,熟悉了解SQL Server数据库中...

    SQL数据库管理系统-A.docx

    A、64 B、128 C、256 D、512 20、每个表允许存在( )个住键约束。 A、1 B、2 C、3 D、4 二、填空题(共20分,每空1分) 1、数据库系统由__________和__________________两部分组成。 2、在SQL中,主码约束的关键字...

    SQL智能完成工具BDB

    不过与上述软件只能在单个特定数据库平台使用不同, BDB支持更多的数据库平台,具体包括: Oracle、MS SQLServer、MySQL、Access、SQLAnywhere和Sybase。 <br> 一、使用 <br>运行BDB,切换至...

Global site tag (gtag.js) - Google Analytics