添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

本文列出了 Microsoft JDBC Driver for SQL Server 的版本。 对于每个发行版本,将对所做的更改进行命名和说明。

下载 Microsoft JDBC Driver 12.4.0 for SQL Server (zip)
下载 Microsoft JDBC Driver 12.4.0 for SQL Server (tar.gz)

版本号:12.4.0
发布日期:2023 年 7 月 31 日

如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 韩语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

12.4 合规性

符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 12.4 包中的 jar。

例如,12.4 包中的 mssql-jdbc-12.4.0.jre11.jar 文件应与 Java 11(或更高版本)配合使用。 与 Java 开发工具包 (JDK) 版本 20.0、17.0、11.0 和 1.8 兼容。 除 JDK 17.0、11.0 和 1.8 外,Microsoft JDBC Driver 12.4 for SQL Server 现在还与 Java 开发工具包 (JDK) 版本 20.0 兼容。

12.4 发行版

下载 Microsoft JDBC Driver 12.4.0 for SQL Server (zip)
下载 Microsoft JDBC Driver 12.4.0 for SQL Server (tar.gz)

版本号:12.4.0
发布日期:2023 年 7 月 31 日

如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 韩语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

12.4 中的新增功能

提高了生成参数类型定义时的性能 通过预计算用于 buildParamTypeDefinitions 中的数组和字符串生成器的大小,以及删除不需要的字符串分配,提高了使用此方法的性能。 更改了 LOGIN 数据包中发送的 serverName 以包含 instanceName serverName 现在追加到 LOGIN 数据包中的 instanceName 末尾。 升级到最新的 OSGi JDBC 规范 从 osgi.compendium 5.0.0 升级到 osgi.service.jdbc 1.1.0,以符合 OSGi JDBC 规范 8.1.0 的合规性。 更新了依赖项 已更新 azure-identity azure-security-keyvault-keys gson h2 msal 的依赖项版本。

12.4 中的修复

修复了 BigDecimal 存在的性能和内存问题 还原自 12.2 版以来有关 BigDecimal 的所有更改。 此修复解决了观察到的性能问题。 用户在使用 BigDecimal 时要小心,以免出现之前解决的截断问题。 GitHub 问题 #2176 。 修复了 encrypt=strict 的服务器证书验证 修复以确保在 encrypt 设置为 strict 的情况下正确验证服务器证书。 GitHub 问题 #2174 。 修复了在 Azure DB 中设置重定向模式时 lockTimeout 未生效的问题 修复了何时设置 lockTimeout ,因为它只适用于 Azure 外部的连接,而不是像以前那样适用于 Azure 内部的连接。 GitHub 问题 #2110 。 修复了使用 findSocketUsingThreading 时的高线程计数问题 修复了未捕获的异常导致上游睡眠调用中断,从而导致重试速度过快的问题。 GitHub 问题 #2104 。 修复了共享计时器争用条件 修复了 SharedTimer 类中潜在的争用条件。 GitHub 问题 #2085 。 修复了当插入中提供的列与表架构顺序不同时无效的批处理插入 修复了使用 useBulkCopyForBatchInsert=true 可能导致列混乱和无效数据的问题。 GitHub 问题 #1992 。 修复了活动 ID 和客户端 ID 行为,以保持与 JDBC 规范的一致性 修复了活动 ID 行为,使其在流程的生命周期内保持不变,始终发送 PRELOGIN 中的活动 ID,以及每个新连接的递增序列。 修复了在流程的生命周期内保留的客户端 ID。

以前的版本

下载 Microsoft JDBC Driver 12.2.0 for SQL Server (zip)
下载 Microsoft JDBC Driver 12.2.0 for SQL Server (tar.gz)

版本号:12.2.0
发布日期:2023 年 1 月 31 日

如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

12.2 合规性

符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 12.2 包中的 jar。

例如,12.2 包中的 mssql-jdbc-12.2.0.jre11.jar 文件应与 Java 11(或更高版本)配合使用。 与 Java 开发工具包 (JDK) 版本 19.0、17.0、11.0 和 1.8.兼容。 除 JDK 17.0、11.0 和 1.8 外,Microsoft JDBC Driver 12.2 for SQL Server 现在还与 Java 开发工具包 (JDK) 版本 19.0 兼容。

12.2 版本

下载 Microsoft JDBC Driver 12.2.0 for SQL Server (zip)
下载 Microsoft JDBC Driver 12.2.0 for SQL Server (tar.gz)

版本号:12.2.0
发布日期:2023 年 1 月 31 日

如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

12.2 中的新功能

Feature 托管标识身份验证使用 Azure 标识库 替换驱动程序的内置代码,以使用 Azure 标识库获取和缓存托管标识令牌。 这一更改在驱动程序之前支持的服务基础上,增加了对更多 Azure 服务的托管标识的支持。 更新了依赖项 更新了 azure-identity azure-security-keyvault-keys antlr4-runtime bcprov-jdk15on bcpkix-jdk15on msal 的依赖项版本。

12.2 中的修复

修复了使用 BigDecimal 时发送的精度 修复了以下问题:默认情况下,BigDecimal 值以最大精度发送,这可能导致出现不必要的小数舍入。 GitHub 问题 #1489 GitHub 问题 #942 修复了证明协议 NONE ,使其适用于所有情况 修复了 NONE 证明协议背后的逻辑,使其适用于所有情况,而不仅仅是特定情况。

