国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

淺析SQL Server中包含事務的存儲過程

2024-08-31 01:02:22
字體:
來源:轉載
供稿:網友
數據庫事務(Database Transaction) ,是指作為單個邏輯工作單元執行的一系列操作,要么完整地執行,要么完全地不執行。那么在存儲過程里添加事務,則可以保證該事務里的所有sql代碼要么完全執行要么完全不執行。
 
 

先來看一個概念:

  數據庫事務(Database Transaction) ,是指作為單個邏輯工作單元執行的一系列操作,要么完整地執行,要么完全地不執行。那么在存儲過程里添加事務,則可以保證該事務里的所有sql代碼要么完全執行要么完全不執行。

  舉個簡單的帶事務的存儲過程:

Begin    Set NOCOUNT ON; --不返回影響行數    Set XACT_ABORT ON; --使用存儲過程執行事務需要開啟XACT_ABORT參數(默認為OFF)      delete from table1 where name='' --刪除數據sql1    begin tran tran1 --開始一個事務tran1      delete from table1 where name='' --刪除數據sql2    save tran tran2 --保存一個事務點tran2      update table2 set name='' where id='' --修改數據sql3      if @@error<>0 --判斷修改數據有沒有錯誤(@@error表示返回與@@ERROR 最近的語句(即sql3)的非零的錯誤碼,沒有錯誤則返回0)        begin          rollback tran tran2 --回滾事務到tran2的還原點          commit tran tran1 --提交事務tran1        end      else --沒有出錯則提交事務tran1        commit tran tran1 --提交事務tran1  End

  如果sql3執行失敗,則會回滾到事務tran2的創建處(相當于出來sql1和sql2執行外都未執行)。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 黑河市| 瓮安县| 宜君县| 夹江县| 河间市| 宁波市| 务川| 马山县| 长泰县| 东乌| 萍乡市| 利津县| 柘城县| 咸宁市| 石河子市| 青铜峡市| 碌曲县| 镇巴县| 正镶白旗| 高雄市| 施甸县| 晴隆县| 安阳县| 保亭| 页游| 武陟县| 梓潼县| 兰坪| 木兰县| 石渠县| 高台县| 清水县| 保靖县| 德兴市| 东明县| 灯塔市| 兴文县| 张掖市| 宜川县| 金华市| 资源县|