Datenbank: SQL, liefert immer "null"

Tsa

Mitglied
Hey,
Hab ne Methode die das passwort eines user auslesen soll, aber irgendwie ist das passwort immer "null" :|
Code:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSet;
public class Datenbanken
{
    public static String readOutpassword(final String user) throws SQLException
    {   
    	try
    	{
        Class.forName( "org.gjt.mm.mysql.Driver" );
    	}
    	catch(ClassNotFoundException f)
    	{
    		System.out.println(f.getCause());
    	}
        	Connection cn = DriverManager.getConnection( "jdbc:mysql://localhost/java","root",""); 
            Statement st = cn.createStatement();
            ResultSet rs = st.executeQuery("select password from user where user = '"+user+"'");
       
        	String password=rs.getString(1);
        	System.out.println(password);
			
        	return password;
        
        
        
    }
}
hab nun schon den ganzen tag dran rumgebastelt, finde aber den Fehler nicht )c:
Kann mir wer helfen? Oder nen kleinen anstoß geben? ^^
mfg,
Jens
 
Hey,
vielen Dank, das funktioniert nun, aber nun hab ich das nächste problem und das ist SEHR merkwürdig!
folgender code:
Code:
import java.sql.*;
public class Einloggen
{
    public static void check(String user, String password) throws ClassNotFoundException, SQLException
    {
        String password_db= Datenbanken.readOutpassword(user);
        System.out.println(password);
        System.out.println(password_db);
        if(password == password_db)
        {
        	System.out.println("Korrekte angabe");
        }
        else
        {
        	System.out.println("False");
        }
    }
}

System.out.println(); gibt beides mal das gleiche aus, aber dann wird False ausgegeben! KEINE ahnung warum! Sehr merkwürdig, wäre cool wenn mirs wer erklären könnte... :)
mfg,
Jens
 
hy!
versuchs mal so:
Code:
if( password.equals( password_db ) ) {
    System.out.println("Korrekte angabe");
} else {
    System.out.println("False");
}
durch die equals() methode wird der inhalt der objekte verglichen... mit dem == operator vergleichst du ob's das selbe objekt ist.

gruss
ben
 
Zurück