Stored procedure - Esecuzione in SQL Server Native Client

Si applica a: sìSQL Server (tutte le versioni supportate) Sìdatabase SQL di Azure SìIstanza gestita di SQL di Azure sìAzure Synapse Analytics sìParallel Data Warehouse

Durante l'esecuzione di istruzioni, la chiamata a una stored procedure nell'origine dati, in alternativa all'esecuzione o alla preparazione diretta di un'istruzione nell'applicazione client, può offrire i vantaggi seguenti:

  • Prestazioni più elevate.

  • Overhead di rete ridotto.

  • Maggiore consistenza.

  • Maggiore precisione.

  • Maggior numero di funzionalità.

Il provider OLE DB Native Client supporta tre dei meccanismi utilizzati da SQL Server stored procedure per restituire i SQL Server dati:

  • Ogni istruzione SELECT nella procedura genera un set di risultati.

  • La procedura può restituire dati tramite parametri di output.

  • La procedura può avere un codice restituito di tipo integer.

L'applicazione deve essere in grado di gestire tutti questi output dalle stored procedure.

Provider OLE DB diversi restituiscono parametri di output e valori in momenti diversi durante l'elaborazione dei risultati. Nel caso del provider OLE DB Native Client, i parametri di output e i codici restituiti non vengono forniti fino a quando il consumer non ha recuperato o annullato i set di risultati restituiti dal SQL Server stored procedure. I codici e i parametri di output vengono restituiti nell'ultimo pacchetto TDS dal server.

I provider utilizzano la proprietà DBPROP_OUTPUTPARAMETERAVAILABILITY per segnalare la restituzione di parametri di output e valori. Questa proprietà è inclusa nel set di proprietà DBPROPSET_DATASOURCEINFO.

Il provider OLE DB Native Client imposta la proprietà DBPROP_OUTPUTPARAMETERAVAILABILITY su DBPROPVAL_OA_ATROWRELEASE per indicare che i codici restituiti e i parametri di output non vengono restituiti fino a quando il set di risultati non viene elaborato SQL Server o rilasciato.

Vedere anche

Stored procedure