全栈:JDBC驱动版本和SQLserver版本是否有关系?怎么选择JDBC的版本号?

研究ssm项目的pom.xml文件的时候发现,jdbc数据库连接和SQLserver的版本是否有关系,jdbc驱动应该下载哪个版本的。整理了一些资料,记录下来。

问题1:这两张图的版本号有什么关系?

图1:

图2:

第一个版本号(12.6.4.jre11)是Microsoft SQL Server JDBC驱动的版本。这个驱动用于Java应用程序连接SQL Server数据库。

第二个版本号(10.50.1600.1)是SQL Server Native Client(也称为SNAC)的版本。Native Client是一个独立的API,用于访问SQL Server数据库,通常被ODBC和OLE DB应用程序使用。

它们之间的关系:

  1. 属于不同的组件:
    • JDBC驱动:专为Java程序提供连接。
    • Native Client:为C/C++等本地应用程序提供连接(通过ODBC/OLE DB)。
  2. 版本号没有直接对应关系:
    • JDBC驱动的版本号(如12.6.4)是独立发展的,与SQL Server数据库的版本号不同。
    • Native Client的版本号(10.50.1600.1)与SQL Server数据库的版本号一致(10.50对应SQL Server 2008 R2)。

这两个版本号属于不同组件,它们之间没有直接对应关系。

问题2:怎么选择JDBC的版本号?(一般情况下看jre就可以了)

适用于 SQL Server 的 Microsoft JDBC 驱动程序支持矩阵
JDBC驱动程序的系统要求

下载链接:Microsoft JDBC Driver For SQL Server

适用于 SQL Server 的 Microsoft JDBC 驱动程序

核心兼容性矩阵 (mssql-jdbc)

mssql-jdbc 驱动版本 支持的 SQL Server 版本 支持的 Java 版本 (JRE) 重要特性/变化说明
12.4.x (最新稳定) 2008+ (建议 2012 SP3+) Azure SQL DB 8, 11, 17 持续维护更新,修复 Bug,增强安全性。强烈推荐使用此版本线。
11.2.x 2008+ (建议 2012 SP3+) Azure SQL DB 8, 11 LTS (长期支持) 版本线。接收关键安全更新。
10.2.x 2008+ (建议 2012 SP3+) Azure SQL DB 8
9.4.x 2012+ Azure SQL DB 8 停止支持: 2023 年 1 月 31 日。不再推荐使用。
9.2.x 2008+ (建议 2012+) Azure SQL DB 7, 8 停止支持: 2022 年 6 月 30 日。不再推荐使用。
8.4.x 2012+ Azure SQL DB 8 停止支持: 2021 年 7 月。不再推荐使用。
8.2.x 2008+ (建议 2012+) Azure SQL DB 7, 8 停止支持: 2021 年 1 月。不再推荐使用。
7.4.x 2012+ Azure SQL DB 8 停止支持: 2020 年 7 月。不再推荐使用。
7.2.x 2008+ (建议 2012+) Azure SQL DB 7, 8 停止支持: 2020 年 2 月。不再推荐使用。
6.4.x 2008+ (建议 2012+) Azure SQL DB 7, 8 停止支持: 2019 年 7 月。不再推荐使用。首次使用 mssql-jdbc 名称。

如果有大神,请帮忙指点一下。

相关推荐
weixin_5806140013 小时前
golang如何使用sync.WaitGroup_golang sync.WaitGroup并发等待使用方法
jvm·数据库·python
kiku181813 小时前
NoSQL之Redis集群
数据库·redis·nosql
2401_8836002514 小时前
如何配置Oracle的外部口令存储_安全外部密码库Wallet自动登录
jvm·数据库·python
2401_8971905514 小时前
如何在MongoDB中实现连表查询_group与累计求和操作
jvm·数据库·python
justjinji14 小时前
PHP源码运行是否受硬盘转速影响_7200转vs5400转对比【指南】
jvm·数据库·python
2301_7965885014 小时前
如何用 error 事件全局捕获页面图片或脚本加载失败状态
jvm·数据库·python
GitCode官方14 小时前
G-Star 精选开源项目推荐|第十四期
数据库·人工智能·自动化
qq_4138474014 小时前
JavaScript中利用Range对象实现复杂的文本选择操作
jvm·数据库·python
qq_6543669814 小时前
Vue.js组件通信Emit处理长列表滚动到底部后的数据请求
jvm·数据库·python
qq_6543669814 小时前
CSS3 按钮悬停时显示手型光标(cursor- pointer)的正确写法
jvm·数据库·python