Analytics

2010年9月2日 星期四

[MS SQL]如何 撰寫CURSOR迴圈(How to write CURSOR loop)


問題

如何 撰寫CURSOR迴圈



解決方法

--定義用來接收資料的變數
DECLARE @name NVARCHAR(20)
--宣告CURSOR定指定資料來源
DECLARE cursor1 CURSOR FOR
    SELECT name
    FROM table1
--開啟CURSOR
OPEN cursor1 
--將資料寫入變數
FETCH NEXT FROM cursor1 INTO
    @name
    WHILE(@@FETCH_STATUS=0)
        BEGIN
            SELECT 1--JUST FOR TEST
            --接著做下一筆            
            FETCH NEXT FROM cursor1 INTO
            @name
        END
--關閉CURSOR
CLOSE cursor1 
--釋放CURSOR
DEALLOCATE cursor1 

or
--定義用來接收資料的變數
DECLARE @name NVARCHAR(20)
--宣告CURSOR定指定資料來源
DECLARE cursor1 CURSOR FOR
    SELECT name
    FROM table1
--開啟CURSOR
OPEN cursor1 
WHILE(1=1)
BEGIN
--將資料寫入變數
FETCH NEXT FROM cursor1 INTO
    @name
        IF NOT (@@FETCH_STATUS = 0)
            Break;
    SELECT 1--JUST FOR TEST
END
--關閉CURSOR    
CLOSE cursor1 
--釋放CURSOR
DEALLOCATE cursor1

沒有留言:

熱門文章