- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库完整性(续) 触发器(Trigger) 所谓触发器就是一系列SQL语句,当对数据库做修改(包括插入、删除和更新)时,它自动被系统执行。 设置触发器机制必须满足的两个条件:①指明什么条件下触发器被执行,即触发条件;②指明触发器执行的动作是什么,即触发什么。 数据库完整性(续) 触发器的利弊: 可以进行更为复杂的检查和操作,具有更精细和更强大的数据控制能力,能够保证数据库的一致性; 检测和维护触发器需要很大的开销,降低了数据库增、删、改的效率! 数据库完整性(续) 定义触发器 CREATE TRIGGER 触发器名 { BEFORE | AFTER} 触发事件 ON 表名 FOR EACH {ROW | STATEMENT} [WHEN 触发条件] 触发动作体; 数据库完整性(续) 说明: 1. 创建者:表的拥有者 2. 触发器名 3. 表名:触发器的目标表 4. 触发事件:INSERT、DELETE、UPDATE 5. 触发器类型 行级触发器(FOR EACH ROW) 语句级触发器(FOR EACH STATEMENT) 数据库完整性(续) [例] 定义一个BEFORE行级触发器,为教师表Teacher定义完整性规则“讲师的工资不得低于3000元,如果低于3000元,自动改为3000元”。 CREATE TRIGGER Insert_Or_Update_Sal BEFORE INSERT OR UPDATE ON Teacher /*触发事件是插入或更新操作*/ FOR EACH ROW /*行级触发器*/ AS BEGIN /*定义触发动作体,是PL/SQL过程块*/ IF (new.Job=‘讲师) AND (new.Sal 3000) THEN new.Sal :=3000; END IF; END; 数据库完整性(续) 激活触发器 触发器的执行,是由触发事件激活的,并由数据库服务器自动执行。 一个数据表上可能定义了多个触发器。 同一个表上的多个触发器激活时遵循如下的执行顺序: (1) 执行该表上的BEFORE触发器; (2) 激活触发器的SQL语句; (3) 执行该表上的AFTER触发器。 数据库完整性(续) 删除触发器 DROP TRIGGER 触发器名 ON 表名; 触发器必须是一个已经创建的触发器,并且只能由具有相应权限的用户删除。 [例] 删除教师表Teacher上的触发器Insert_Sal。 DROP TRIGGER Insert_Sal ON Teacher; 数据库完整性(续) 完整性约束总结: 约束实际上就是对数据库的一种限制。可以把很多内容都看作是数据库的约束。如,定义在一个关系上的约束可以有:①域约束②DEFAULT(缺省值约束)③NOT NULL(非空值约束)④PRIMARY KEY(主码约束)⑤FOREIGN KEY(外码约束)⑥CHECK(check约束) 数据库完整性(续) 约束的一致性检查顺序: ⑥ 对有FOREIGN KEY约束的被参照表的检查 ⑦ PRIMARY KEY ⑧ 触发器 ① 域约束② DEFAULT③ NOT NULL④ CHECK ⑤ 对有FOREIGN KEY约束的参照表的检查 数据库完整性练习 设计一个触发器,当插入的学生元组性别为空值时,自动填写‘男’。 在Oracle中利用序列和触发器实现SQL Server支持的自动增量标识列(主码)。 数据库的安全性与完整性 本讲内容结束! 数据库系统 数据库系统 数据库系统 数据库系统 第五讲 数据库的安全性与完整性 安全性与完整性 一、数据库的安全性 数据库安全性 数据库安全面临的问题: 编写合法程序绕过DBMS及其授权机制; 直接或编写应用程序执行非授权操作; 通过多次合法查询数据库从中推导出一些保密数据(统计数据库)。 数据库安全性(续) 计算机系统的安全模型
您可能关注的文档
- 游标卡尺使用(课堂).ppt
- 一种以太网MAC控制器及PHY接口的设计及实现.pdf
- 第十三章 经济数学复习题之一.pdf
- 离散数学--6.4几种特殊图.ppt
- 气象灾害预报预警应急工作问题分析及建议.pdf
- 包含ZigBee传感与控制解决方案的经济高效的无线个人区域网络.pdf
- 碳配额交易体系下企业低碳产品定价和最优碳排放策略_马秋卓.pdf
- 包含热塑性聚氨酯与丙烯腈-苯乙烯-丙烯酸酯共聚物(ASA)的混合物.pdf
- 高一语文兰亭集序教材.ppt
- 路由器WDS设置教程解析.pdf
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
文档评论(0)