欢迎来到小居数码网-一家分享数码知识,生活小常识的网站,希望可以帮助到您。

当前位置:生活小常识 > 数码知识 >
优质

sql主键约束(如何定义数据完整性)

数码知识

陈曼优秀作者

原创内容 来源:小居数码网 时间:2024-08-11 11:53:01 阅读() 收藏:55 分享:79

导读:您正在阅读的是关于【数码知识】的问题,本文由科普作家协会,生活小能手,著名生活达人等整理监督编写。本文有504个文字,大小约为3KB,预计阅读时间2分钟。

关系模型带来的最大优点之一就是模型本身集成了数据完整性。

如何定义数据完整性

作为模型的一部分而实施的数据完整性(也就是说,作为表定义的一部分)称为声明式数据完整性。用代码来实施的数据完整性(例如:用存储过程或触发器)称为过程式数据完整性

为属性选择的数据类型和是否允许为NULL值,甚至数据模型本身都是声明式数据完整性约束的例子。本文给大家主要介绍声明式约束的例子,包括主键、唯一约束(UNIQUE)外键、检查约束(CHECK),以及默认约束(DEFAULT)。

当用 CREATE TABLE 语句创建表时,可以同时定义这些约束;或者在已经创建好表之后,用 ALTER TABLE 语句增加这些约束。除了默认约束(DEFAULT)约束以外,其他所有约束都可以定义为组合约束(即基于一个或多个属性的约束)。

主键约束(Primary Key Constrints)

主键约束实施行的唯一约束,同时不允许约束属性取NULL值。约束属性中每一组唯一的值在表中只能出现一次,换句话说,表内的每行数据可以被唯一确定。每个表只能定义一个主键。

以前篇文章中创建的Employees表为例,在它的empid列上定义一个主键约束:

ALTER TABLE dbo.Employees

ADD CONSTRAINT PK_Employees

PRIMARY KEY(empid);

定义好主键以后,就可以保证所有的empid值是唯一而确定的。如果插入或更新一行违反约束的数据,RDBMS就会拒绝操作,生成一个报错。

为了实施逻辑主键约束的唯一约束,SQL Server 将在幕后创建一个唯一索引(unique index)。唯一索引是SQL Server为了实施唯一约束而采用的一种物理机制。也可以用索引(不一定是唯一索引)来加速查询的处理,避免对整个表进行不必要的扫描。

作者:shy

上面就是小居数码小编今天给大家介绍的关于(如何定义数据完整性)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。

94%的朋友还想知道的:

(223)个朋友认为回复得到帮助。

部分文章信息来源于以及网友投稿,转载请说明出处。

本文标题:sql主键约束(如何定义数据完整性):http://sjzlt.cn/shuma/154589.html

猜你喜欢