起因
因为开发系统时遇到某些需求,需要配置连接 SqlServer 2000 数据源
于是查询了相关文档 发现 Druid 本身是支持 SqlServer 数据库的 但是对于 SqlServer 本身,如何使用正确的 JDBC 版本才是头疼的地方。
结论
Yml 配置信息
先给出配置信息:
datasource:
master:
url: jdbc:mysql://ip:port/dataBaseName?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false
username: xxx
password: xxx
driver-class-name: com.mysql.jdbc.Driver
# 多数据源配置
multi-datasource:
url: jdbc:sqlserver://ip:port;DatabaseName=databaseName
username: xxx
password: xxx
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
Maven
<dependency>
<groupId>com.microsoft</groupId>
<artifactId>sqljdbc4</artifactId>
<version>3.0</version>
<scope>runtime</scope>
</dependency>
过程
可能有些同学会想问,为什么自己查询到的 JDBC 配置信息是
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databaseName=Table","A","password");
这个首先是由于过去连接方式是基于三个 JAR 包:msbase.jar,mssqlserver.jar,msutil.jar
但由于太过久远,翻遍全网除了 CSDN 以外,没找到其他网站有关于这三个 Jar 包的信息,那么问题来勒,CSDN 既然有为什么不直接下载呢
来,看截图
下载需要额外支付会员费用,CSDN 真的是越来越恶心了
恶心得一批
最后转换思路查找其余其他大版本微软可用的 SqlServer JDBC 最后发现 sqljdbc4-3.0.jar
是目前可用的且支持 SqlServer 2000 的 JDBC 驱动
启动 Springboot 没有抛出异常信息
P.S. 可能会有同学遇到
项目启动时查询虚表异常的状况,因为 SqlServer 本身不支持查询 DUAL 语句,可以选择直接替换该 Sql 语句为可用的测试语句,或者是新建一张名为 DUAL 的表即可。
总结
这也许是自己最后一次写这类日志了,希望分享的内容能帮到部分需要使用或者连接远古级数据库的朋友吧,以上~
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于