java.sql.SQLException:没有为jdbc找到合适的驱动程序:sqlserver ...(intellij,maven)

时间:2016-11-10 10:14:18

标签: java sql-server maven jdbc

我有上述错误,我想知道该怎么做。 我已经做了以下事情:

  1. 从微软网站下载sqljdbc4.jar
  2. 将其安装到我当地的maven存储库
  3. 将它包含在pom.xml中,如下所示:

      com.microsoft.sqlserver   sqljdbc4   4

  4. 由于我使用的是jdbc4,我读到我不必调用Class.forName,但可以直接建立与数据库的连接。 那么为什么我仍然会得到nosuitabledriver错误?

    编辑: 当使用如下的ClassForName时,我得到一个ClassNotFoundException。

    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); //I also tried Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
    String dbURL = "jdbc:sqlserver://localhost;databaseName=test;integratedSecurity=trues";
    conn = DriverManager.getConnection(dbURL);
    

2 个答案:

答案 0 :(得分:0)

首先您需要确保Driver classpath更正classpath

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

更改为:

 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

第二您需要确保dbURL更正dbURL:

String dbURL = "jdbc:sqlserver://localhost;databaseName=test;integratedSecurity=trues";

更改为:

String dbURL = "jdbc:sqlserver://localhost:1443;databaseName=test;integratedSecurity=trues";

第三次,在getConnection方法中添加您的数据库用户名和密码:

conn = DriverManager.getConnection(dbURL);

更改为:

conn = DriverManager.getConnection(dbURL,"yourUserName","yourPass");
希望它有所帮助。

答案 1 :(得分:-1)

我现在将外部模块添加到main而不是项目目录。我假设在部署应用程序之前需要执行后者。但现在,错误消失了。