Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL-adatbázis a Microsoft Fabricben
Ez a függvény adja vissza a jelenleg az utolsó, megnyitott kurzorban lévő kvalifikációs sorok számát. A teljesítmény javítása érdekében az SQL Server aszinkron módon képes nagy kulcskészleteket és statikus kurzorokat feltölteni.
@@CURSOR_ROWS Meghívhatjuk, hogy megállapítsuk, hány sor, amely jogosult kurzorra jogosult, a hívás idején @@CURSOR_ROWS visszanyerhető.
Transact-SQL szintaxis konvenciók
Szemantika
@@CURSOR_ROWS
Visszatérési típusok
int
Visszaadott érték
| Visszaadott érték | Description |
|---|---|
-m |
A kurzor aszinkron módon jelenik meg. A visszaadott érték (-m) a kulcshalmazban jelenleg szereplő sorok száma. |
-1 |
A kurzor dinamikus. Mivel a dinamikus kurzorok minden változást tükröznek, a kurzorra jogosult sorok száma folyamatosan változik. A kurzor nem feltétlenül nyeri vissza az összes minősített sort. |
0 |
Nincs nyitva kurzor, nincs olyan sor, amely jogosult lenne az utolsó megnyitott kurzorra, vagy az utolsó kurzor zárva vagy dealallocation. |
n |
A kurzor teljesen tele van. A visszaadott (n) érték a kurzor összes sorszáma. |
Megjegyzések
@@CURSOR_ROWS negatív számot ad vissza, ha az utolsó kurzor aszinkron módon nyílik meg. Kulcs-driver vagy statikus kurzorok aszinkron módon nyílnak meg, ha a sp_configure kurzorküszöb értéke meghaladja 0, és a kurzor eredményhalmazában lévő sorok száma meghaladja a kurzorküszöböt.
Példák
Ez a példa először kurzort hirdet, majd SELECT megjeleníti az értékét @@CURSOR_ROWS. A beállítás értéke 0 a kurzor megnyitása előtt, majd az értéke -1, ami jelzi, hogy a kurzor kulcskészlet aszinkron módon töltődik fel.
USE AdventureWorks2022;
GO
SELECT @@CURSOR_ROWS;
DECLARE Name_Cursor CURSOR
FOR SELECT LastName, @@CURSOR_ROWS
FROM Person.Person;
OPEN Name_Cursor;
FETCH NEXT FROM Name_Cursor;
SELECT @@CURSOR_ROWS;
CLOSE Name_Cursor;
DEALLOCATE Name_Cursor;
GO
Íme az eredménykészletek.
-----------
0
LastName (No column name) ROWSTAT
--------- ----------------- ---------
Sánchez -1 NULL
-----------
-1