Bearbetande av resultat från lagrad procedur

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

SQL Server lagrade procedurer har fyra mekanismer som används för att returnera data:

  • Varje SELECT-sats i proceduren genererar en resultatuppsättning.

  • Proceduren kan returnera data via utdataparametrar.

  • En markörutgångsparameter kan skicka tillbaka en Transact-SQL servermarkör.

  • Proceduren kan ha en heltalsreturkod.

Applikationer måste kunna hantera alla dessa utdata från lagrade procedurer. CALL- eller EXEKUSE-satsen bör innehålla parametermarkörer för returkoden och utdataparametrarna. Använd SQLBindParameter för att binda alla som utdataparametrar och SQL Server Native Client ODBC-drivrutinen överför utdatavärdena till de bundna variablerna. Utdataparametrar och returkoder är de sista elementen som returneras till klienten av SQL Server; de returneras inte till applikationen förrän SQLMoreResults returnerar SQL_NO_DATA.

ODBC stöder inte bindning Transact-SQL markörparametrar. Eftersom alla utdataparametrar måste vara begränsade innan en procedur exekveras, kan ingen Transact-SQL lagrad procedur som innehåller en utgångsmarkörparameter anropas av ODBC-applikationer.