返回連接上最后打開的游標(biāo)中當(dāng)前存在的合格行的數(shù)量。為提高性能,Microsoft® SQL Server™ 可以異步填充大鍵集和靜態(tài)游標(biāo)??烧{(diào)用 @@CURSOR_ROWS,以確定當(dāng)它被調(diào)用時(shí),符合游標(biāo)的行的數(shù)目被進(jìn)行了檢索。
返回值 | 描述 |
---|---|
-m | 游標(biāo)被異步填充。返回值 (-m) 是鍵集中當(dāng)前的行數(shù)。 |
-1 | 游標(biāo)為動(dòng)態(tài)。因?yàn)閯?dòng)態(tài)游標(biāo)可反映所有更改,所以符合游標(biāo)的行數(shù)不斷變化。因而永遠(yuǎn)不能確定地說所有符合條件的行均已檢索到。 |
0 | 沒有被打開的游標(biāo),沒有符合最后打開的游標(biāo)的行,或最后打開的游標(biāo)已被關(guān)閉或被釋放。 |
n | 游標(biāo)已完全填充。返回值 (n) 是在游標(biāo)中的總行數(shù)。 |
@@CURSOR_ROWS
integer
若最后打開的游標(biāo)是異步打開的,則 @@CURSOR_ROWS 返回的值是負(fù)數(shù)。若 sp_configure cursor threshold 的值大于0,則鍵集驅(qū)動(dòng)程序或靜態(tài)游標(biāo)被異步打開,且游標(biāo)結(jié)果集中的行數(shù)大于游標(biāo)閾值。
下面的示例聲明了一個(gè)游標(biāo),并且用 SELECT 顯示 @@CURSOR_ROWS 的值。在游標(biāo)打開前,設(shè)置值為 0,值 -1 則表示游標(biāo)鍵集被異步填充。
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)
相關(guān)文章