Sintomas
Quando você usa o Microsoft ODBC Driver 11 para SQL Server em um aplicativo multithreaded, uma tentativa de conexão (SQLDriverConect/SQLConnect) resulta em uma violação de acesso.
Causa
Este problema ocorre devido a uma condição race que é causada por um descuido durante a inicialização. Quando dois ou mais threads tentam criar conexões, o problema ocorre.
Resolução
Informações de atualização cumulativa
O problema foi corrigido na seguinte atualização cumulativa do SQL Server:
Recomendação:Instale a atualização cumulativa mais recente para o SQL Server
Cada nova atualização cumulativa para SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas com a atualização cumulativa anterior. Recomendamos que transfira e instale as atualizações cumulativas mais recentes para SQL Server:
- Atualização cumulativa mais recente para o SQL Server 2014 SP1
- Atualização cumulativa mais recente para o SQL Server 2014
Solução
Para contornar esse problema, use um aplicativo que pode estabelecer a primeira conexão em um único thread. Se a primeira ligação for estabelecida num único thread, o controlador SQL Server Native Client 11 (ou seja, a versão anterior do controlador ODBC) não será utilizado para efetuar a primeira tentativa de ligação. Isso evita o problema.
Estado
A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".