Recursos do Microsoft ODBC Driver for SQL Server no Windows

Baixar driver ODBC

Microsoft ODBC Driver 18.0 para SQL Server no Windows

O Driver ODBC 18.0 permite que os usuários enviem tipos de dados longos como tipos de dados máximos usando a palavra-chave LongAsMax para ativar ou desativar a configuração. Quando habilitados, os tipos SQL SQL_LONGVARCHAR, SQL_LONGVARBINARY e SQL_LONGWVARCHAR serão enviados como varchar(max), varbinary(max) e nvarchar(max) em vez de text, image e ntext, respectivamente.

Os padrões de criptografia de conexão foram alterados. O valor padrão de Encrypt agora é Sim, e as novas palavras-chave Opcional e Obrigatório foram introduzidas como sinônimos de Não e Sim, respectivamente. Para conectar-se usando o protocolo TDS 8.0, o Modo estrito (Encrypt=Strict) foi adicionado. Nesse modo, o certificado do servidor sempre é verificado (TrustServerCertificate é ignorado). Uma nova palavra-chave, HostnameInCertificate, pode ser usada para especificar o nome de host esperado encontrado no certificado se ele for diferente do servidor especificado. Pode-se usar HostnameInCertificate em todos os modos de criptografia, sendo também aplicável se a opção do lado do servidor Force Encryption estiver habilitada, o que fará com que o driver verifique o certificado nos modos Opcional ou Obrigatório, a menos que seja desabilitado usando TrustServerCertificate.

O Driver ODBC 18 inclui extensões SQLGetData. Quando ativado, o SQLGetData pode ser usado para recuperar dados de colunas em qualquer ordem dentro de uma linha, incluindo retroceder. O recurso é fornecido para fins de compatibilidade e prejudicará significativamente o desempenho e aumentará o uso de memória. É altamente recomendável que o aplicativo sempre acesse as colunas em ordem crescente. Para habilitar as extensões do SQLGetData, é possível usar o atributo GetDataExtensions de cadeia de conexão ou a função SQLSetConnectAttr para definir SQL_COPT_SS_GETDATA_EXTENSIONS como SQL_EN_ON.

O suporte para Windows ARM64 está incluído a partir do Driver ODBC 18.2 e está, atualmente, em versão prévia. O driver ARM64 é apenas para aplicativos ARM64 de 64 bits e não inclui drivers de emulação ARM de 32 bits nem x86/amd64.

Microsoft ODBC Driver 17.4 para SQL Server no Windows

O ODBC Driver 17.4 permite ajustar as configurações de Keep-Alive do TCP. Elas podem ser modificadas adicionando valores às chaves do registro Driver ou DSN. As chaves estão localizadas em HKEY_LOCAL_MACHINE\Software\ODBC\ para fontes de dados do sistema e em HKEY_CURRENT_USER\Software\ODBC\ para fontes de dados do usuário. Para o DSN, os valores precisam ser adicionados a ...\Software\ODBC\ODBC.INI\<DSN Name>; para o driver, a ...\Software\ODBC\ODBCINST.INI\ODBC Driver 17 for SQL Server.

Para obter mais informações, confira Entradas do Registro para componentes ODBC.

Os valores são REG_SZ e são os seguintes:

  • KeepAlive controla a frequência com que o TCP tenta verificar se uma conexão ociosa ainda está intacta enviando um pacote keep alive. O padrão é 30 segundos.

  • KeepAliveInterval determina o intervalo que separa cada retransmissão keep alive até que uma resposta seja recebida. O padrão é 1 segundo.

Microsoft ODBC Driver 13.1 para SQL Server no Windows

O ODBC Driver 13.1 for SQL Server contém toda a funcionalidade da versão anterior (11). Também adiciona suporte ao Always Encrypted e à autenticação com o Microsoft Entra ID (anteriormente Azure Active Directory).

Always Encrypted permite que os clientes criptografem os dados confidenciais em aplicativos de cliente e nunca revelem as chaves de criptografia para o SQL Server. Um driver Always Encrypted habilitado instalado no computador cliente alcança essa segurança criptografando e descriptografando automaticamente os dados confidenciais no aplicativo cliente do SQL Server. O driver criptografa os dados nas colunas confidenciais antes de passá-los para o SQL Server. Ele também reescreve automaticamente as consultas para que a semântica do aplicativo seja preservada. Da mesma forma, o driver descriptografa de forma transparente os dados armazenados em colunas criptografadas do banco de dados contidos nos resultados da consulta. Para obter mais informações, veja Como usar Always Encrypted com o driver ODBC do Windows.

O Microsoft Entra ID permite que usuários, DBAs e programadores de aplicativos usem a autenticação do Microsoft Entra. Para obter mais informações, confira Usando o Microsoft Entra ID com o driver ODBC e Conexão ao SQL do Azure ou ao Azure Synapse Analytics usando a autenticação do Microsoft Entra.

Microsoft ODBC Driver 11 para SQL Server no Windows

O ODBC Driver for SQL Server contém toda a funcionalidade do SQL Server driver ODBC Native Client fornecida no SQL Server 2012 (11.x). Para obter mais informações sobre o SQL Server Native Client, confira Programação do SQL Server Native Client. O driver ODBC do SQL Server Native Client se baseia no driver ODBC incluído no sistema operacional Windows. Para obter mais informações sobre esse driver, confira SDK dos Windows Data Access Components.

Esta versão do ODBC Driver for SQL Server contém os seguintes recursos novos:

Opção bcp.exe -l para especificar um tempo limite de logon

A opção -l especifica o número de segundos antes que um logon bcp.exe em SQL Server expire quando você tentar se conectar a um servidor. O tempo limite de logon padrão é de 15 segundos. O tempo limite do logon deve ser um número entre 0 e 65534. Se o valor fornecido não for numérico ou não estiver nesse intervalo, bcp.exe gerará uma mensagem de erro. Um valor de 0 especifica um tempo limite infinito. Um tempo limite de logon de menos de (aproximadamente) dez segundos não é confiável.

Pool de conexões com reconhecimento do driver

O Microsoft ODBC Driver for SQL Server dá suporte para Pool de Conexões com Reconhecimento de Driver. Para obter mais informações, consulte Pool de conexões com reconhecimento do driver no Driver ODBC para SQL Server.

Execução assíncrona (método de notificação)

O ODBC Driver for SQL Server dá suporte para a execução assíncrona (método de notificação). Para encontrar um exemplo de uso, veja Amostra de execução assíncrona (método de notificação).

Resiliência de conexão

Para garantir que os aplicativos permaneçam conectados a um Banco de Dados SQL do Microsoft Azure, o driver ODBC no Windows pode restaurar conexões ociosas. Para obter mais informações, consulte Connection Resiliency in the Windows ODBC Driver.

Alterações de comportamento

No SQL Server Native Client, a opção -y0 para sqlcmd.exe fazia com que a saída fosse truncada em 1 MB se a largura da tela fosse 0.

A partir do ODBC Driver 11 for SQL Server, não há nenhum limite à quantidade de dados recuperados em uma determinada coluna quando -y0 é especificado. O sqlcmd.exe agora transmite colunas de até 2 GB por fluxo (tamanho máximo do tipo de dados no SQL Server).

Outra diferença é que agora, especificar -h e -y0 simultaneamente produz um erro que informa que as opções são incompatíveis. -h, que especifica o número de linhas a imprimir entre cabeçalhos de coluna e nunca foi compatível com -y0, foi ignorado, embora nenhum cabeçalho tenha sido impresso.

O -y0 pode causar problemas de desempenho anto no servidor quanto na rede, dependendo do tamanho dos dados retornados.