SQL事务用法begin tran,commit tran和rollback tran的用法

来源:asp之家 时间:2012-01-05 18:58:51 

具体用法如下:

代码如下:


-- =============================================
-- Author: cynimoon
-- Create date: 2009-10-09
-- Description: 示例存储过程
-- =============================================
-- EXEC TEST_PROC '文综','包括历史,地理,政治','政治','文综的一门'
CREATE PROCEDURE [dbo].[TEST_PROC]
@A_Name NVARCHAR(20), -- A表姓名
@A_Remark NVARCHAR(4000), -- A表备注
@B_Name NVARCHAR(20), -- B表姓名
@B_Remark NVARCHAR(4000) -- B表备注
AS
BEGIN TRY
BEGIN TRAN
-- 在A表中插入数据
INSERT INTO [dbo].[A]
( [A_Name]
, [A_Remark] )
VALUES
( @A_Name
, @A_Remark )
-- 在B表中插入数据
INSERT INTO [dbo].[B]
( [A_ID]
, [B_Name]
, [B_Remark] )
VALUES
( @@IDENTITY -- 返回最后插入的标识值
, @B_Name
, @B_Remark )
COMMIT TRAN
END TRY
BEGIN CATCH
ROLLBACK TRAN
INSERT INTO [dbo].[ErrorLog]
( [EL_Procedure] -- 异常存储过程名称
, [EL_OperateTime] ) -- 报异常时间
VALUES
( 'TEST_PROC'
, CONVERT(DATETIME,GETDATE(),20) )
END CATCH


注:1. @@IDENTITY的作用是返回最后插入的标识值。
2. 我在rollback tran中加入一个专门记录异常的表,以便产于异常发生的时间和确定报异常的存储过程的名称。
原文链接:
begin tran 可以理解成新建一个还原点。
commit tran提交这个自begin tran开始的修改
rollback tran 表示还原到上个还原点。

标签:begin_tran,commit_tran,rollback_tran
0
投稿

猜你喜欢

  • asp多关键词查询方案

    2008-05-09 12:24:00
  • 智能录入表格[适合BS模式项目的录入页面]

    2008-03-09 19:02:00
  • 排序与检索

    2008-05-18 13:09:00
  • SWFObject2.0: 基于Javascript的Flash媒体版本检测与嵌入模块

    2009-08-19 13:24:00
  • 如何由Sybase向SQL Server移植数据库

    2009-01-20 15:56:00
  • ASP使用组件在线发E-mail的2个函数

    2008-06-12 07:13:00
  • div中class与id的区别及应用

    2007-09-22 08:37:00
  • Oracle 8i在P4上的安装

    2010-07-31 13:19:00
  • 从mysql到oracle你必须了解的50件事儿

    2010-08-05 14:36:00
  • SQL Server小知识:Processor Affinity

    2008-11-24 20:50:00
  • 纠结于ajax开发中 response的contentType 问题

    2008-12-11 13:46:00
  • 停止密码输入掩饰?[译]

    2009-07-22 18:44:00
  • 说说tab设计

    2009-07-26 09:56:00
  • base href 使用方法详解

    2008-05-18 13:27:00
  • OpenSearch 初探

    2008-06-19 12:06:00
  • 隐藏并修改文件的最后修改时间的asp-webshell

    2009-02-28 13:31:00
  • 用户分类浅谈

    2009-09-27 12:14:00
  • Web2.0视觉风格进化论 之一

    2007-11-03 19:58:00
  • 学习ASP和编程的28个观点

    2008-06-27 12:57:00
  • [图]关于网站开发中缓存 cache应用

    2008-08-19 18:14:00
  • asp之家 网络编程 m.aspxhome.com