第11章数据完整性精.ppt
《第11章数据完整性精.ppt》由会员分享,可在线阅读,更多相关《第11章数据完整性精.ppt(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第11章数据完整性章数据完整性第1页,本讲稿共12页11.1 11.1 数据完整性介绍数据完整性介绍在在对对表表进进行行设设计计时时,需需要要选选择择和和设设置置表表中中列列的的数数据据类类型型以以及及表表中中列列的的数数据据完完整整性性。在在SQL Server 2008中中,数数据据完完整整性性可可以以分分为为实实体体完完整整性性、域域完完整整性性、引引用用完完整整性性及及用用户户定定义完整性义完整性4类,具体如下。类,具体如下。1实体完整性实体完整性2域完整性域完整性3引用完整性引用完整性4用户定义完整性用户定义完整性第2页,本讲稿共12页11.2 11.2 约束约束在在SQL Ser
2、ver 2008中中,支支持持的的约约束束类类主主要要分分为为NOT NULL约约束束、CHECK约约束束、UNIQUE约约束束、PRIMARY KEY约约束束及及FOREIGN KEY约约束束。在在这这几几类类约约束束中中,比比较较常常用用到到的的是是NOT NULL约束、约束、UNIQUE约束和约束和PRIMARY KEY约束。约束。第3页,本讲稿共12页11.2.1 NOT NULL11.2.1 NOT NULL约束:不允许空值约束:不允许空值NOT NULL约约束束就就是是不不允允许许空空值值,也也就就是是说说,具具有有NOT NULL约约束束的的列列不不能能接接受受空空值值。所所以以
3、,如如果果具具有有NOT NULL约约束束的的列列而而没没有有输输入入信信息息,那那样样会会返返回回错错误误。总总之之,NOT NULL约约束束保保证证了列的值不为空值,也就不需要在程序设计时判断字段是否为空。了列的值不为空值,也就不需要在程序设计时判断字段是否为空。在在创创建建表表时时,如如果果列列的的数数据据类类型型没没有有默默认认值值(DEFAULT),那那么么SQL Server将将为为列列提提供供的的默默认认值值为为NULL。所所以以如如果果想想要要列列的的值值不不为为空空,那那么么最最好好在在创创建建表表时时,将将NOT NULL约约束束直直接接指指定定给给相相应的列。应的列。第4
4、页,本讲稿共12页11.2.2 CHECK11.2.2 CHECK约束:添加约束条件约束:添加约束条件CHECK约约束束可可以以通通过过限限制制列列所所能能接接受受的的值值,实实现现上上面面提提到到的的域域完完整整性性。其其实实,CHECK约约束束类类似似于于FOREIGN KEY约约束束,都都可可以以控控制制列列的的值值。不不过过,两两者者在在确确定定列列的的值值是是否否有有效效时时,方方法法不不同同。其中,其中,FOREIGN KEY约束从其他的表中直接获得有效值。约束从其他的表中直接获得有效值。1在创建表时,创建在创建表时,创建CHECK约束约束2删除删除CHECK约束约束3在创建表后,
5、创建在创建表后,创建CHECK约束约束4 使使 用用 SQL Server Management Studio创创 建建 或或 删删 除除CHECK约束约束5显式地启用或禁用显式地启用或禁用CHECK约束约束6在单个列上创建多个在单个列上创建多个CHECK约束约束CK_tb_CHECK7约束表达式约束表达式8查看已创建的查看已创建的CHECK约束约束第5页,本讲稿共12页11.2.3 UNIQUE11.2.3 UNIQUE约束:重复约束约束:重复约束在在SQL Server 2008中中,UNIQUE约约束束是是通通过过SQL语语句句或或SQL Server Management Studio
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 11 数据 完整性
限制150内