无法使用jbdc驱动程序连接到mysql

mu0hgdu0  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(444)

我试图访问mysql数据库,但出现以下错误:

No suitable driver found for jdbc:mysql//localhost:3306/...

我知道这个问题已经被问过了,但是我还没有用现有主题中的解决方案来解决我的问题。我重用了一个两年前还在工作的连接类。
我改变了我的电脑,重新安装了wamp和eclipse,但是完全相同的类和良好的buildpath配置不起作用。下面是我用来连接的代码:

Connection connection = null;
public java.sql.Statement stmt = null;
public java.sql.PreparedStatement prStmt;
public ResultSet rs = null;

public DbConnex(String sgbd, int port, String dbName, String user, String pass){

    String DbInfo = String.format("jdbc:%s//localhost:3306/%s", sgbd, dbName);//jdbc:mysql://address=(protocol=tcp)(host=localhost)(port=3306)/nekogame
                                                                              //jdbc:%s//localhost:3306/%s
    //test trouver le driver
    try {
        Class.forName("com.mysql.jdbc.Driver");
    } catch (ClassNotFoundException e) {
        System.out.println("Where is your MySQL JDBC Driver?");
        e.printStackTrace();
        return;
    }

    System.out.println("MySQL JDBC Driver Registered!");

    //test connexion
    try {
        connection = DriverManager
        .getConnection(DbInfo, user, pass);

    } catch (SQLException e) {
        System.out.println("Connection Failed! Check output console");
        e.printStackTrace();
        return;
    }

    if (connection != null) {
        System.out.println("it's all good!");
    } else {
        System.out.println("Failed to make connection :( !");
    }
 }

以下是输出,显示我的驱动程序已被识别:

"MySQL JDBC Driver Registered! Connection Failed! Check output console"

问题似乎发生在路上 getConnection . 我验证了参数,并下载了最新的驱动程序。我也有最新的wamp,应该嵌入最新的mysql。现在我不知道该怎么办了。

1szpjjfi

1szpjjfi1#

找不到合适的驱动程序jdbc:mysql//localhost:3306/
而正确的连接字符串是,您错过了冒号( : )就在之后 mysql . 所以,应该是这样

jdbc:mysql://localhost:3306/<dbname>

所以,你需要在这里改变

String.format("jdbc:%s//localhost:3306/%s", sgbd, dbName);

相反,它应该是

String.format("jdbc:%s://localhost:3306/%s", sgbd, dbName);

仅供参考,连接字符串请参考官方页面

相关问题