Java连接到远程MS SQL服务器数据库

时间:2016-08-04 10:37:54

标签: java sql-server jdbc

我正在尝试使用提供的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.jarsqljdbc4.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的支持

我在这里做错了什么?

1 个答案:

答案 0 :(得分:2)

不要将两个jar都添加到类路径中,因为它们都包含com.microsoft.sqlserver.jdbc.SQLServerDriver - 类,并且在您的情况下,程序会从sqljdbc.jar加载一个。从类路径中删除sqljdbc.jar并仅添加sqljdbc4.jar,以便您的程序始终加载正确的驱动程序版本。