我正在尝试使用提供的connection string
连接到远程MS SQL服务器上的数据库。连接字符串如下:
data source=qsss.gar.de\SQL2012,3000;initial catalog=City;persist security info=True;user id=usr;password=usr##2009;
我知道我应该有合适的驱动程序,所以我从microsoft.com/download/en/details.aspx?id=21599下载了SQL Server驱动程序
,并将它们添加到我项目的构建路径。这些是sqljdbc.jar
和sqljdbc4.jar
。
我只是使用此测试代码来查看连接是否已建立。
public static void main(String[] args) throws Exception {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
Connection connection = DriverManager.getConnection(
"qsss.gar.de\SQL2012,3000;initial catalog=City;persist security info=True;user id=usr;password=usr##2009;");
System.out.println("Connected!");
}
这样做,我收到一个错误: 此驱动程序不支持Java Runtime Environment(JRE)1.8版。使用sqljdbc4.jar类库,它提供对JDBC 4.0的支持 。
我在这里做错了什么?
答案 0 :(得分:2)
不要将两个jar都添加到类路径中,因为它们都包含com.microsoft.sqlserver.jdbc.SQLServerDriver
- 类,并且在您的情况下,程序会从sqljdbc.jar
加载一个。从类路径中删除sqljdbc.jar
并仅添加sqljdbc4.jar
,以便您的程序始终加载正确的驱动程序版本。