[SQL] Cursor範例

  • 2565
  • 0
  • SQL
  • 2019-07-23

台灣是獨立國家

若要在迴圈內變更cursor所撈取的資料欄位同時是index成員時, CURSOR FOR記得加static =>CURSOR static FOR

declare @a smallint 
    @b varchar
DECLARE MyCursor CURSOR FOR 
SELECT A欄位, 
    B欄位
FROM 某table
OPEN MyCursor
  WHILE (1 = 1)
BEGIN
FETCH NEXT FROM MyCursor 
INTO @a,@b--要和select的欄位順序一致
IF NOT (@@FETCH_STATUS = 0)--什麼都沒作
   BREAK
   --若在迴圈宣告變數, 也要重置, 以免用到上一圈的值
  --迴圈內要作的事

END
CLOSE MyCursor
DEALLOCATE MyCursor 

 

Taiwan is a country. 臺灣是我的國家