java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)

Warum denken Sie, dass diese Funktion gibt mir immer null??
Mit einem anderen login-Programm, das die gleiche code-Struktur, es funktioniert, groß.
Meine DBURL jdbc:mysql://localhost:8889/Datenbank

    public String retrieveUserPassword(String userName, String password) {

    String query = "SELECT UserPassword FROM Access where UserName='"+userName+"'";
    String dbresult=null; //this might be the problem, but I must define it

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

    }catch (ClassNotFoundException ex1) {

      System.out.println("Driver could not be loaded: " + ex1);
      Logger.getLogger(DatabaseModel.class.getName()).log(Level.SEVERE, null, ex1);
    }
    try {

          //These are private variables declared at the top of the class 
          //and used by various functions   
          con = DriverManager.getConnection(DatabaseURL, userName, password);   
          st = con.createStatement(); 
          rs = st.executeQuery(query);

            if(rs.next()){

                dbresult= rs.getString(3);
            }

     }catch (SQLException e) {

      e.printStackTrace();
     }    

  return dbresult;

}

Die Access-Tabelle besteht aus drei Spalten:
UserID, UserName, UserPassword

nicht die Titel die Frage beantworten?
Debuggen und überprüfen if-Abfrage ist eigentlich der Rückgabe eines Wertes. ich.e if(rs.next()) wahr ist.
ein. Wie ich bereits erwähnt habe, ist der code richtig ist, da ich versucht habe es in einem anderen Programm einfach kopieren und einfügen, und ich habe nicht dieses problem haben. Die Datenbank immer gewährt den Zugang zu den root-Benutzer.
Thakur ja, es funktioniert
Versuchen, zu drucken, Benutzername und Passwort direkt vor der getConnection() aufrufen, und prüfen Sie, ob Sie wirklich richtig sind.

InformationsquelleAutor QGA | 2014-03-19

Schreibe einen Kommentar