Executando procedimentos armazenados (OLE DB)

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

  • Desempenho mais alto.

  • Sobrecarga de rede reduzida.

  • Melhor consistência.

  • Melhor precisão.

  • Funcionalidade adicionada.

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

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

  • O procedimento pode retornar dados por meio de parâmetros de saída.

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

O aplicativo deve ser capaz de lidar com todas essas saídas de procedimentos armazenados.

Diferentes provedores OLE DB retornam parâmetros de saída e retornam valores em momentos diferentes durante o processamento de resultados. No caso do provedor OLE DB do SQL Server Native Client, os parâmetros de saída e os códigos de retorno não são fornecidos até que o consumidor tenha recuperado ou cancelado os conjuntos de resultados retornados pelo procedimento armazenado. Os códigos de retorno e os parâmetros de saída são retornados no último pacote TDS do servidor.

Os provedores usam a propriedade DBPROP_OUTPUTPARAMETERAVAILABILITY para relatar quando ela retorna parâmetros de saída e retorna valores. Essa propriedade está no conjunto de propriedades DBPROPSET_DATASOURCEINFO.

O provedor 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 os parâmetros de saída não são retornados até que o conjunto de resultados seja processado ou liberado.

Consulte Também

Procedimentos armazenados