Partilhar via


Descoberta de metadados no SQL Server Native Client

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsPDW (Analytics Platform System)

Importante

O SQL Server Native Client (SNAC) não é fornecido com:

  • SQL Server 2022 (16.x) e posterior
  • SQL Server Management Studio 19 e posterior

O SQL Server Native Client (SQLNCLI ou SQLNCLI11) e o Provedor OLE DB herdado da Microsoft para o SQL Server (SQLOLEDB) não são recomendados para um novo desenvolvimento de aplicativo.

Para novos projetos, use um dos seguintes drivers:

Para SQLNCLI que é fornecido como um componente do Mecanismo de Banco de Dados do SQL Server (versões 2012 a 2019), confira esta exceção de Ciclo de Vida de Suporte.

O aprimoramento da descoberta de metadados no SQL Server 2012 (11.x) permite que os aplicativos do SQL Server Native Client garantam que os metadados de coluna ou parâmetro retornados da execução de uma consulta sejam idênticos ou compatíveis com o formato de metadados especificado antes de executar a consulta. Você receberá um erro se os metadados retornados depois da execução da consulta não forem compatíveis com o formato de metadados especificado antes da execução da consulta.

Em funções bcp e ODBC, e em interfaces IBCPSession e IBCPSession2, agora você pode especificar uma leitura atrasada (descoberta de metadados atrasada) para evitar a descoberta de metadados para operações de saída de consulta. Isso melhora o desempenho e elimina falhas de descoberta de metadados.

Se você desenvolver um aplicativo usando o SQL Server Native Client no SQL Server 2012 (11.x), mas se conectar a uma versão de servidor anterior ao SQL Server 2012 (11.x), a funcionalidade de descoberta de metadados corresponderá à versão do servidor.

Comentários

As seguintes funções bcp foram aprimoradas no SQL Server 2012 (11.x) para fornecer descoberta de metadados aprimorada:

Você também verá uma melhoria no desempenho ao especificar o formato de metadados usando bcp_setbulkmode.

bcp_control tem uma nova eOption para controlar o comportamento de bcp_readfmt: BCPDELAYREADFMT.

As seguintes funções ODBC foram aprimoradas no SQL Server 2012 (11.x) para fornecer descoberta de metadados aprimorada:

As funções de membros OLE DB a seguir foram aperfeiçoadas no SQL Server 2012 (11.x) para fornecer descoberta de metadados aprimorada:

  • IColumnsInfo::GetColumnInfo

  • IColumnsRowset::GetColumnsRowset

  • ICommandWithParameters::GetParameterInfo (confira ICommandWithParameters para obter mais informações)

Você também verá uma melhoria no desempenho ao especificar o formato de metadados usando IBCPSession::BCPSetBulkMode

A descoberta aprimorada de metadados no SQL Server Native Client é possível devido à adição de dois procedimentos armazenados no SQL Server 2012 (11.x):

  • sp_describe_first_result_set

  • sp_describe_undeclared_parameters

Confira também

Recursos do SQL Server Native Client