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

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

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

2020-07-25 12:55:49
字體:
來源:轉載
供稿:網友

先來看一個概念:

  數據庫事務(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執行外都未執行)。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 双柏县| 平定县| 花垣县| 禹州市| 延长县| 大庆市| 青岛市| 武强县| 新巴尔虎左旗| 永嘉县| 南投市| 阆中市| 信丰县| 那坡县| 锡林郭勒盟| 宁河县| 福州市| 阳城县| 乌兰察布市| 滁州市| 凤庆县| 马山县| 乐山市| 常山县| 兴仁县| 兴安盟| 弥渡县| 泗洪县| 山丹县| 东平县| 刚察县| 隆尧县| 达拉特旗| 安陆市| 汝州市| 佳木斯市| 秦皇岛市| 凤台县| 噶尔县| 甘南县| 桑植县|