簡體   English   中英

無法連接到MySQL數據庫:找不到合適的驅動程序

[英]Can't connect to MySQL database: No suitable driver found

我在使用java和jdbc時遇到了麻煩。 特別是,盡管我的代碼可以完美地在NetBeans項目中正常工作,但是當我嘗試在終端或ubuntu vps(這是我需要它的地方)上執行它時,我總是會遇到此異常:

java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/quakes

首先,是第一件事:是的,我正在將jdbc .jar添加到execute命令和compile命令中; 是的,我什至嘗試添加

Class.forName("com.mysql.jdbc.Driver");

但我總是收到ClassNotFoundException: com.mysql.jdbc.Driver異常我正在使用的.jar與NetBeans項目中使用的.jar完全相同,所以我知道我有正確的選擇,甚至可以從官方網站不會改變任何事情。 是的,數據庫存在,如果我嘗試連接到另一個數據庫,結果不會改變。 我也嘗試過切換到postgresql(是的,我沒有忘記更改URL),但無濟於事,它仍然找不到驅動程序。 有了這個,我猜測實際的錯誤在編譯/執行命令中,但是即使它們也應該沒問題:

javac *.java <-cp mysql-connector-java-5.1.41-bin.jar > (<>括號表示我嘗試使用和不指定類路徑進行編譯);

java TAW -cp mysql-connector-java-5.1.41-bin.jar

如果您想看到它,這是嘗試連接到數據庫的方法:

public Connection getConnection() throws SQLException {
    if (conn == null) {
        conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/"+
        this.dbname,this.user,this.pass);
    }
    return conn;
}

有誰知道為什么會這樣嗎?

您需要將java的classpath選項放在主類的名稱之前,否則將其視為程序參數:

java -cp mysql-connector-java-5.1.41-bin.jar;. TAW

您可以逐步使用此方法創建連接。

這是一個示例連接:

  Class.forName("com.mysql.jdbc.Driver");
                    // Setup the connection with the DB
                    connect = DriverManager
                                    .getConnection("jdbc:mysql://localhost/feedback?"
                                                    + "user=sqluser&password=sqluserpw");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM