通過釋放當前結(jié)果集并且解除定位游標的行上的游標鎖定,關閉一個開放的游標。CLOSE 使得數(shù)據(jù)結(jié)構(gòu)可以重新打開,但不允許提取和定位更新,直到游標重新打開為止。CLOSE 必須在一個開放游標上頒發(fā),不允許在一個僅僅聲明的游標或一個已經(jīng)關閉的游標上頒發(fā)。
CLOSE { { [ GLOBAL ] cursor_name } | cursor_variable_name }
GLOBAL
指定 cursor_name 指的是全局游標。
cursor_name
開放游標的名稱。如果全局游標和局部游標都使用 cursor_name 作為它們的名稱,那么當指定 GLOBAL 時 cursor_name 引用全局游標;否則,cursor_name 引用局部游標。
cursor_variable_name
與開放游標關聯(lián)的游標變量的名稱。
下面的示例顯示在一個基于游標的進程中 CLOSE 語句的正確位置。
USE pubs
GO
DECLARE authorcursor CURSOR FOR
SELECT au_fname, au_lname
FROM authors
ORDER BY au_fname, au_lname
OPEN authorcursor
FETCH NEXT FROM authorcursor
WHILE @@FETCH_STATUS = 0
BEGIN
FETCH NEXT FROM authorcursor
END
CLOSE authorcursor
DEALLOCATE authorcursor
GO
相關文章