资源预览内容
第1页 / 共30页
第2页 / 共30页
第3页 / 共30页
第4页 / 共30页
第5页 / 共30页
第6页 / 共30页
第7页 / 共30页
第8页 / 共30页
第9页 / 共30页
第10页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第7章 存储过程、触发器、游标及事务,7.1 存储过程,7.1.1 存储过程概述 1认识存储过程 2存储过程的优点 3存储过程的分类,(1)存储过程已在服务器注册。 (2)存储过程可以强制应用程序的安全性。,(3)允许进行模块化程序设计。 (4)存储过程是命名代码,允许延迟绑定。 (5)存储过程可以降低网络负载。,7.1.2 使用CREATE PROCEDURE语句创建存储过程,1创建简单存储过程 2使用带有参数的存储过程 3使用带有通配符参数的存储过程 4使用OUTPUT参数,图7-1 执行带输出参数的存储过程,7.1.3 执行存储过程,执行例7-1所创的存储过程“SEL_销售总金额”,结果如图7-2所示。,图7-2 执行存储过程SEL_销售总金额,图7-3 执行存储过程SEL_销售总金额_cs,7.1.4 使用ALTER PROCEDURE语句修改存储过程 7.1.5 删除存储过程 1通过“对象资源管理器”窗口删除存储过程 2使用DROP PROCEDURE语句删除存储过程,图7-4 在“对象资源管理器”中删除存储过程,7.2 触发器,7.2.1 DML触发器 DML触发器是当数据库服务器中对表或视图发出UPDATE、INSERT或DELETE语句等数据操作语言(DML)事件时要执行的操作。,表7-1 AFTER触发器和INSTEAD OF触发器的功能比较,1使用CREATE TRIGGER语句创建DML触发器 2使用ALTER TRIGGER语句修改DML触发器 3使用DROP TRIGGER语句删除DML触发器,7.2.2 DDL触发器,1使用CREATE TRIGGER语句创建DDL触发器 2使用ALTER TRIGGER语句修改DDL触发器 3使用DROP TRIGGER语句删除DDL触发器,7.2.3 查看触发器,1查看触发器基本信息 2查看触发器的定义,图7-5 查看触发器Trigger2的基本信息,图7-6 查看触发器Trigger2的定义,7.3 游标,7.3.1 游标概述 7.3.2 在存储过程或触发器中使用Transact-SQL游标 1声明变量 2声明游标 3打开游标 4从游标中提取数据 5关闭游标 6释放游标,图7-7 例7-22执行情况,图7-8 利用游标修改表中的数据,7.3.3 关于FETCH_STATUS,FETCH_STATUS返回针对连接当前打开的任何游标发出的上一条游标FETCH 语句的状态,具体返回值及描述如表7-2所示。,表7-2 FETCH_STATUS的返回值及描述,图7-9 利用游标遍历显示整个结果集,7.4 事务,7.4.1 显式事务的处理 1BEGIN TRANSACTION 2COMMIT TRANSACTION 3ROLLBACK TRANSACTION,7.4.2 隐式事务,(1)启动SQL Server Management Studio并打开一个“新建查询”窗口。 (2)设置连接为隐式事务模式。 (3)检验事务是否已经启动。,(4)使用TRANCOUNT测试一个事务是否已经打开。 (5)结果为“1”表示当前连接已经打开了一个事务。结果为“0”表示当前没有事务,若结果大于“1”表示有嵌套事务。,(6)向表中插入一条记录后再次检查TRANCOUNT。 (7)回滚该事务并再次检查TRANCOUNT。可以看出,执行完ROLLBACK TRANSACTION 语句后,TRANCOUNT的值转变为“0”。,(8)查询表Table1中的数据。 (9)关闭隐式事务。,7.4.3 自动提交事务,自动提交模式是SQL Server的默认事务管理模式。 每个Transact-SQL语句完成时都被提交或回滚。 若一个语句被成功执行,则提交该语句;若遇到错误,则回滚该语句。,
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号