数据完整性概述-ZF-20161115
- 格式:pdf
- 大小:1.37 MB
- 文档页数:28
数据完整性要点:●数据完整性基本概念●使用约束●默认对象●规则●标识列IDENTITY一、数据完整性基本概念在SQL中,数据完整性有以下几种1)域完整性:又称列完整性,指定列的数据输入是否具有正确的数据类型、格式以及有效的数据范围2)实体完整性:又称行完整性。
这里的实体是指表中的记录,一个实体就是表的一条记录。
实体完整性要求在表中不能存在完全相同的记录,而且每条记录都要有一个非空且不重复的主键。
实体的完整性可通过建立主键约束、唯一约束、标识列、唯一索引等措施来实现。
3)参照完整性:又称为引用完整性(关系完整性),以保证主表中的数据与从表中的数据的一致性,关系完整性是通过定义外键与主键之间或外键与唯一键之间的对应关系实现的。
二、使用约束约束包括以下几种类型:●PROMARY KEY约束●FOREIGN KEY约束●NOT NULL约束●UNIQUE约束●DEFAULT 约束●CHECK约束1)主键约束表中常有一列或列的组合,其值能唯一标识表中的每一行,这样的一列或列的组合称为表的主键。
通过主键可以强制表的实体完整性。
定义了主键约束的列具有以下特点:●每一个表只能定义一个主键●主键值不可空(NULL)●主键值不可重复,若主键是由多列组成,某列上的值可以重复,但多列的组合值必须是唯一的。
定义和删除主键的方法实现1、使用企业管理器操作2、使用T-SQL语句定义主键约束\主键约束定义格式:[CONSTANINT constrain _name]PRIMARY KEY[CLUSTERED[NONCLUSTERED(column[,…n])●constrain _name:主键约束名称●CLUSTERED:表示在该列上建立聚族索引●NONCLUSTERED:表示在该列上建立非聚族索引a)在创建表的同时定义主键约束创建名为ReadCategory表的同时,定义列“种类编号”为主键约束。
USE LibraryGOCREATE TABLE ReadCategory(种类编号int NOT NULL CONSTRAINT pk_zlbh PRIMARY KEY,种类名称varchar(50) NOT NULL,借书数量int NULL,借书期限int NULL,罚金公式decimal(9) NULL)GOb)在修改表时定义主键约束若已创建了表Readers,添加一个按“读者编号”建立的主键约束。
1.数据完整性概述存储是计算机中的数据可以说每天都在增加,与此同时,需要访问这些数据的人数也在增长,这样,无疑对数据的完整性的潜在需求也随之而增长。
数据完整性这一术语用来泛指与损坏和丢失相对的数据的状态,它通常表明数据的可靠与准确性是可以信赖的,同时,在不好的情况下,意味着数据有可能是无效的,或不完整的。
数据完整性方面的要点:存储器中的数据必须和它被输入时或最后一次被修改时的一模一样;用来建立信息的计算机、外围设备或配件都必须正确地工作;数据不能被其他人非法利用。
本章将从数据完整性和完整性的一般解决方法二个方面来论述数据完整性。
1.1. 数据完整性对数据完整性来说,危险常常来自一些简单的计算不周、混淆、人为的错误判断或设备出错等导致的数据丢失、损坏或不当的改变。
而数据完整性的目的就是保证计算机系统,或计算机网络系统上的信息处于一种完整和未受损坏的状态。
这意味着数据不会由于有意或无意的事件而被改变或丢失。
数据完整性的丧失意味着发生了导致数据被丢失或被改变的事情。
为此,首先将检查导致数据完整性被破坏的常见的原因,以便采用适当的方法以予解决,从而提高数据完整性的程度。
在分布式计算环境中,或在计算机网络环境中,如果通过PC、工作站、服务器、中型机和主机系统来改善数据完整性已变得一天比一天困难。
原因何在?许多机构为了给它们的用户提供尽可能好的服务都采用不同的平台来组成系统,这仿佛拥有不同的硬件平台一样,使这些机构一般都拥有使用不同文件系统和系统服务的机器。
E-mail交换系统成了对协同工作的网络系统的需求;协议的不同需要网关或协议的转换;系统开发语言和编译器的不同也产生了应用上兼容性的问题,凡此种种,造成了系统之间通信上可能产生的问题。
其结果使之处于一种充满了潜在的不稳定性和难于预测的情况之当。
一般地来说,影响数据完整性的因素主要的有如下5种:●硬件故障●网络故障●逻辑问题●意外的灾难性事件●人为的因素1、硬件故障任何一种高性能的机器都不可能长久地运行下不发生任何故障,这也包括了计算机,常见的影响数据完整性的硬件故障有:●磁盘故障●I/O控制器故障●电源故障●存储器故障●介质、设备和其它备份的故障●芯片和主板故障2、网络故障在LAN上,数据在机器之间通过传输介质高速传递,用来连接机器设备的线缆总是处在干扰和物理损伤在内的多种威胁之中,使计算机之间难于通信或根本无法通信的事件,最终导致数据的损毁或丢失。