zoukankan      html  css  js  c++  java
  • Sqlserver 存储过程中结合事务的代码

    Sqlserver 存储过程中结合事务的代码 

    --方式一 

    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[USP_ProcedureWithTransaction_Demo]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) 
    drop procedure [dbo].[USP_ProcedureWithTransaction_Demo] 
    GO 
    -- ============================================= 
    -- Author: <ChengXiaoming> 
    -- Create date: <2010-06-11> 
    -- Description: <Demo:存储过程中使用事务> 
    -- ============================================= 
    Create PROCEDURE [dbo].[USP_ProcedureWithTransaction_Demo] 
    As 
    Begin 
    SET XACT_ABORT ON 
    Begin Transaction 
    Insert Into Lock(LockTypeID) Values('A')--此语句将出错,LockTypeID为Int类型 
    Update Lock Set LockTypeID = 2 Where LockID = 32 
    Commit Transaction 
    SET XACT_ABORT OFF 
    End 
    GO 
    --方式二 
    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[USP_ProcedureWithTransaction_Demo]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) 
    drop procedure [dbo].[USP_ProcedureWithTransaction_Demo] 
    GO 
    -- ============================================= 
    -- Author: <ChengXiaoming> 
    -- Create date: <2010-06-11> 
    -- Description: <Demo:存储过程中使用事务> 
    -- ============================================= 
    Create PROCEDURE [dbo].[USP_ProcedureWithTransaction_Demo] 
    As 
    Begin 
    Begin Transaction 
    Insert Into Lock(LockTypeID) Values('A')--此语句将出错,LockTypeID为Int类型 
    Update Lock Set LockTypeID = 1 Where LockID = 32 
    Commit Transaction 
    If(@@ERROR <> 0) 
    Rollback Transaction 
    End 
    GO 
    --方式三 
    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[USP_ProcedureWithTransaction_Demo]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) 
    drop procedure [dbo].[USP_ProcedureWithTransaction_Demo] 
    GO 
    -- ============================================= 
    -- Author: <ChengXiaoming> 
    -- Create date: <2010-06-11> 
    -- Description: <Demo:存储过程中使用事务> 
    -- ============================================= 
    Create PROCEDURE [dbo].[USP_ProcedureWithTransaction_Demo] 
    As 
    Begin 
    Begin Try 
    Begin Transaction 
    Update Lock Set LockTypeID = 1 Where LockID = 32--此语句将出错,LockTypeID为Int类型 
    Insert Into Lock(LockTypeID) Values('A') 
    Commit Transaction 
    End Try 
    Begin Catch 
    Rollback Transaction 
    End Catch 
    End 
    GO 
    Exec [USP_ProcedureWithTransaction_Demo] 
  • 相关阅读:
    CSS命名规范
    css的img移上去边框效果及CSS透明度
    css动画之波纹
    css翻页样式
    关于Chrome的开发15个小技巧
    css三角形
    css限制图片大小,避免页面撑爆
    网易2016研发project师笔试题
    遇到 Form 性能问题怎么办 performance issue
    一个美丽的java烟花程序
  • 原文地址:https://www.cnblogs.com/wuxiang/p/3668620.html
Copyright © 2011-2022 走看看