1 / 5
文档名称:

强制数据完整性.doc

格式:doc   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

强制数据完整性.doc

上传人:gd433 2015/8/19 文件大小:0 KB

下载得到文件列表

强制数据完整性.doc

文档介绍

文档介绍:强制数据完整性――使用数据表约束
数据完整性
强制数据完整性可保证数据库中数据的质量。数据完整性分为下列类别:
实体完整性
实体完整性将行定义为特定表的唯一实体。实体完整性通过索引、UNIQUE 约束、PRIMARY KEY 约束或 IDENTITY 属性强制表的标识符列或主键的完整性。
域完整性
域完整性指特定列的项的有效性。您可以强制域完整性限制类型(通过使用数据类型)、限制格式(通过使用 CHECK 约束和规则)或限制可能值的范围(通过使用 FOREIGN KEY 约束、CHECK 约束、DEFAULT 定义、NOT NULL 定义和规则)。
引用完整性
在输入或删除记录时,引用完整性保持表之间已定义的关系。在 SQL Server 2005 中,引用完整性通过 FOREIGN KEY 和 CHECK 约束,以外键与主键之间或外键与唯一键之间的关系为基础。引用完整性确保键值在所有表中一致。这类一致性要求不引用不存在的值,如果一个键值发生更改,则整个数据库中,对该键值的所有引用要进行一致的更改。
强制引用完整性时,SQL Server 将防止用户执行下列操作:
<!--[if !supportLists]-->·         <!--[endif]-->在主表中没有关联的记录时,将记录添加或更改到相关表中。
<!--[if !supportLists]-->·         <!--[endif]-->更改主表中的值,这会导致相关表中生成孤立记录。
<!--[if !supportLists]-->·         <!--[endif]-->从主表中删除记录,但仍存在与该记录匹配的相关记录。
用户定义完整性
用户定义完整性使您可以定义不属于其他任何完整性类别的特定业务规则。所有完整性类别都支持用户定义完整性。这包括 CREATE TABLE 中所有列级约束和表级约束、存储过程以及触发器。
 
数据约束
SQL Server 2005 提供了下列机制来强制列中数据的完整性:
PRIMARY KEY 约束
表通常具有包含唯一标识表中每一行的值的一列或一组列。这样的一列或多列称为表的主键(PK),用于强制表的实体完整性。在创建或修改表时,您可以通过定义 PRIMARY KEY 约束来创建主键。
一个表只能有一个 PRIMARY KEY 约束,并且 PRIMARY KEY 约束中的列不能接受空值。由于 PRIMARY KEY 约束可保证数据的唯一性,因此经常对标识列定义这种约束
         创建:
ALTER TABLE TableName ADD CONSTRAINT TableName _pk PRIMARY KEY (Id)
         删除:
ALTER TABLE TableName DROP CONSTRAINT TableName _pk
FOREIGN KEY 约束
外键(FK) 是用于建立和加强两个表数据之间的链接的一列或多列。当创建或修改表时可通过定义 FOREIGN KEY 约束来创建外键。
在外键引用中,当一个表的列被引用作为另一个表的主键值的列时,就在两表之间创建了链接。这个列就成为第二个表的外键。
FOREIGN KEY 约束并不仅仅可以与另一表的