Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Skapar och fyller i en markör baserat på körningsplanen som skapats av sp_cursorprepare
. Den här proceduren, tillsammans med sp_cursorprepare
, har samma funktion som sp_cursoropen
, men är uppdelad i två faser.
sp_cursorexecute
anropas genom att ange ID = 4
i ett TDS-paket (Tabular Data Stream).
Transact-SQL syntaxkonventioner
Syntax
sp_cursorexecute prepared_handle , cursor
[ , scrollopt [ OUTPUT ]
[ , ccopt [ OUTPUT ]
[ , rowcount OUTPUT [ , bound param ] [ , ...n ] ] ] ]
[ ; ]
Argument
Viktig
Argument för utökade lagrade procedurer måste anges i den specifika ordning som beskrivs i avsnittet Syntax. Om parametrarna anges i fel ordning visas ett felmeddelande.
prepared_handle
Den förberedda instruktionen hantera värde som returneras av sp_cursorprepare
. Parametern prepared_handle är intoch kan inte NULL
.
markören
Databasmotorgenererad marköridentifierare.
markören är en obligatorisk parameter som måste anges för alla efterföljande procedurer som agerar på markören, till exempel sp_cursorfetch
.
scrollopt
Rullningsalternativ. Parametern scrollopt är int, med standardvärdet NULL
. Parametern sp_cursorexecute
scrollopt har samma värdealternativ som sp_cursoropen
.
Värdet PARAMETERIZED_STMT
stöds inte.
Om ett scrollopt- värde inte har angetts är standardvärdet KEYSET
oavsett scrollopt- värde som anges i sp_cursorprepare
.
ccopt
Alternativ för valutakontroll.
ccopt är en valfri parameter som kräver ett int indatavärde. Parametern sp_cursorexecute
ccopt har samma värdealternativ som sp_cursoropen
.
Om ett ccopt--värde inte anges är standardvärdet OPTIMISTIC
oavsett ccopt- värde som anges i sp_cursorprepare
.
rowcount
En valfri parameter som anger antalet hämtningsbuffertar som ska användas med AUTO_FETCH
. Standardvärdet är 20 rader.
rowcount fungerar annorlunda när det tilldelas som ett indatavärde jämfört med ett returvärde.
Som indatavärde | Som returvärde |
---|---|
När AUTO_FETCH anges med FAST_FORWARD markörer representerar radantal antalet rader som ska placeras i hämtningsbufferten. |
Representerar antalet rader i resultatuppsättningen. När värdet scrolloptAUTO_FETCH anges returnerar rowcount antalet rader som hämtades till hämtningsbufferten. |
bound_param
Innebär valfri användning av extra parametrar.
Alla parametrar efter den femte skickas vidare till instruktionsplanen som indataparametrar.
Returnera kodvärden
rowcount returnerar följande värden.
Värde | Beskrivning |
---|---|
-1 |
Antal rader som är okända. |
-n |
En asynkron population är i kraft. |
Anmärkningar
scrollopt- och ccopt-parametrar
scrollopt och ccopt är användbara när cachelagrade planer är förinställda för servercachen, vilket innebär att den förberedda referensen som identifierar instruktionen måste kompileras om. Parametervärdena scrollopt och ccopt måste matcha de värden som skickades i den ursprungliga begäran för att sp_cursorprepare
.
PARAMETERIZED_STMT
bör inte tilldelas till scrollopt.
Om matchande värden inte anges resulterar det i omkompilering av planerna, vilket negerar åtgärderna för att förbereda och köra.
RPC- och TDS-överväganden
RPC-RETURN_METADATA
indataflagga kan ställas in på 1
för att begära att markörens valda listmetadata returneras i TDS-strömmen.