返回連接上最后打開的游標中當前存在的合格行的數(shù)量。為提高性能,Microsoft® SQL Server™ 可以異步填充大鍵集和靜態(tài)游標??烧{(diào)用 @@CURSOR_ROWS,以確定當它被調(diào)用時,符合游標的行的數(shù)目被進行了檢索。
返回值 | 描述 |
---|---|
-m | 游標被異步填充。返回值 (-m) 是鍵集中當前的行數(shù)。 |
-1 | 游標為動態(tài)。因為動態(tài)游標可反映所有更改,所以符合游標的行數(shù)不斷變化。因而永遠不能確定地說所有符合條件的行均已檢索到。 |
0 | 沒有被打開的游標,沒有符合最后打開的游標的行,或最后打開的游標已被關閉或被釋放。 |
n | 游標已完全填充。返回值 (n) 是在游標中的總行數(shù)。 |
@@CURSOR_ROWS
integer
若最后打開的游標是異步打開的,則 @@CURSOR_ROWS 返回的值是負數(shù)。若 sp_configure cursor threshold 的值大于0,則鍵集驅(qū)動程序或靜態(tài)游標被異步打開,且游標結果集中的行數(shù)大于游標閾值。
下面的示例聲明了一個游標,并且用 SELECT 顯示 @@CURSOR_ROWS 的值。在游標打開前,設置值為 0,值 -1 則表示游標鍵集被異步填充。
SELECT @@CURSOR_ROWS
DECLARE authors_cursor CURSOR FOR
SELECT au_lname FROM authors
OPEN authors_cursor
FETCH NEXT FROM authors_cursor
SELECT @@CURSOR_ROWS
CLOSE authors_cursor
DEALLOCATE authors_cursor
-----------
0
(1 row(s) affected)
au_lname
----------------------------------------
White
(1 row(s) affected)
-----------
-1
(1 row(s) affected)
相關文章