SQL - Cursor 迴圈

  • 1405
  • 0
  • SQL
  • 2015-03-25

摘要:SQL - 迴圈 Cursor

 

很久沒用過SQL的迴圈了,現在要使用到,乾脆順便複習一下,很多人會有疑問的地方

在Fetch next from 為什麼在迴圈內還要再放同一句,這邊我注解說明了原因,最後執行結果

@@FETCH_STATUS 來做判斷,我故意把 print @@FETCH_STATUS放在Fetch next from

之後,讓我們知道已經超過資料集的狀態是 -1

 

it's the cursor template below.  You can copy it and modify by your demand. 

(下面是提供的Cursor模板,自行拿去複製修改)。

 

DECLARE MY_CURSOR Cursor for
--置放搜尋的SQL
open MY_CURSOR

fetch next from MY_CURSOR into '參數1'


While (@@FETCH_STATUS <> -1) 

Begin
	--迴圈內要做的事情
	fetch next from MY_CURSOR into '參數1'
End

close MY_CURSOR

--將cursor物件從記憶體移除
DEALLOCATE MY_CURSOR