2009年9月21日 星期一

Cursor用法 ~MS SQL

USE aeftool_Data
--定義一個cursor 來自指定資料表內容
DECLARE 測試用_Cursor Cursor FOR
SELECT CN_T_KEY1
FROM 測試用
--開啟cursor
OPEN 測試用_Cursor
--定義cursor裡要取出的物件
DECLARE @KEY VARCHAR(50)
DECLARE @COUNT INT
--進入cursor
Fetch NEXT FROM 測試用_Cursor INTO @KEY
--當陳述式失敗,或資料列超出結果集時停止迴圈
While (@@FETCH_STATUS <> -1)
BEGIN
SELECT @COUNT=COUNT(*)
FROM SMARTEAM.TN_LINK_KNIFE LINK
WHERE LINK.CN_T_KEY1 = @KEY
IF @COUNT>0
PRINT 'TEST'
--再到下個指標去
Fetch NEXT FROM 測試用_Cursor INTO @KEY
END
--關閉cursor
CLOSE 測試用_Cursor
--釋放cursor
DEALLOCATE 測試用_Cursor
GO

沒有留言:

張貼留言