Resultaten van opgeslagen procedures verwerken

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

SQL Server stored procedures heeft vier mechanismen die worden gebruikt om data terug te geven:

  • Elke SELECT-instructie in de procedure genereert een resultaatset.

  • De procedure kan gegevens teruggeven via outputparameters.

  • Een cursor-uitvoerparameter kan een Transact-SQL servercursor teruggeven.

  • De procedure kan een geheel retourcode hebben.

Applicaties moeten al deze outputs van opgeslagen procedures kunnen verwerken. De CALL- of EXECUTE-instructie moet parametermarkers bevatten voor de retourcode en uitvoerparameters. Gebruik SQLBindParameter om ze allemaal als outputparameters te binden en de SQL Server Native Client ODBC-driver zal de outputwaarden overdragen aan de gebonden variabelen. Outputparameters en retourcodes zijn de laatste items die door SQL Server aan de client worden teruggegeven; ze worden pas teruggegeven aan de applicatie als SQLMoreResults SQL_NO_DATA teruggeeft.

ODBC ondersteunt geen binding Transact-SQL cursorparameters. Omdat alle uitvoerparameters gebonden moeten worden voordat een procedure wordt uitgevoerd, kan elke Transact-SQL opgeslagen procedure die een outputcursorparameter bevat niet door ODBC-applicaties worden aangeroepen.