SQL Server Native Client
Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Azure Synapse Analytics Analytics Platform System (PDW)
SQL Server Native Client, também conhecido como SNAC ou SQLNCLI, se refere aos drivers ODBC e OLE DB para SQL Server, anteriores ao SQL Server 2022 (16.x).
Importante
O SQL Server Native Client (SNAC) não é fornecido com:
- SQL Server 2022 (16.x) e versões posteriores
- SQL Server Management Studio 19 e versões posteriores
O SQL Server Native Client (SQLNCLI ou SQLNCLI11) e o provedor OLE DB para SQL Server (SQLOLEDB) da Microsoft herdado não são recomendados para desenvolver um novo 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.
Observação
Para obter mais informações e baixar os drivers SNAC ou ODBC, confira a postagem no blog Explicação do ciclo de vida do SNAC. Para obter mais informações sobre o ODBC Driver for SQL Server, confira Microsoft ODBC Driver for SQL Server.
Informações sobre os recursos do SQL Server Native Client lançados com o SQL Server 2012 (11.x), a última versão disponível do SQL Server native Client:
- Suporte do SQL Server Native Client para LocalDB
- Descoberta de metadados
- Suporte a UTF-16 no SQL Server Native Client 11.0
- Suporte do SQL Server Native Client à alta disponibilidade e recuperação de desastre
- Acessar informações de diagnóstico nos logs de eventos estendidos
O ODBC no SQL Server Native Client agora oferece suporte a três recursos que foram adicionados ao ODBC padrão no SDK do Windows 7:
Execução assíncrona em operações relacionadas à conexão. Para obter mais informações, consulte Execução assíncrona.
Extensibilidade do tipo de dados C. Para obter mais informações, consulte Tipos de dados C em ODBC.
Para dar suporte a esse recurso no SQL Server Native Client,
SQLGetDescField
pode retornar SQL_C_SS_TIME2 (para tipos de hora) ou SQL_C_SS_TIMESTAMPOFFSET (para datetimeoffset), em vez de SQL_C_BINARY, se seu aplicativo usa ODBC 3.8. Para obter mais informações, confira Suporte a tipos de dados para aprimoramentos de data e hora do ODBC.Chamando
SQLGetData
várias vezes com um buffer pequeno para recuperar um valor de parâmetro grande. Para obter mais informações, consulte Recuperando parâmetros de saída usando SQLGetData.
Os artigos a seguir descrevem as alterações de comportamento do SQL Server Native Client no SQL Server 2012 (11.x).
O valor passado para o parâmetro
pwszName
deve ser um identificador válido quando chamar oICommandWithParameters::SetParameterInfo
. Para obter mais informações, consulte ICommandWithParameters.SQLDescribeParam
retorna consistentemente um valor de conformidade de especificação ODBC. Para obter mais informações, consulte SQLDescribeParam.Alteração de comportamento do driver ODBC ao lidar com conversões de caracteres