下载此文档

数据库教案完整性.ppt


文档分类:IT计算机 | 页数:约27页 举报非法文档有奖
1/27
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/27 下载此文档
文档列表 文档介绍
数据库教案完整性
完整性约束条件
数据库完整性: 指数据库的正确性和相容性, DBMS提供维护数据库完整性的功能
完整性约束条件: 根据实际应用需求, 数据库中的数据应满足一些规定的条件, 这些条件称为完整性约束条件
完整性约束条件是现实世界真实的反映
完整性检查: 指DBMS中检查数据是否满足完整性条件的机制
完整性约束条件
完整性约束条件分为:
值的约束和结构约束:
指对数据取值类型、
范围、精度等的规
定, 例如对属性规定
某个值集, 规定属性
取值类型、格式(职
工号第一位为字母,
后面是四位数字)
指对数据之间联系的限制, 以关
系库为例:同一关系的不同属性
之间可能满足一定的约束条件(
A1A2); 不同关系之间的属性取
值也可能要满足一定的约束条件
(外键取值)
完整性约束条件
静态约束和动态约束:
立即执行约束和延迟执行约束:
指数据库每一确定状态的数据应满足的约束条件, 例如外键约束等
指DB从一种状态转变为另外一种状态时, 新值和旧值之间应满足的约束条件, 例如工资调整时, 要求新工资不低于旧工资
在执行用户事务时, 对事务中某一更新语句执行完后,马上对此数据检查它的完整性
事务执行结束后, 才检查所涉及的数据是否满足完整性要求, 结果正确事务才可提交
完整性约束条件
例如: begin transaction
update Students set Sno=‘95012’
where Sno=‘95001’;
update SC set Sno=‘95012’
where Sno=‘95001’;
commit
如是立即执行约束, 事务不能成功执行
如是延迟执行约束, 事务可以成功执行
完整性控制
DBMS完整性控制机制包括:
定义功能: 提供定义完整性约束条件的机制
检查功能: 检查用户提供的请求是否违背了完整性约束条件
如果发现用户的操作违背了完整性约束条件, 则采取一定的动作来保证数据的完整性(一般是取消该事务已产生的影响--恢复)
Sybase 的完整性
在Sybase数据库中创建带有数据完整性和参照完整性的表: 把完整性作为表的一部分来说明即完整性约束子句
缺省约束default: 给出列的缺省值
create table Students(…
sex char(1) default ‘M’,
... );
检查约束check constrain: 限定插入列中的值
列级检查约束
Sybase 的完整性
create table publishers( pub_id char(4) not null
constraint chk_pubid check(pub_id in (‘1389’, ‘0736’,
‘0877’) or pub_id like ‘99[0-9][0-9]’)
….)
表级检查约束
create table discounts(discounttype varchar(40) not null,
lowqty int,
hightqty int,
…,
constraint chk_low_hight check(lowqty<=hightqty) );
Sybase 的完整性
主键约束primary key constraint: 限定主键的列不可有重复值, 不可有空值
列级主键约束
create table publishers( pub_id char(4)
constraint pky_pubid primary key clustered,
pub_name varchar(30),
….)
表级主键约束
create tabl

数据库教案完整性 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数27
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库新人
  • 文件大小1.42 MB
  • 时间2021-09-18