Что еще мне не хватает?Я получаю сообщение об ошибке: Нет подходящего драйвера найден для JDBC - PullRequest
1 голос
/ 11 июля 2019
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

class test4 {

    public static void main(String[] args) {
        test4 connServer = new test4();
        connServer.dbConnect("jdbc:sqlserver:DESKTOP-TEST\\SQLEXPRESS;databaseName=TESTDB;integratedSecurity=true");
    }

   public void dbConnect(String db_connect_string)
   {
      try {
         Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
         Connection conn = DriverManager.getConnection(db_connect_string);
         Statement statement = conn.createStatement();
         String queryString = "select * from TESTTBL";
      } catch (Exception e) {
         e.printStackTrace();
      }
   }
}

Выше мой код.Я получаю эту ошибку:

java.sql.SQLException: не найден подходящий драйвер для jdbc

В этой строке:

Connection conn = DriverManager.getConnection(db_connect_string);

Версия сервера MS SQL - 2017.

Версия Java и javac - 11.0.3.

Я добавил mssql-jdbc-7.2.2.jre11.jar в качестве внешнего файла JAR.Так же и в ссылочных библиотеках.Прежде чем добавить его в качестве ссылки, у меня была ошибка:

java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver ошибка в строке: Class.forName ("com.microsoft.sqlserver).jdbc.SQLServerDriver ");.

Но теперь у меня другая ошибка.

Что еще мне не хватает?

Ответы [ 2 ]

1 голос
/ 11 июля 2019

Вам не хватает // между именем драйвера и именем хоста:

connServer.dbConnect("jdbc:sqlserver://DESKTOP-TEST\\SQLEXPRESS;databaseName=TESTDB;integratedSecurity=true");
// Here -----------------------------^
0 голосов
/ 11 июля 2019

Попробуйте это -

 DriverManager.registerDriver(new com.microsoft.sqlserver.jdbc.SQLServerDriver())

и Debug as Java Application, чтобы проверить, загружается ли драйвер или нет.

...