Witam mam metodę, która ma sprawdzić czy w bazie znajduje się użytkownik o podanym loginie i haśle, po czym sprawdzany jest typ konta i zwracany odpowiedni typ konta. Jednak poniższa metoda zawsze zwraca mi błąd. Czemu tak się dzieje? Do tabeli wrzuciłem 1 użytkownika, który ma login admin hasło admin i typ admin, więc wszystko powinno się zgadzać a zwracany jest za każdym razem "Błąd" zamiast "Admin". Zauważyłem, że niestety metoda nie wchodzi dalej niż
dane = this.getData("select * from uzytkownicy");
nie wchodzi w ogóle do tego while'a.
String logowanie(String login, String haslo) {
ResultSet dane;
try {
dane = this.getData("select * from uzytkownicy");
while (dane.next()) {
System.out.println(dane.getString(4));
System.out.println(dane.getString(5));
System.out.println(dane.getString(11));
if (login.equals(dane.getString(4)) && haslo.equals(dane.getString(5))) {
if (dane.getString(11).equals("admin")) {
return "admin";
}
}
}
} catch (SQLException ex) {
Logger.getLogger(BazaDanych.class.getName()).log(Level.SEVERE, null, ex);
}
return "Błąd";
}
Metoda getData:
public ResultSet getData(String sql) {
if (connected) {
ResultSet rc = null;
Statement st = null;
try {
st = con.createStatement();
rc = st.executeQuery(sql);
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, "Nie udalo sie wykonac: " + sql + " " + e.getMessage(), "Błąd", JOptionPane.ERROR_MESSAGE);
e.printStackTrace();
};
return rc;
}
JOptionPane.showMessageDialog(null, "Nie jestes podlaczony" + sql, "Błąd", JOptionPane.ERROR_MESSAGE);
return null;
}
A tabela wygląda tak, więc wszystko powinno być ok.
create table uzytkownicy (
id_uzytkownika number(6,0) constraint uzytkownicy_pk primary key,
imie varchar2(15),
nazwisko varchar2(25),
login varchar(25),
haslo varchar(25),
pesel varchar(11),
miasto varchar(25),
ulica varchar(30),
telefon varchar(15),
mail varchar(25),
typ varchar(25)
);
i insert do niej
insert into uzytkownicy(imie, nazwisko, login, haslo, pesel, miasto, ulica, telefon, mail, typ) values ('admin', 'admin', 'admin', 'admin', 'admin', 'admin', 'admin', 'admin', 'admin','admin');