java - R 通过 JDBC 连接到 SQL Server - 驱动程序版本错误
问题描述
我正在尝试通过 JDBC 连接到 SQL Server(是的,我知道 ODBC 更好,但我需要对服务器安全性进行更改)。
library(RJDBC)
library(rJava)
drv <- JDBC("com.microsoft.sqlserver.jdbc.SQLServerDriver" ,
"C:/SQL JDBC/sqljdbc_4.1/enu/jre7/sqljdbc41.jar" ,identifier.quote="`")
但我似乎找不到正确的驱动程序版本:
Error in .jfindClass(as.character(driverClass)[1]) :
java.lang.UnsupportedClassVersionError: com/microsoft/sqlserver/jdbc/SQLServerDriver has been compiled by a more recent version of the Java Runtime (class file version 58.0), this version of the Java Runtime only recognizes class file versions up to 52.0
我已尝试使用 4.0、4.1、4.2 和 8.4 的驱动程序:
我在 Windows 10 上安装了 64 位 R 和 64 位 Java。
解决方案
问题是您的机器上安装了 Java 8,但驱动程序是为 java 14 构建的(类文件版本 58.0说明了这一点)。
您可以在您的机器上安装 java 14 或获取 Java 8 的 JDBC 驱动程序。
推荐阅读
- c# - C# - 在 IEnumerable 中找到第一个枚举并转换为字符串
- javascript - 如何重用现有赛普拉斯测试中的功能,并在新测试中调用它?
- aurelia - 无法读取属性“api”
- c# - EF Core - 存储在父级的子集合的单一选择
- ruby - 如何在 Docker 中调试已安装的 Ruby gem?
- command-line-interface - 多字命令行参数的样式指南规则?
- arrays - 在 bash shell 中使用输出文件中的数组
- python - 与 Tensorflow 中的常规 LSTMCell 相比,使用 CudnnLSTM 进行训练时的结果不同
- python-3.x - 将 Python 模块导入 Sublime Text 3
- .net - Select.Pdf:安全透明方法访问安全关键方法