SQL Server--一個存儲過程對同一個字段執行兩種Update


需求:

服務器程序被界面點擊“置零”按鈕后,所有未完成的任務的狀態都置為異常結束。

但分兩種情況:

  1. 0<=Status<40狀態為未完成的任務1,其異常結束狀態為50
  2. 60<=Status<100狀態為未完成的任務2,其異常結束狀態為110

寫在數據庫的同一個存儲過程中完成,主題為13-22行:

 1 USE [HumidifyMachine]
 2 GO
 3 
 4 /****** Object:  StoredProcedure [dbo].[sp_UpdateTaskEndWithException]    Script Date: 2020/3/9 16:02:45 ******/
 5 SET ANSI_NULLS ON
 6 GO
 7 
 8 SET QUOTED_IDENTIFIER ON
 9 GO
10 
11 CREATE procedure [dbo].[sp_UpdateTaskEndWithException]
12 as
13 if exists(select * from T_Task where Status>=0 and Status<40)
14     begin
15     Update T_Task 
16         set Status=50 where Status>=0 and Status<40
17     end
18 if exists(select * from T_Task where Status>=60 and Status<100)
19     begin
20     Update T_Task
21         set Status=110 where Status>=60 and Status<100
22     end
23 GO

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM