Share via


Executando procedimentos armazenados (OLE DB)

Ao executar instruções, chamar um procedimento armazenado na fonte de dados (em vez de executar ou preparar diretamente uma instrução no aplicativo cliente) pode oferecer:

  • Maior desempenho.

  • Menor sobrecarga da rede.

  • Melhor consistência.

  • Maior exatidão.

  • Maior funcionalidade.

O provedor do OLE DB do SQL Server Native Client suporta três dos mecanismos que os procedimentos armazenados do SQL Server usam para retornar dados:

  • Toda instrução SELECT no procedimento gera um conjunto de resultados.

  • O procedimento pode retornar dados através de parâmetros de saída.

  • O procedimento pode ter um código de retorno de inteiro.

O aplicativo precisa ser capaz de tratar todas essas saídas provenientes dos procedimentos armazenados.

Provedores do OLE DB diferentes retornam parâmetros de saída e valores de retorno em horários diferentes durante o processamento de resultados. No caso do provedor do OLE DB do SQL Server Native Client, os parâmetros de saída e códigos de retorno não serão fornecidos enquanto o consumidor não tiver recuperado ou cancelado os conjuntos de resultados retornados pelo procedimento armazenado. Os códigos de retorno e parâmetros de saída são retornados no último pacote TDS proveniente do servidor.

Os provedores usam a propriedade DBPROP_OUTPUTPARAMETERAVAILABILITY para informar o momento em que são retornados os parâmetros de saída e valores de retorno. Essa propriedade faz parte do conjunto de propriedades DBPROPSET_DATASOURCEINFO.

O provedor do OLE DB do SQL Server Native Client define a propriedade DBPROP_OUTPUTPARAMETERAVAILABILITY como DBPROPVAL_OA_ATROWRELEASE para indicar que os códigos de retorno e parâmetros de saída não serão retornados enquanto o conjunto de resultados não for processado ou liberado.

Consulte também

Outros recursos