欢迎来到天天文库
浏览记录
ID:2402719
大小:1.46 MB
页数:22页
时间:2017-11-15
《sql+server的事务、游标、存储过程及触发器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、okcnw内容提要:本文将讲述数据库的四个重要概念:事物、游标、存储过程以及触发器。主要内容包括事务的概念及函数、游标的概念及语句、存储过程概述及其函数、触发器概述及其函数。关键字:事物、游标、存储过程、触发器引言:在关系数据库系统中,事务指的是组成为独立单元的一个或多个SQL操作的可恢复的序列。对数据库的任何一次读或写都是在某次事务内完成的。游标类似一个指针,指向某一个特定的行,根据游标的当前位置,获取和修改数据库表中的当前行。存储过程是保存起来的可以接受和返回用户提供的参数的SQL语句的集合。触发器是一种
2、特殊的存储过程,在用户试图对指定的表执行指定的数据修改语句时自动执行,常常用于强制业务规则和数据完整性。正文:1事务的概念及函数在关系数据库系统中,事务指的是组成为独立单元的一个或多个SQL操作的可恢复的序列。对数据库的任何一次读或写都是在某次事务内完成的。1.1BEGINDISTRIBUTEDTRANSACTION功能:指定一个分布式事务的起始。函数原型:BEGINDISTRIBUTEDTRAN[SACTION][transaction_name
3、@tran_name_variable]参数说明:表1所示为
4、BEGINDISTRIBUTEDTRANSACTION命令参数。表1BEGINDISTRIBUTEDTRANSACTION命令参数w.etok函数返回值:若操作失败,返回SQLServer错误消息,视具体情况而定。示例:/*************************************************代码编号:1*功能:指定一个分布式事务的起始。*简介:事务开始,更新表employees的属性。************************************************/
5、USENorthwind//操作Northwind数据库GOBEGINDISTRIBUTEDTRANSACTION//分布式事务的开始UPDATEemployees//更新表employeesSETFirstName='McDonald'WHEREHomePhone='(206)555-9857'//设置电话为(206)555-9857的FirstName为McDonaldCOMMITTRAN//结束事务※1※o参数名含义transaction_name给BEGINTRANSACTION上的事务指派的名称。必
6、须符合标识符规则,但只使用事务名称的前32个字符@tran_name_variable用户定义的、含有有效事务名称的变量的名称。必须用char、varchar、nchar或nvarchar数据类型声明该变量SQLwServerokcnGO运行结果:运行结果如图1所示。etokokcn1.2COMMITTRANSACTION功能:指明事务的结束。函数原型:COMMIT[TRAN[SACTION][transaction_name
7、@tran_name_variable]]参数说明:表2所示为COMMITTRAN
8、SACTION命令参数。表2COMMITTRANSACTION命令参数..n函数返回值:.nbo若操作失败,返回SQLServer错误消息,视具体情况而定。示例:/*************************************************代码编号:2*功能:指明事务的结束。*简介:事务结束,更新表employees的属性。************************************************/USENorthwind//作Northwind数据库GOBEGIN
9、TRANSACTION//布式事务的开始UPDATEemployees//新表employees//置电话为(206)555-9857的FirstName为McDonaldSETFirstName='McDonald'WHEREHomePhone='(206)555-9857'COMMITgo运行结果:运行结果如图2所示。.cww图2※2※o参数名含义transaction_nameMicrosoftSQLServer忽略该参数,由前面的BEGINTRANSACTION指派事务名称。必须符合标识符规则,但只使
10、用事务名称的前32个字符@tran_name_variable用户定义的、含有有效事务名称的变量的名称。必须用char、varchar、nchar或nvarchar数据类型声明该变量图1okokcn1.3ROLLBACKTRANSACTION功能:撤销对数据库作出的所有改变,返回到事务开始之前的状态。函数原型:ROLLBACK[TRAN[SACTION][transaction_name
11、@tra
此文档下载收益归作者所有