程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> Sql server存儲過程中常見游標循環用法

Sql server存儲過程中常見游標循環用法

編輯:關於SqlServer
原文:Sql server存儲過程中常見游標循環用法

用游標,和WHILE可以遍歷您的查詢中的每一條記錄並將要求的字段傳給變量進行相應的處理

DECLARE 
@A1 VARCHAR(10),
@A2 VARCHAR(10),
@A3 INT
DECLARE YOUCURNAME CURSOR FOR SELECT A1,A2,A3 FROM YOUTABLENAME 
OPEN YOUCURNAME 
fetch next from youcurname into @a1,@a2,@a3 
while @@fetch_status<>-1
 begin 
--您要執行的操作寫在這裡 
fetch next from youcurname into @a1,@a2,@a3 
end 
close youcurname 
deallocate youcurname

 

再加上異常捕捉和事務,完整過程如下:

Create PROCEDURE  [dbo].[Usp_CreatePanicBuyingCode](
 @OrderNumber VARCHAR(50))
AS  
DECLARE 
@A1 VARCHAR(10),
@A2 VARCHAR(10),
@A3 INT
  begin try  
    begin tran 
   DECLARE youcurname CURSOR  FOR SELECT A1,A2,A3 FROM YOUTABLENAME
OPEN youcurname
fetch next from youcurname into @a1,@a2,@a3
while @@fetch_status<>-1
begin
--您要執行的操作寫在這裡
fetch next from youcurname into @a1,@a2,@a3
end
close youcurname
deallocate youcurname
COMMIT TRAN  
end try   
begin catch   
    ROLLBACK  
end catch  
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved