症状
在多线程应用程序中使用 Microsoft ODBC Driver 11 for SQL Server 时,连接尝试(SQLDriverConect/SQLConnect)导致访问冲突。
原因
出现此问题的原因是由于初始化期间的监督导致的竞争条件。 当两个或多个线程尝试创建连接时,将出现此问题。
解决方案
累积更新信息
在以下 SQL Server 累积更新中首先修复此问题:
SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 我们建议你下载并安装 SQL Server 的最新累积更新:
解决方法
要解决此问题,请使用可在单个线程中建立第一个连接的应用程序。 如果第一个连接是在单个线程中建立的,则 SQL Server Native Client 11 驱动程序(即早期的 ODBC 驱动程序版本)不会用于执行第一次连接尝试。 这样就可以避免此问题。
状态
Microsoft 已经确认这是一个列于“适用范围”部分的 Microsoft 产品问题。