- 1、本文档共572页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
本章小结存储过程是一段Transact-SQL语句,用来完成一个功能。使用CREATEPROCEDURE创建存储过程。执行存储过程EXECUTEprocedure_name。创建带输入输出参数的存储过程,需要在CREATEPROCEDURE语句中声明一个或多个变量作为参数修改存储过程是由ALTERPROCEDURE语句来完成的。第9章触发器9.1触发器概述9.1.1触发器的概念触发器是一种特殊类型的存储过程,当在指定表中使用UPDATE、INSERT或DELETE中的一种或多种数据修改命令对数据进行修改时,触发器就会执行。触发器可以查询其他表,而且可以包含复杂的SQL语句。它们主要用于强制复杂的业务规则或要求。触发器还有助于强制引用完整性,以便在添加、更新或删除表中的行时保留表之间已定义的关系。9.1.2触发器的类型与优点1.触发器的类型触发器可以分为AFTER触发器和INSTEADOF触发器2.使用触发器的优点强制比CHECK约束更复杂的数据完整性。使用自定义的错误提示信息。触发器可以通过数据库中的相关表进行级联更改。比较数据库修改前后数据的状态。维护规范化数据。9.2创建和应用触发器CREATETRIGGER语句语法格式如下:?CREATETRIGGERtrigger_nameON{table|view}[WITHENCRYPTION]{????{{FOR|AFTER|INSTEADOF}{[DELETE][,INSERT][,UPDATE]}????????[NOTFORREPLICATION]????????AS????????[{IFUPDATE(column)????????????[{AND|OR}UPDATE(column)]????????????????[...n]????????|IF(COLUMNS_UPDATED(){bitwise_operator}updated_bitmask)????????{comparison_operator}column_bitmask[...n]????????}]????????sql_statement[...n]????}}9.2.1INSERT触发器INSERT触发器通常被用来验证被触发器监控的字段中的数据是否满足要求的标准,以确保数据完整性。这种触发器是在向指定的表中插入记录时被自动执行的。创建的INSERT触发器可以分为AFTER和INSTEADOF两种不同类型的触发器,AFTER类型触发器是在系统执行到INSERT语句时被触发,在INSERT语句执行完毕后再去执行触发器的相关操作;而INSTEADOF类型触发器是在系统执行到INSERT语句时被触发,但在INSERT语句执行前即执行触发器相关操作,而该INSERT语句则不再执行。例9-1在“学生选课”数据库中的“学生”表上创建一个名为xuesheng_tri1的AFTER类型触发器,当用户向“学生”表中添加一条记录时,提示“已成功向学生表中添加一条记录!”例9-1触发器创建后,用户向“学生”表中插入数据时,该触发器将被执行,而且是数据先被插入到表中,然后再执行触发器。例9-2在“学生选课”数据库中的“学生”表上创建一个名为xuesheng_tri2的INSTEADOF类型触发器,当用户向“学生”表中添加一条记录时,提示“您未被授权执行插入操作!”同时阻止用户向“学生”表中添加记录。对应的SQL语句如下:USE学生选课GOCREATETRIGGERxuesheng_tri2ON学生INSTEADOFINSERTASPRINT您未被授权执行插入操作!GO例9-2触发器创建成功后,用户向学生表中插入数据时,该触发器将被执行,其结果是用户看到相应提示,但INSERT语句则没有执行。9.2.2UPDATE触发器在定义有UPDATE触发器的表上执行UPDATE语句时,将触发UPDATE触发器。用户可以通过使用该触发器来提示或者限制用户进行更新操作,用户也可以在UPDATE触发器中通过定义IFUPDATE(columnname)语句来实现当用户对表中特定的列更新时操作被阻止,从而来保护特定列的信息。如果用户需要实现多个特定列中的任意一列被更新时操作被阻止,可以在触发器定义中通过使用多个IFUPDATE(columnname)语句在多个特定列上来分别实现。例9-3在“学生选课”数据库中的
您可能关注的文档
- 房地产开发企业会计与纳税实务 -全套PPT课件.pptx
- 绩效考核与管理——理论、方法、实务(视频指导版)全套PPT课件.pptx
- 公关礼仪与口才-王芳-全套PPT课件.ppt
- 计算机专业英语(第3版)全套PPT课件.pptx
- 高级财务会计 全套PPT课件.ppt
- 会计学原理(微课第2版)全套PPT课件.ppt
- 国际贸易单证实务全套PPT课件.ppt
- 高级财务管理 张绪军 全套PPT课件.ppt
- 管理会计实务(附微课第3版)全套PPT课件.ppt
- 金融市场学(第2版)全套PPT课件.ppt
- 中国国家标准 GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- 《GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计》.pdf
- 中国国家标准 GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- 《GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置》.pdf
- 中国国家标准 GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- GB/T 17889.4-2024梯子 第4部分:铰链梯.pdf
- 《GB/T 17889.4-2024梯子 第4部分:铰链梯》.pdf
最近下载
- 百日咳试题附有答案.docx VIP
- 2024年广东省深圳市光明区人大常委会办公室招聘一般类岗位专干12人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
- 高中语文任务驱动型材料作文:枯燥与热闹审题指导(含解析).docx VIP
- 某镇卫生院污水设计方案.pdf VIP
- 2024年广东深圳市光明区人大常委会办公室招聘一般类岗位专干3人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
- 中考数学经验交流会发言稿.pdf
- 2024年7月广东省深圳市光明区人大常委会办公室招聘10人历年【高频考点汇总500题】模拟卷及参考答案详解.docx VIP
- 《溜冰圆舞曲和雷鸣电闪波尔卡》精品课件2023.pptx
- 水利项目安全评价报告.docx
- 2024年7月广东省深圳市光明区人大常委会办公室招聘10人历年【综合基础知识500题】高频考点模拟试题及参考答案解析.docx VIP
文档评论(0)