sql存储过程和触发器.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 存储过程和触发器 存储过程 触发器 7.1 存储过程 7.1.1 存储过程类型 7.1.2 创建存储过程 7.1.2 创建存储过程 7.1.2 创建存储过程 7.1.2 创建存储过程 7.1.3 执行存储过程 7.1.3 举例 7.1.4 修改存储过程 7.1.5 删除存储过程 7.2 触发器 7.2.1 触发器概述 7.2.1 触发器概述 触发器可以完成的任务 数据库中相关表的级联操作 不接受或回滚违反参照完整性的数据修改事务 强制执行远复杂于CHECK约束的限制约束 通过INSERT,UPDATE和DELETE语句比较数据修改前后的状态,并根据修改,执行一定的操作. 7.2.1 触发器概述 7.2.1 触发器概述 利用 CREATE TRIGGER 命令创建触发器 CREATE TRIGGER trigger_name ON ( table | view ) [ WITH ENCRYPTION ] { {{ FOR | AFTER | INSTEAD OF} { [ DELETE ] [ , ] [ INSERT ] [ , ] [ UPDATE ] } [WITH APPEND] [ NOT FOR REPLICATION ] AS Sql_statement[…n] } | {{ FOR | AFTER | INSTEAD OF} { [ DELETE ] [ , ] [ INSERT ] [ , ] [ UPDATE ] } [WITH APPEND] [ NOT FOR REPLICATION ] AS { IF UPDATE (column) [ { AND | OR } UPDATE (column) ] [ ...n | IF (COLUMNS_UPDATED () {bitwise_operator }updated_bitmask) { comparison_operator } column_bitmask [ ...n ] } sql_statement [ ...n ] } } 7.2.2 创建触发器 7.2.2 创建触发器 7.2.3 修改触发器 7.2.4 删除触发器 * 大型数据库——SQL Server 2000程序设计 * 存储过程是一种数据库对象,将执行计划存储在数据库的服务器中。它的运行速度比独立运行同样的程序要快。 存储过程类型 创建存储过程 执行存储过程 修改存储过程 删除存储过程 系统存储过程 存储在master数据库中,以sp_为前缀。可以在其他 数据库中对其进行调用。 用户自定义存储过程 由用户创建并能完成某一特定功能的存储过程。或 称本地存储过程。包括临时存储过程、远程存储过 程、扩展存储过程。 临时存储过程又包括局部的和全局的临时存储过 程,前者在过程名的前面带#,后者在过程名的前面 带##。全局临时存储过程对所有用户都可见。 扩展存储过程的前缀是xp_ 。 用企业管理器创建 用T-SQL命令创建 存储过程的三个组成部分: (1)所有的输入参数以及传给调用者的输出参数; (2)被执行的针对数据库的操作语句,包括调用其他 存储过程的语句; (3)返回给调用者的状态值,以指明调用是成功还是 失败。 T-SQL创建存储过程的基本语法格式: CREATE PROC[EDURE] 存储过程名称 参数定义 AS SQL语句 例7.1:创建存储过程,实现查询所有学生信息的功能。 Create proc proc_7_1 As Select * From xsqk 思考:创建存储过程,实现查询所有学生的学号、姓名、所选课程号、课程名、成绩及学分信息的功能。 例7.2:创建存储过程proc_7_2,要求实现根据学生学号,产生不同结果,如果该学生信息不存在,则显示“无此学号的学生!”,否则返回该学生的基本信息。 Create proc proc_7_2 @sno char(8) As If exists(Select * From xsqk where 学号= @sno) select * From xsqk where 学号= @sno Else print ‘无此学号的学生!’ 思考:创建存储过程testproc2,实现根据学生的学号,查询此学生的学号、姓名、所选课程号、课程名、成绩及学分等信息。 说明: (1)在一个批处理中,Create procedure语句不能与其 他SQL语句合并在一起。 (2)数据库所有者具有默认的

文档评论(0)

cjp823 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7060131150000004

1亿VIP精品文档

相关文档