New数据库保护及SQLServer的数据库保护技术.ppt
《New数据库保护及SQLServer的数据库保护技术.ppt》由会员分享,可在线阅读,更多相关《New数据库保护及SQLServer的数据库保护技术.ppt(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1/36第第第第8 8章章章章 数据库保护及数据库保护及数据库保护及数据库保护及SQL ServerSQL Server的数据库保护技术的数据库保护技术的数据库保护技术的数据库保护技术 2/36 DBMS必必须须提供提供统统一的数据保一的数据保护护功能,以保功能,以保护护数据数据库库中数据的安全可靠及正确有效。中数据的安全可靠及正确有效。主要包括主要包括数据的安全性;数据的安全性;数据的完整性;数据的完整性;并并发发控制;控制;数据库恢复。数据库恢复。3/368.1 8.1 数据库的安全性及数据库的安全性及数据库的安全性及数据库的安全性及SQL ServerSQL Server的安全管理的安全
2、管理的安全管理的安全管理 数据库的安全性是指保护数据库,以防止不合数据库的安全性是指保护数据库,以防止不合数据库的安全性是指保护数据库,以防止不合数据库的安全性是指保护数据库,以防止不合法的使用造成数据泄密、修改或破坏。法的使用造成数据泄密、修改或破坏。法的使用造成数据泄密、修改或破坏。法的使用造成数据泄密、修改或破坏。4/36DBMS用户OSDB用户标识和鉴别存取控制操作系统安全保护密码存储计算机系统的安全模型5/368.8.2.1 2.1 完整性约束条件及完整性控制完整性约束条件及完整性控制完整性约束条件及完整性控制完整性约束条件及完整性控制8.8.2 2 数据库完整性及数据库完整性及数据
3、库完整性及数据库完整性及SQL ServerSQL Server的完整性控制的完整性控制的完整性控制的完整性控制 数数据据完完整整性性约约束束可可以以分分为为:表表级级约约束束,若若干干元元组组间间、关关系系中中以以及及关关系系之之间间联联系系的的约约束束;元元组组级级约约束束,元元组组中中的的字字段段组组和和字字段段间间联联系系的的约约束束;属属性性级级约约束束,针针对对列列的的类类型型、取取值值范范围围、精精度度、排排序序等等而制定的约束条件。而制定的约束条件。6/361.1.静态级约束静态级约束1)对数据类型的约束。2)对数据格式的约束。3)对取值范围或取值集合的约束。4)对空值的约束。
4、5)其他约束。6)实体完整性约束。7)参照完整性约束。8)函数依赖约束。7/362.动态级约束动态级约束1)1)修改列定义时的约束。修改列定义时的约束。2)2)修改列值时的约束。修改列值时的约束。8/363.完整性控制机制的功能及执行约束完整性控制机制的功能及执行约束(1)(1)完整性控制机制应具有的功能完整性控制机制应具有的功能1)1)定义完整性功能,提供定义完整性约束条件的机制。定义完整性功能,提供定义完整性约束条件的机制。2)2)检检查查完完整整性性功功能能,检检查查用用户户发发出出的的操操作作请请求求,看看其其是是否否违背了完整性约束条件。违背了完整性约束条件。3)3)控控制制完完整整
5、性性功功能能,监监视视数数据据操操作作的的整整个个过过程程,如如果果发发现现有有违违背背了了完完整整性性约约束束条条件件的的情情况况,则则采采取取一一定定的的动动作作来来保保证证数据的完整性。数据的完整性。9/36(2)(2)立即执行约束和延迟执行约束立即执行约束和延迟执行约束 有有关关数数据据操操作作语语句句执执行行完完后后立立即即进进行行完完整整性性检检查查为为立立即即执执行行约约束束;在整个事务执行结束后再进行完整性检查为延迟执行约束。在整个事务执行结束后再进行完整性检查为延迟执行约束。10/365.实现参照完整性要考虑的几个问题实现参照完整性要考虑的几个问题(1)外码能够接受空值的问题
6、(2)在被参照关系中删除元组的问题(3)在参照关系中插入元组时的问题11/36(4)修改关系的主码问题修改关系的主码问题 a.不允许修改主码。如果需要修改主码值,只能先删除该元组,然后再把具有新主码值的元组插入到关系中。b.允许修改主码。允许修改关系主码,但必须保证主码的惟一性和非空,否则拒绝修改。(5)修改表时被参照关系的问题。修改表时被参照关系的问题。a.级联修改。如果要修改被参照关系中的某个元组的主码值,则参照关系中相应的外码值也作相应的修改。b.拒绝修改。如果参照关系中,有外码值与被参照关系中要修改的主码值相同的元组,则拒绝修改。c.置空值修改。修改被参照关系的元组,并将参照关系中相应
7、元组的外码值置空值。12/368.2.2 SQL Server的数据库完整性及实现方法的数据库完整性及实现方法1.SQL Server的数据完整性的种类的数据完整性的种类(1)域完整性域完整性 域完整性为列级和元组级完整性。它为列或列组指定一个有效的数据集,并确定该列是否允许为空。(2)实体完整性实体完整性 实体完整性为表级完整性,它要求表中所有的元组都应该有一个惟一的标识符,这个标识符就是平常所说的主码。(3)参照完整性参照完整性 参照完整性是表级完整性,它维护参照表中的外码与被参照表中主码的相容关系。如果在被参照表中某一元组被外码参照,那么这一行既不能被删除,也不能更改其主码。13/362
8、.SQL Server数据完整性的两种方式数据完整性的两种方式(1)声明数据完整性声明数据完整性 声明数据完整性通过在对象定义中定义、系统本身自动强制来实现。声明数据完整性包括各种约束、缺省和规则。(2)过程数据完整性过程数据完整性 过程数据完整性通过使用脚本语言(主语言或Transact-SQL)定义,系统在执行这些语言时强制完整性实现。14/363.SQL Server实现数据完整性的具体方法实现数据完整性的具体方法(1)SQL Server约束的类型约束的类型15/36(2)数据完整性约束的实现数据完整性约束的实现1.域完整性的实现1)创建默认CREATE DEFAULT CREATE
9、DEFAULT nl_default AS 182)绑定 SP_BINDEFAULT nl_default,学生表.年龄3)解除绑定 SP_UNBINDEFAULT 学生表.年龄 4)删除默认 DROP DEFAULT nl_defaulta.通过建立默认实现完整性16/361)创建规则CREATE RULECREATE RULE xb_rule AS xb=男 OR xb=女2)绑定规则SP_BINDRULE xb_rule,学生表.性别3)解除绑定SP_UNBINDRULE 学生表.性别4)删除默认DROP RULE xb_ruleb.通过建立规则实现完整性17/362.实体完整性的实现C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- New 数据库 保护 SQLServer 技术
限制150内