ich SQLite bin mit einem Login zu tun, aber die Login-und Datenbank-Worte, die ich den folgenden Code verwendet vergleichen:Zwei identische Wörter sind verschiedene
sagenpublic static boolean result(String nome, String pass) {
Connection c = null;
Statement stmt = null;
boolean bo = false;
try {
Class.forName("org.sqlite.JDBC");
c = DriverManager
.getConnection("jdbc:sqlite:C:/Users/M4UR0/Desktop/Pastas/Programação/Java/Albamoura/data.db");
c.setAutoCommit(false);
stmt = c.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM COMPANY where NAME = '" + nome + "';"); //
String password = rs.getString("PASSWORD");
if (rs.next() || !pass.equalsIgnoreCase(password)) {
bo = false;
System.out.println("deu1 " + password + " - " + pass);
} else {
System.out.println("Entrou!");
bo = true;
}
rs.close();
stmt.close();
c.close();
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
System.exit(0);
bo = false;
}
System.out.println("Operation done successfully");
return bo;
}
Und Konsole:
Conecção estabelecida!
deu1 Wort - Wort
Betrieb
falsch
2 identische Wörter etwas so anders erscheinen, habe ich nicht bemerkt erfolgreich getan? Hilfe pls
Was ist ein "Stromg"? –
seine worte sorry. –
Ich habe auch bemerkt, dass die Zeile 'stmt.executeQuery (...)' anfällig für SQL-Injection ist, möchten Sie stattdessen vorbereitete Anweisungen verwenden. – dat3450