最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MSSQL事務(wù)的存儲過程

 更新時間:2014年08月07日 09:49:15   投稿:hebedich  
這篇文章主要介紹了MSSQL事務(wù)的存儲過程,需要的朋友可以參考下

在酒店管理系統(tǒng)開發(fā)中,我們會創(chuàng)建房間表和房間類型表(房型表)這兩個表,如下圖所示:

房型表:RoomType

      
    
房間表:Room

 

首先這兩個表的關(guān)系:Room是從表,RoomType是主表,兩表有主外鍵關(guān)系,RoomType.rTypeId=Room.rTypeId

分析這兩個表,我們會發(fā)現(xiàn)這樣一個問題:在房間表和房型表管理中,當(dāng)我們修改或者刪除一個RoomType表,對應(yīng)的Room表我們也要做修改和刪除,那么我們怎么解決這個問題呢?首先可以在數(shù)據(jù)庫中設(shè)置級聯(lián)刪除,或者利用觸發(fā)器也可以解決、、、這些方法都有一定的弊端,在實際開發(fā)中,我們會采取使用事務(wù)來解決這個問題,這種方法簡單而且開發(fā)效率高,容易維護。

要求:在刪除RoomType的同時把Room表中存在該房型的也刪除.

思路:在刪除RooType的時候,我們通過RoomType.rTypeId=Room.rTypeId找到Room中存在該房型的記錄,把也它刪掉。

說明:刪除不是把整條記錄從數(shù)據(jù)庫刪除,是將數(shù)據(jù)標(biāo)識改為1,0是代表未刪除。

下面介紹刪除的存儲過程:

代碼:

 ALTER procedure [dbo].[usp_DelToomType] --創(chuàng)建刪除房型的存儲過程
 @rTypeId int --房型參數(shù)
 as
 begin transaction --開始事務(wù)
  declare @error int --定義一個變量標(biāo)識錯誤號
  update RoomType set rTypeIsDel=1 where rTypeId=@rTypeId --根據(jù)條件刪除房型,rTypeIsDel=1標(biāo)識刪除,0標(biāo)識未刪除
  set @error+=@@ERROR
  if(@error<>0) --不等于0說明這一句執(zhí)行出現(xiàn)錯誤
  rollback transaction --事務(wù)回滾
  update Room set roomIsDel=1 where rTypeId=@rTypeId --根據(jù)條件刪除房間
  set @error+=@@ERROR 
  if(@error<>0) --不等于0說明這一句執(zhí)行出現(xiàn)錯誤
  rollback transaction --事務(wù)回滾
 else 
   commit transaction --提交事務(wù)

最后,數(shù)據(jù)層直接調(diào)用存儲過程的方法即可完成刪除房型的同時把存在該房型的房間也刪除。

相關(guān)文章

  • SQL中PIVOT函數(shù)的用法小結(jié)

    SQL中PIVOT函數(shù)的用法小結(jié)

    PIVOT 是 SQL Server 中的一個功能,用于將行轉(zhuǎn)換為列,本文主要介紹了SQL中PIVOT函數(shù)的用法小結(jié),具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • 經(jīng)典SQL語句大全

    經(jīng)典SQL語句大全

    非常不錯的和excel等文檔實例結(jié)合的sql,下列語句部分是Mssql語句,不可以在access中使用。
    2008-06-06
  • 必須會的SQL語句(八) 數(shù)據(jù)庫的完整性約束

    必須會的SQL語句(八) 數(shù)據(jù)庫的完整性約束

    這篇文章主要介紹了sqlserver中數(shù)據(jù)庫的完整性約束使用方法,需要的朋友可以參考下
    2015-01-01
  • SQL?Server如何建表的詳細圖文教程

    SQL?Server如何建表的詳細圖文教程

    創(chuàng)建表之前一定要先了解數(shù)據(jù)類型與約束,這樣我們才能創(chuàng)建正確的表,下面這篇文章主要給大家介紹了關(guān)于SQL?Server如何建表的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • sql2000掛起無法安裝的問題的解決方法

    sql2000掛起無法安裝的問題的解決方法

    關(guān)于:以前的某個程序安裝已在安裝計算機上創(chuàng)建掛起的文件操作 解決辦法
    2008-11-11
  • 生成300個不同的隨機數(shù)的SQL語句

    生成300個不同的隨機數(shù)的SQL語句

    最近在做一個項目,涉及到要生成N個8位的不重復(fù)的純數(shù)字隨機數(shù)作為優(yōu)惠碼,研究了一番,把結(jié)果分享給大家
    2014-08-08
  • SQL Server中Check約束的學(xué)習(xí)教程

    SQL Server中Check約束的學(xué)習(xí)教程

    這篇文章主要介紹了SQL Server中Check約束的學(xué)習(xí)教程,包括對啟用Check約束來提升性能的介紹,需要的朋友可以參考下
    2015-12-12
  • SQL?Server語句日期格式查找的方法示例詳解

    SQL?Server語句日期格式查找的方法示例詳解

    在SQL?Server中,處理日期格式和查找特定日期格式的記錄是一個常見的需求,SQL?Server提供了多種函數(shù)和格式選項來處理和比較日期,以下是一個詳細的示例,展示了如何根據(jù)特定日期格式查找記錄,需要的朋友可以參考下
    2024-09-09
  • SQLSERVER?出現(xiàn)死鎖查找方法和解決辦法(推薦)

    SQLSERVER?出現(xiàn)死鎖查找方法和解決辦法(推薦)

    這篇文章主要介紹了SQLSERVER?出現(xiàn)死鎖查找方法和解決辦法(推薦),文中講解了查詢死鎖語句,殺死死鎖的解決方法,需要的朋友可以參考下
    2024-02-02
  • sqlserver清空service broker中的隊列的語句分享

    sqlserver清空service broker中的隊列的語句分享

    在我們開發(fā)service broker應(yīng)用時候,可能用于測試或者客戶端沒有配置正確等導(dǎo)致服務(wù)端隊列存在很多垃圾隊列,不便于我們排查錯誤,我們可以使用SQL腳本來清空服務(wù)端這些垃圾數(shù)據(jù)
    2011-08-08

最新評論

张家口市| 文山县| 建宁县| 峡江县| 望江县| 交口县| 阿勒泰市| 石景山区| 和林格尔县| 南华县| 万载县| 根河市| 什邡市| 平遥县| 陆川县| 土默特右旗| 台前县| 灌云县| 靖西县| 济源市| 且末县| 武隆县| 观塘区| 芜湖市| 呼图壁县| 三都| 永春县| 沈阳市| 宁晋县| 葵青区| 峨边| 莱芜市| 莫力| 临泽县| 蒙山县| 麦盖提县| 射阳县| 南投市| 独山县| 中牟县| 文昌市|