下载 Microsoft JDBC Driver 11.2.3 for SQL Server (zip)
下载 Microsoft JDBC Driver 11.2.3 for SQL Server (tar.gz)

版本号:11.2.3
发布日期:2023 年 1 月 12 日

如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

11.2 合规性

符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 11.2 包中的 jar。

例如,11.2 包中的 mssql-jdbc-11.20.jre17.jar 文件应与 Java 17 配合使用。 与 Java 开发工具包 (JDK) 版本 18.0、17.0、11.0 和 1.8 兼容。 除 JDK 17.0、11.0 和 1.8 外,Microsoft JDBC Driver 11.2 for SQL Server 现在还与 Java 开发工具包 (JDK) 版本 18.0 兼容。

11.2 版本

版本号:11.2.3
发布日期:2023 年 1 月 12 日

修复了 11.2.3 中的问题:

  • 修复了引发数据库异常时的 null SQL 状态和零错误代码
  • 修复了批处理查询中发生超时的情况下不正确的更新计数
  • 修复了使用 Azure Functions 时令牌到期日期不正确的问题
  • 修复了连接到错误的 SQLServer 主机的问题
  • 版本号:11.2.2
    发布日期:2022 年 12 月 15 日

    修复了 11.2.2 中的问题:

  • 修复了空闲连接复原 bug
  • 清除空闲重新连接时准备的语句句柄缓存
  • 修复了可调用语句索引超出界限错误
  • 修复了提取结果集时对 DONE 令牌的检查
  • 修复了间歇性错误:“解密期间出现内部错误:标记不匹配!”
  • 下载 Microsoft JDBC Driver 11.2.2 for SQL Server (zip)
    下载 Microsoft JDBC Driver 11.2.2 for SQL Server (tar.gz)

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    版本号:11.2.1
    发布日期:2022 年 9 月 8 日

    修复了 11.2.1 中的问题:

  • 使 com.microsoft.azure:msal4j 成为可选依赖项
  • 修复了批处理查询中间歇性发生的查询取消 bug
  • 下载 Microsoft JDBC Driver 11.2.1 for SQL Server (zip)
    下载 Microsoft JDBC Driver 11.2.1 for SQL Server (tar.gz)

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    版本号:11.2.0
    发布日期:2022 年 8 月 4 日

    下载 Microsoft JDBC Driver 11.2.0 for SQL Server (zip)
    下载 Microsoft JDBC Driver 11.2.0 for SQL Server (tar.gz)

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    11.2 中的新功能

    添加了可配置的 IPv6 支持 现在可在 IPv4 和 IPv6 之间设置客户端应用程序的 IP 地址首选项。 使用新的 ipaddresspreference 连接设置来控制行为。 有关详细信息,请参阅 设置连接属性 。 添加了对准备方法选择的支持 添加了新的连接字符串属性 prepareMethod,用于切换使用 sp_prepare 和 sp_prepexec。 使用新的 prepareMethod 连接设置来控制行为。 有关详细信息,请参阅 设置连接属性 。 缓存参数元数据调用 现在可缓存参数化查询的加密相关信息。 请参阅 通过 JDBC 驱动程序使用 Always Encrypted

    11.2 中的更改

    下载 Microsoft JDBC Driver 10.2.3 for SQL Server (zip)
    下载 Microsoft JDBC Driver 10.2.3 for SQL Server (tar.gz)

    版本号:10.2.3
    发布日期:2023 年 1 月 12 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 韩语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    版本号:10.2.2
    发布日期:2022 年 12 月 13 日

    下载 Microsoft JDBC Driver 10.2.2 for SQL Server (zip)
    下载 Microsoft JDBC Driver 10.2.2 for SQL Server (tar.gz)

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    版本号:10.2.1
    发布日期:2022 年 5 月 12 日

    下载 Microsoft JDBC Driver 10.2.1 for SQL Server (zip)
    下载 Microsoft JDBC Driver 10.2.1 for SQL Server (tar.gz)

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    10.2 合规性

    符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 10.2 包中的 jar。

    例如,10.2 包中的 mssql-jdbc-10.20.jre17.jar 文件应与 Java 17 配合使用。 与 Java 开发工具包 (JDK) 版本 17.0、11.0 和 1.8 兼容。 除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 10.2 for SQL Server 现在还与 Java 开发工具包 (JDK) 版本 17.0 兼容。

    10.2 版本

    版本号:10.2.3
    发布日期:2023 年 1 月 12 日

    修复了 10.2.3 中的问题:

  • 修复了批处理查询中发生超时的情况下不正确的更新计数
  • 修复了使用 Azure Functions 时令牌到期日期不正确的问题
  • 修复了引发数据库异常时的 null SQL 状态和零错误代码
  • 版本号:10.2.2
    发布日期:2022 年 12 月 13 日

    修复了 10.2.2 中的问题:

  • 清除空闲连接复原重新连接时准备的语句缓存
  • 修复了设置 KeepAlive 扩展选项
  • 修复了取消语句时驱动程序可能断言的问题
  • 修复了可调用语句索引超出界限错误
  • 修复了不检查 DONE 令牌错误以至异常被忽略的问题
  • 修复了查询取消 bug
  • 版本号:10.2.1
    发布日期:2022 年 5 月 12 日

    修复了 10.2.1 中的问题:

  • 更改了空闲连接复原能力超时,以使用现有的 SharedTimer
  • 修复了托管标识身份验证重试间隔,以指数方式正确回退
  • 删除了在 connectionCommand() 中对 executeCommand() 的超量调用
  • 版本号:10.2.0
    发行时间:2022 年 1 月 31 日

    下载 Microsoft JDBC Driver 10.2.0 for SQL Server (zip)
    下载 Microsoft JDBC Driver 10.2.0 for SQL Server (tar.gz)

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    10.2 中的新功能

    Feature encrypt = false 时证书验证 中断性变更 :当 encrypt = false 但服务器要求加密时,将根据 trustServerCertificate 连接设置验证证书。 aadSecurePrincipalId 和 aadSecurePrincipalSecret 已弃用 已弃用 aadSecurePrincipalId 和 aadSecurePrincipalSecret 连接属性。 请改用用户名和密码。 已删除 getAADSecretPrincipalId API 中断性变更:出于安全考虑,已删除 getAADSecretPrincipalId API。 SQL_Variant 支持 添加了在检索 DateTimeOffset 时对 SQL_Variant 数据类型的支持。 Linux 中的非阻止随机 更新为在为 enclave 包生成 GUID 时使用非阻止随机调用。 针对领域的 CNAME 解析 在指定领域时,添加了 CNAME 解析。 已更新依赖项 已更新 azure-identity azure-security-keyvault-keys gson bouncycastle 的依赖项版本。

    10.2 中的修复

    下载 Microsoft JDBC Driver 9.4.1 for SQL Server (zip)
    下载 Microsoft JDBC Driver 9.4.1 for SQL Server (tar.gz)

    版本号:9.4.1
    发布日期:2021 年 7 月

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    9.4 合规性

    符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 9.4 包中的 jar。

    例如,9.4 包中的 mssql-jdbc-9.4.0.jre16.jar 文件应与 Java 16 配合使用。 与 Java 开发工具包 (JDK) 版本 16.0、11.0 和 1.8 兼容。 除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 9.4 for SQL Server 现在还与 Java 开发工具包 (JDK) 版本 16.0 兼容。

    9.4 版本

    版本号:9.4.1
    发布日期:2021 年 12 月 7 日

    修复了 9.4.1 中的问题:

  • 修复了驱动程序遇到不支持的 TDS_COLMETADATA 时的潜在挂起
  • 修复了大容量复制中 LocalDateTime 和 LocalTime 到字符串的转换
  • 版本号:9.4.0
    发布日期:2021 年 7 月 30 日

    下载 Microsoft JDBC Driver 9.4.0 for SQL Server (zip)
    下载 Microsoft JDBC Driver 9.4.0 for SQL Server (tar.gz)

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    9\.4 中的新增功能

    Feature 已更新错误消息 与 Enclave 异常相关的错误消息现在包含指向故障排除指南的链接。
    与 Active Directory 身份验证失败相关的错误消息现在包括基础库中的错误字符串。 发送到服务器的驱动程序版本 驱动程序版本现在会在 PRELOGIN 期间正确发送到数据库。 客户端进程 ID 客户端进程 ID 现在会在 Java 9+ 上运行时发送到服务器。 Java 8 保留以前发送 0 作为客户端进程 ID 的功能。 已更新依赖项 已更新 azure-identity azure-security-keyvault-keys gson antlr bouncycastle 的依赖项版本。 已删除不必要的引用 删除了 Java 8 jar 中未使用的特定于 Java 9 的类引用

    9.4 中的修复

    下载 Microsoft JDBC Driver 9.2.1 for SQL Server (zip)
    下载 Microsoft JDBC Driver 9.2.1 for SQL Server (tar.gz)

    版本号:9.2.1
    发布日期:2021 年 3 月 2 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    9.2 合规性

    符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 9.2 包中的 jar。

    例如,9.2 包中的 mssql-jdbc-9.2.1.jre15.jar 文件应与 Java 15 配合使用。 与 Java 开发工具包 (JDK) 版本 15.0、11.0 和 1.8 兼容。 除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 9.2 for SQL Server 现在还与 Java 开发工具包 (JDK) 版本 15.0 兼容。

    9.2 版本

    版本号:9.2.1
    发布日期:2021 年 3 月 2 日

    修复了9.2.1 中的问题:

  • 修复了在 Azure 环境中进行 ActiveDirectoryServicePrincipal 身份验证期间客户端密码为空的问题。
  • 版本号:9.2.0
    发布日期:2021 年 1 月 29 日

    下载 Microsoft JDBC Driver 9.2.0 for SQL Server (zip)
    下载 Microsoft JDBC Driver 9.2.0 for SQL Server (tar.gz)

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    支持 JDK 15

    除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 9.2 for SQL Server 现在还与 Java 开发工具包 (JDK) 版本 15.0 兼容。

    添加了对 Azure Active Directory 交互式身份验证的支持

    添加身份验证类型 Microsoft JDBC Driver 9.2 for SQL Server 现在支持使用服务主体标识的客户端 ID 和密码来向 Azure Key Vault 进行身份验证。 请参阅 使用 Azure Active Directory 身份验证进行连接

    更新 Azure Key Vault 库以使用新式 Azure Key Vault 库

    Azure Key Vault 的库更改 Microsoft JDBC Driver 9.2 从上一代的 Azure Key Vault 库和 ADAL 库迁移到了更新式的 Azure Key Vault 和 Azure Identity 等效项。 依赖项变更 如果利用 Azure Active Directory 身份验证或 Azure Key Vault,请确保更新应用程序依赖项。 使用 Azure Key Vault 提供程序 Azure Active Directory 身份验证 时,请参阅依赖项要求

    为非 Azure Synapse Analytics 服务器启用了 useBulkCopyForBatchInsert

    非 Azure Synapse Analytics 服务器的 useBulkCopyForBatchInsert 更改

    下载 Microsoft JDBC Driver 8.4 for SQL Server (zip)
    下载 Microsoft JDBC Driver 8.4 for SQL Server (tar.gz)

    版本号:8.4.1
    发布日期:2020 年 8 月 27 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    8.4 合规性

    符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 8.4 包中的 jar。

    例如,8.4 包中的 mssql-jdbc-8.4.1.jre14.jar 文件应与 Java 14 配合使用。 与 Java 开发工具包 (JDK) 版本 14.0、11.0 和 1.8 兼容。 除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 8.4 for SQL Server 现在还与 Java 开发工具包 (JDK) 版本 14.0 兼容。

    8.4 版本

    版本号:8.4.1
    发布日期:2020 年 8 月 27 日
    已解决的问题:

  • 修复了 SQLServerConnectionPoolProxy delayLoadingLobs 不兼容的问题
  • 修复了 delayLoadingLobs 的潜在 NullPointerException 问题
  • 修复了使用 Windows 证书存储时解密列加密密钥的问题
  • 版本号:8.4.0
    发布日期:2020 年 7 月 31 日

    支持 JDK 14

    除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 8.4 for SQL Server 现在还与 Java 开发工具包 (JDK) 版本 14.0 兼容。

    添加了对使用托管标识向 Azure Key Vault 进行身份验证的支持

    添加身份验证类型 Microsoft JDBC Driver 8.4 添加新的连接属性 sendTemporalDataTypesAsStringForBulkCopy 。 默认情况下,此布尔属性为 TRUE。 请参阅 通过 JDBC 驱动程序使用大容量复制

    添加了对 Azure SQL DNS 缓存的支持

    DNS 缓存

    下载 Microsoft JDBC Driver 8.2 for SQL Server (zip)
    下载 Microsoft JDBC Driver 8.2 for SQL Server (tar.gz)

    版本号:8.2.2 发布时间:2020 年 3 月 24 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 zip 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    8.2 合规性

    符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 8.2 包中的 jar。

    例如,8.2 包中的 mssql-jdbc-8.2.2.jre11.jar 文件应与 Java 11 配合使用。 与 Java 开发工具包 (JDK) 版本 13.0、11.0 和 1.8 兼容。 除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 8.2 for SQL Server 现在还与 JDK 开发工具包 (JDK) 版本 13.0 兼容。

    8.2 版本

    版本号:8.2.2
    发布日期:2020 年 3 月 24 日
    已解决的问题:

  • 添加了用于配置受信任的 Azure Key Vault 终结点列表的选项
  • 版本号:8.2.1
    发布日期:2020 年 2 月 26 日
    已解决的问题:

  • 修复了使用 SQLServerResultSet.getObject() 检索 java.time.LocalTime java.time.LocalDate 类型的数据时可能出现的 NullPointerException 问题
  • 版本号:8.2.0
    发布日期:2020 年 1 月 31 日

    支持 JDK 13

    除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 8.2 for SQL Server 现在还与 JDK 开发工具包 (JDK) 版本 13.0 兼容。

    具有安全 Enclave 的 Always Encrypted

    Always Encrypted 更改 Microsoft JDBC Driver 8.2 for SQL Server 提高了从 SQL Server 检索临时数据类型时的性能。 此更改通过尽可能避免使用 java.util.Calendar 来消除不必要的临时数据类型转换。 以下临时数据类型列表受到此性能改进的影响;格式为“SQL Server 数据类型”(Java 映射)。 date (java.sql.Date)、datetime (java.sql.Timestamp)、datetime2 (java.sql.Timestamp)、smalldatetime (java.sql.Timestamp) 和 time (java.sql.Time)。

    1 由于 java.util.Calendar 和 java.time.LocalDateTime API 在处理时区方面存在差异,因此具有用户提供的与其关联的 java.util.Calendar 对象的时态数据类型或 microsoft.sql.DateTimeOffset 数据类型无法受益于这一改进。

    将 mssql-jdbc_auth-<version>-<arch>.dll(之前是 sqljdbc_auth.dll)部署到 Maven 存储库

    sqljdbc_auth.dll 更改

    7.4.1

    下载 Microsoft JDBC Driver 7.4.1 for SQL Server (self-extracting exe)
    下载 Microsoft JDBC Driver 7.4.1 for SQL Server (tar.gz)

    版本号:7.4.1
    发布日期:2019 年 8 月 2 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 self-extracting exe 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    7.4 合规性

    符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 7.4 包中的 jar。

    例如,7.4 包中的 mssql-jdbc-7.4.1.jre11.jar 文件应与 Java 11 配合使用。 与 Java 开发工具包 (JDK) 版本 12.0、11.0 和 1.8 兼容。 除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 7.4 for SQL Server 现在还与 JDK 开发工具包 (JDK) 版本 12.0 兼容。

    7.4 版本

    版本号:7.4.1
    发布日期:2019 年 8 月 2 日
    已解决的问题:

  • SQLServerDataTable SQLServerDataColumn 恢复了新的 hashCode() equals() API 实现,因为 API 更改中断了向后兼容性
  • 版本号:7.4.0
    发布日期:2019 年 7 月 31 日

    支持 JDK 12

    除 JDK 11.0 和 1.8 外,Microsoft JDBC Driver 7.4 for SQL Server 现在还与 JDK 开发工具包 (JDK) 版本 12.0 兼容。

    引入 NTLM 身份验证

    NTLM 更改 添加了 useFmtOnly 连接属性。 借助此功能,用户可以选择通过 SET FMTONLY ON 旧版 API 查询 ParameterMetaData。 此设置对于 sp_describe_undeclared_parameters 不按预期执行的情况很有用。 更多详细信息和限制。 请参阅 使用 useFmtOnly

    更新了 Microsoft Azure Key Vault SDK for Java 版本 1.2.1

    Key Vault SDK 更改

    7.2.2

    下载 Microsoft JDBC Driver 7.2.2 for SQL Server (self-extracting exe)
    下载 Microsoft JDBC Driver 7.2.2 for SQL Server (tar.gz)

    版本号:7.2.2
    发布日期:2019 年 4 月 16 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 self-extracting exe 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    7.2 合规性

    符合性更改 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 7.2 包中的 jar。

    例如,7.2 包中的 mssql-jdbc-7.2.2.jre11.jar 文件应与 Java 11 配合使用。 除 Java 开发工具包 (JDK) 版本 1.8 外,还与 JDK 11.0 兼容。 除 Java 开发工具包 (JDK) 版本 1.8 外,Microsoft JDBC Driver 7.2 for SQL Server 现在还与 JDK 11.0 兼容。

    7.2 版本

    版本号:7.2.2
    发布日期:2019 年 4 月 16 日
    已解决的问题:

  • 修复了无法正确清除 ActivityID 的问题
  • 版本号:7.2.1
    发布日期:2019 年 2 月 11 日
    已解决的问题:

  • 修复了某些参数化查询的分析问题
  • 版本号:7.2.0
    发布日期:2019 年 1 月 31 日

    Azure Active Directory 托管标识 (MSI) 身份验证

    MSI 更改 支持 Active Directory 托管标识 (MSI) 身份验证模式。 此身份验证模式适用于支持“标识”功能的 Azure 资源。

    两种类型的托管标识 (MSI) 均受驱动程序支持,可获取用于建立安全连接的 accessToken。 使用此身份验证模式的更多详细信息以及示例应用程序。 请参阅 使用 Azure Active Directory 身份验证进行连接

    引入开放服务网关协议 (OSGi) 支持

    OSGi 更改 添加了 DataSourceFactory 实现。 • org.osgi.service.jdbc.DataSourceFactory
    com.microsoft.sqlserver.jdbc.osgi.SQLServerDataSourceFactory 添加了 Activator 实现。 • org.osgi.framework.BundleActivator
    com.microsoft.sqlserver.jdbc.osgi.Activator

    引入 SQLServerError API

    错误 API 更改 引入了 SQLServerError API。 Getter API 用于检索有关服务器生成错误的更多详细信息。

    SQLServerException.getSQLServerError()
    SQLServerError 更多详细信息。 请参阅 处理错误

    更新了用于 Java 的 Microsoft Azure Active Directory 身份验证库 (ADAL4J) 版本 1.6.3

    ADAL4J 更改

    下载 Microsoft JDBC Driver 7.0 for SQL Server (self-extracting exe)
    下载 Microsoft JDBC Driver 7.0 for SQL Server (tar.gz)

    版本号:7.0.0
    发布日期:2018 年 7 月 31 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 self-extracting exe 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序: 中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    Microsoft JDBC Driver 7.0 for SQL Server 完全符合 JDBC API 规范 4.2。 根据 Java 版本兼容性命名 7.0 包中的 jar。 例如,7.0 包中的 mssql-jdbc-7.0.0.jre10.jar 文件应与 Java 10 配合使用。

    支持 JDK 10

    除 Java 开发工具包 (JDK) 版本 1.8 外,Microsoft JDBC Driver 7.0 for SQL Server 现在还与 JDK 10.0 兼容。 此更新还通过其清单文件将驱动程序的 Automatic-Module-Name 公开为 com.microsoft.sqlserver.jdbc

    支持空间数据类型

    Microsoft JDBC Driver 7.0 for SQL Server 现在提供对 SQL Server 空间数据类型 Geography 和 Geometry 的支持。 有关空间数据类型 API 以及如何使用它们的详细信息,请参阅 使用空间数据类型

    JDBC 4.3 实现引入了 java.sql.Connection API beginRequest() 和 endRequest()

    Microsoft JDBC Driver 7.0 for SQL Server 现在实现了 java.sql.Connection 类中的 beginRequest() endRequest() API。 这些 API 是使用 JDBC 4.3 规范和 JDK 9 引入的。 有关这些 API 的驱动程序实现的详细信息,请参阅 JDBC 驱动程序的 JDBC 4.3 符合性

    支持 SQL 数据发现和分类

    Microsoft JDBC Driver 7.0 for SQL Server 支持 SQL 数据发现和分类,以用于支持此功能的任何目标数据库。 驱动程序现在公开 SQLServerResultSet.getSensitivityClassification() API 以从提取的 ResultSet 中提取此信息。

    若要详细了解如何将此功能用于 JDBC 驱动程序,请参阅 SQL 数据发现和分类 中的示例。

    添加了连接属性:useBulkCopyForBatchInsert

    Microsoft JDBC Driver 7.0 for SQL Server 引入了新的连接属性 useBulkCopyForBatchInsert 。 只有 Azure Synapse Analytics 才支持此属性。

    默认情况下禁用此属性。 当将大量数据推送到 Azure Synapse Analytics 时,可以启用此属性以提高用户应用程序的性能。 启用此属性将更改批插入操作的行为,以切换为对用户提供的数据执行大容量复制操作。 有关此属性及其限制的详细信息,请参阅 将大容量复制 API 用于批插入操作

    添加了连接属性:cancelQueryTimeout

    Microsoft JDBC Driver 7.0 for SQL Server 引入了新的连接属性 cancelQueryTimeout 以取消 java.sql.Connection java.sql.Statement 对象上的 queryTimeout

    添加了 Azure Key Vault 提供程序构造函数

    Microsoft JDBC Driver 7.0 for SQL Server 为 SQLServerColumnEncryptionAzureKeyVaultProvider 重新引入了先前删除的构造函数。 它允许通过用 SQLServerKeyVaultAuthenticationCallback 实现的自定义方法进行身份验证来提取访问令牌。

    新的构造函数具有以下定义:

    /* This constructor is added to provide backward compatibility with 6.0
    * version of the driver. It is marked deprecated for removal in the next
    * stable release.
    @Deprecated
    public SQLServerColumnEncryptionAzureKeyVaultProvider(
            SQLServerKeyVaultAuthenticationCallback authenticationCallback,
            ExecutorService executorService) throws SQLServerException;
    /*New constructor to replace the above constructor*/
    public SQLServerColumnEncryptionAzureKeyVaultProvider(
                SQLServerKeyVaultAuthenticationCallback authenticationCallback) throws SQLServerException;
    

    更新了“用于 Java 的 Microsoft Azure Active Directory 身份验证库 (ADAL4J)”版本:1.6.0

    Microsoft JDBC Driver 7.0 for SQL Server 已将“用于 Java 的 Microsoft Azure Active Directory 身份验证库 (ADAL4J)”上的 Maven 依赖项更新为版本 1.6.0。 有关依赖项的详细信息,请参阅 Microsoft JDBC Driver for SQL Server 的功能依赖项

    下载 Microsoft JDBC Driver 6.4 for SQL Server (self-extracting exe)
    下载 Microsoft JDBC Driver 6.4 for SQL Server (tar.gz)

    版本号:6.4.0
    发布日期:2018 年 2 月 27 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 self-extracting exe 文件中的驱动程序:中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序:中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    Microsoft JDBC Driver 6.4 for SQL Server 完全符合 JDBC 规范 4.1 和 4.2。 根据 Java 版本兼容性命名 6.4 包中的 jar。 例如,6.4 包中的 mssql-jdbc-6.4.0.jre8.jar 文件必须与 Java 8 配合使用。

    支持 JDK 9

    除了支持 JDK 8.0 和 7.0 以外,驱动程序还支持 JDK 版本 9.0。

    JDBC 4.3 符合性

    除了支持 4.1 和 4.2 以外,驱动程序还支持 Java Database Connectivity API 4.3 规范。 JDBC 4.3 API 方法已添加,但尚未实现。 有关详细信息,请参阅 JDBC Driver 的 JDBC 4.3 合规性

    添加了连接属性:sslProtocol

    新的连接属性允许用户指定 TLS 协议关键字。 可能的值包括:“TLS”、“TLSv1”、“TLSv1.1”和“TLSv1.2”。 有关详细信息,请参阅 SSLProtocol

    弃用了连接属性:fipsProvider

    连接属性 fipsProvider 已从接受的连接属性的列表中删除。 有关详细信息,请参阅相关的 GitHub 拉取请求

    添加了用于指定自定义 TrustManager 的连接属性

    驱动程序现在支持指定添加了 trustManagerClasstrustManagerConstructorArg 连接属性的自定义 TrustManager。 可以动态指定基于每个连接信任的一组证书,而无需修改 Java 虚拟机 (JVM) 环境的全局设置。

    添加了对表值参数中的 datetime/smallDatetime 的支持

    当使用的是表值参数 (TVP) 时,驱动程序现在支持数据类型 datetimesmallDatetime

    添加了对 sql_variant 数据类型的支持

    JDBC 驱动程序现在支持要用于 SQL Server 的 sql_variant 数据类型。 TVP 和大容量复制等功能也支持 sql_variant 数据类型,但具有以下限制:

  • 对于日期值

    当使用 TVP 填充包含存储在 sql_variant 列中的 datetimesmalldatetimedate 值的表时,对结果集调用 getDateTime()getSmallDateTime()getDate() 方法不起作用并引发以下异常:

    java java.lang.String cannot be cast to java.sql.Timestamp

    作为一种解决办法,可改为使用 getString()getObject() 方法。

  • 对 null 值结合使用 TVP 和 sql_variant

    如果使用 TVP 填充一个表,并将 NULL 值发送给 sql_variant 列类型,则会引发异常。 当前不支持将 NULL 值插入 TVP 中的列类型 sql_variant

    实现了预处理语句元数据缓存

    JDBC 驱动程序已实现预处理语句元数据缓存以改进性能。 现在驱动程序支持使用 disableStatementPoolingstatementPoolingCacheSize 连接属性缓存驱动程序中的预处理语句元数据。 默认情况下,该功能被禁用。 有关详细信息,请参阅 JDBC 驱动程序的预处理语句元数据缓存

    Linux/macOS 现已开始支持 Azure AD 集成身份验证

    JDBC 驱动程序现在支持,在所有受支持的操作系统(Windows、Linux 和 macOS)上结合使用 Azure Active Directory (Azure AD) 集成身份验证和 Kerberos。 或者,在 Windows 操作系统上,用户可以使用 mssql-jdbc_auth-<version>-<arch>.dll 进行身份验证。

    更新了“用于 Java 的 Microsoft Azure Active Directory 身份验证库 (ADAL4J)”版本:1.4.0

    JDBC 驱动程序已将“用于 Java 的 Microsoft Azure Active Directory 身份验证库 (ADAL4J)”上的 Maven 依赖项更新为版本 1.4.0。 有关依赖项的详细信息,请参阅 Microsoft JDBC Driver for SQL Server 的功能依赖项

    下载 Microsoft JDBC Driver 6.2 for SQL Server (self-extracting exe)
    下载 Microsoft JDBC Driver 6.2 for SQL Server (tar.gz)

    版本号:6.2.2
    发布日期:2017 年 9 月 29 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 self-extracting exe 文件中的驱动程序:中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序:中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    Microsoft JDBC Driver 6.2 for SQL Server 完全符合 JDBC 规范 4.1 和 4.2。 根据 Java 版本兼容性命名 6.2 包中的 jar。 例如,建议将 6.2 包中的 mssql-jdbc-6.2.2.jre8.jar 文件与 Java 8 配合使用。

    6.2 版本

    版本号:6.2.2
    发布日期:2017 年 10 月 3 日
    已解决的问题:

  • 已将 ADAL4J 依赖项更新到版本 1.2.0,并将 Azure Key Vault 依赖项更新到版本 1.0.0
  • 版本号:6.2.1
    发布日期:2017 年 7 月 14 日
    已解决的问题:

  • 修正了使用 preparedStatement 运行没有参数的查询时的问题
  • 版本号:6.2.0
    发布日期:2017 年 6 月 30 日

    在 2017 年 6 月 29 日发布的 JDBC 6.2 RTW 中发现了元数据缓存改进方面的问题。 改进已回滚,并且新的 jar(版本 6.2.1)已于 2017 年 7 月 17 日发布。

    另一个改进已将 Azure Key Vault 依赖库版本升级到 1.0.0,并且新的 jar(版本 6.2.2)已于 2017 年 10 月 19 日发布。

    通过上述链接、GitHubMaven Central 下载 JDBC Driver 6.2 的最新更新。 请更新项目以使用 6.2.2 版本 jar。 有关详细信息,请查看 6.2.16.2.2 的发行说明。

    适用于 Linux 的 Azure AD 支持

    通过用户名/密码和访问令牌方法使用 Azure AD 身份验证将 Linux 应用程序连接到 Azure SQL 数据库。

    已启用 FIPS 的 JVM

    JDBC 驱动程序现可在以符合美国联邦信息处理标准 (FIPS) 140 的模式运行的 JVM 上使用,以符合联邦标准。

    Kerberos 身份验证改进

    JDBC 驱动程序现在具有以下支持:

  • Kerberos 配置无法修改或无法检索新令牌或 keytab 的应用程序的主体/密码方法。 此方法可用于对仅允许 Kerberos 身份验证的 SQL Server 实例进行身份验证。
  • 跨领域身份验证,方法是使用 Kerberos 集成身份验证,而无需明确设置服务器 SPN。 驱动程序现在会自动计算领域,即使未提供领域也是如此。
  • Kerberos 约束委派,方法是通过数据源接受被模拟用户凭据作为 GSS 凭据对象。 然后,此模拟凭据用于建立 Kerberos 连接。
  • 添加了超时

    JDBC 驱动程序现在支持以下可配置超时。 可以根据应用程序的需要进行更改。

  • 查询超时用于控制在运行查询时发生超时之前等待的秒数。
  • 套接字超时用于指定在读取或接受套接字时发生超时之前等待的毫秒数。
  • 版本号:6.1.0
    发布日期:2016 年 11 月 17 日

    Microsoft JDBC Driver 6.1 for SQL Server 完全符合 JDBC 规范 4.1 和 4.2。 这是 JDBC 驱动程序的初始开源版本。 可在 GitHub v6.1.0 标记 中找到源代码。 其中生成了 mssql-jdbc-6.1.0.jre8.jar 和 mssql-jdbc-6.1.0.jre7.jar 文件,它们对应于 Java 版本兼容性。

    下载 Microsoft JDBC Driver 6.0 for SQL Server (self-extracting exe)
    下载 Microsoft JDBC Driver 6.0 for SQL Server (tar.gz)

    版本号:6.0.8112
    发布日期:2017 年 1 月 17 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 self-extracting exe 文件中的驱动程序:中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序:中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    Microsoft JDBC Driver 6.0 for SQL Server 完全符合 JDBC 规范 4.1 和 4.2。 根据 JDBC API 版本兼容性命名 6.0 包中的 jar。 例如,6.0 包中的 sqljdbc42.jar 文件符合 JDBC API 4.2。 同样,sqljdbc41.jar 文件符合 JDBC API 4.1。

    若要确保 sqljdbc42.jar 或 sqljdbc41.jar 文件正确,请运行以下代码行。 如果输出为“驱动程序版本:6.0.7507.100”,则具有 JDBC 驱动程序 6.0 包。

    Connection conn = DriverManager.getConnection("jdbc:sqlserver://<server>;encrypt=true;user=<user>;password=<password>;");
    System.out.println("Driver version: " + conn.getMetaData().getDriverVersion());
    

    Always Encrypted

    驱动程序支持 SQL Server 2016 中的 Always Encrypted 功能。 此功能可确保从不在 SQL Server 实例中以纯文本形式显示敏感数据。 Always Encrypted 工作方式是,以透明方式加密应用程序中的数据,这样 SQL Server 就只会处理已加密数据,而不会处理纯文本值。 即使 SQL Server 实例或主机计算机遭入侵,攻击者也只能获得敏感数据的已加密文本。 有关详细信息,请参阅对 JDBC 驱动程序使用 Always Encrypted

    国际化域名

    驱动程序支持服务器名称的国际化域名 (IDN)。 有关详细信息,请参阅 JDBC 驱动程序的国际功能一文中的“使用国际域名”。

    参数化查询

    驱动程序现在支持,使用已准备的语句为复杂查询(如子查询和/或联接)检索参数元数据。 此改进仅对 SQL Server 2012 及更高版本有效。

    Azure Active Directory

    Azure AD 身份验证是一种使用 Azure AD 中的标识连接到 Azure SQL 数据库的机制。 Azure AD 身份验证可用于集中管理数据库用户的标识,并替代 SQL Server 身份验证。

    可使用 JDBC Driver 6.0 指定 JDBC 连接字符串中的 Azure AD 凭据以连接到 Azure SQL 数据库。 有关详细信息,请参阅设置连接属性一文中的身份验证属性。

    借助 TVP,可以将多行数据从客户端应用程序轻松封送到 SQL Server,而无需进行多次往返或使用特殊的服务器端逻辑来处理数据。 可使用 TVP 来封装客户端应用程序中的数据行,并以一个参数化命令的形式将数据发送到服务器。 传入数据行将存储在随后可使用 Transact-SQL 对其进行操作的表变量中。 有关详细信息,请参阅使用表值参数

    AlwaysOn 可用性组

    驱动程序现在支持透明连接到 AlwaysOn 可用性组。 驱动程序快速发现服务器基础结构的当前 AlwaysOn 拓扑,并以透明方式连接到当前的活动服务器。

    下载 Microsoft JDBC Driver 4.2 for SQL Server (self-extracting exe)
    下载 Microsoft JDBC Driver 4.2 for SQL Server (tar.gz)

    版本号:4.2.8112
    发布日期:2015 年 8 月 24 日

    如果你需要下载非所检测到的语言的驱动程序,则可使用以下直接链接。
    对于 self-extracting exe 文件中的驱动程序:中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语
    对于 tar.gz 文件中的驱动程序:中文(简体) | 中文(繁体) | 英语(美国) | 法语 | 德语 | 意大利语 | 日语 | 朝鲜语 | 葡萄牙语(巴西) | 俄语 | 西班牙语

    Microsoft JDBC Driver 4.2 for SQL Server 完全符合 JDBC 规范 4.1 和 4.2。 根据 JDBC API 版本兼容性命名 4.2 包中的 jar。 例如,4.2 包中的 sqljdbc42.jar 文件符合 JDBC API 4.2。 同样,sqljdbc41.jar 文件符合 JDBC API 4.1。

    若要确保 sqljdbc42.jar 或 sqljdbc41.jar 文件正确,请运行以下代码行。 如果输出为“驱动程序版本:4.2.6420.100”,则具有 JDBC 驱动程序 4.2 包。

    Connection conn = DriverManager.getConnection("jdbc:sqlserver://<server>;encrypt=true;user=<user>;password=<password>;");
    System.out.println("Driver version: " + conn.getMetaData().getDriverVersion());
    

    对 JDK 8 的支持

    除了支持 JDK 7.0、6.0 和 5.0 以外,驱动程序还支持 JDK 版本 8.0。

    JDBC 4.1 和 4.2 的遵从性

    除了支持 4.0 以外,驱动程序还支持 Java Database Connectivity API 4.1 和 4.2 规范。 有关详细信息,请参阅 JDBC 驱动程序的 JDBC 4.1 符合性JDBC 驱动程序的 JDBC 4.2 符合性

    大容量复制

    大容量复制功能可用于将大量数据快速复制到 SQL Server 数据库中的表或视图。 有关详细信息,请参阅结合使用大容量复制和 JDBC Driver

    XA 事务回滚选项

    驱动程序新增了适用于未准备好事务的现有自动回滚的超时选项。 有关详细信息,请参阅了解 XA 事务

    新 Kerberos 主体连接属性

    驱动程序使用新连接属性,提高 Kerberos 连接灵活性。 有关详细信息,请参阅使用 Kerberos 集成身份验证连接到 SQL Server

    版本号:4.1.8112
    发布日期:2014 年 12 月 12 日

    支持 JDK 7

    除了支持 JDK 6.0 和 5.0 以外,驱动程序还支持 JDK 版本 7.0。

    JDBC Driver 应用程序不支持 Itanium

    Itanium 计算机不支持 Microsoft JDBC Driver for SQL Server。

    JDBC 驱动程序的概述