Mysql
 sql >> Datenbank >  >> RDS >> Mysql

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:Unbekannte Spalte „Smith“ in „Where-Klausel“

Es sieht also so aus, als ob Ihr Problem darin besteht, dass die ID, die Sie für die Where-Klausel übergeben, falsch ist. Sie übergeben den Nachnamen "Smith" anstelle der ASP-ID.

Als Hinweis zum Programmieren mit SQL sollten Sie Ihre Abfragen sicherheitshalber wirklich mit dem mysql "?" schreiben. Dadurch kann mysql bei Bedarf die entsprechenden Anführungszeichen setzen und Prüfungen auf SQL-Injection durchführen.

sSQL = "SELECT id_asp, ficha, apellido1, apellido2, nombre, genero, telefono1, telefono2, promedio_sec FROM datos WHERE id_asp = ?";
PreparedStatement ps = connection.prepareStatement(sSQL);
ps.setObject(1, my_id);
ResultSet rs = ps.executeQuery();

Es ist etwas sicherer und Sie können Variablen direkt übergeben, ohne zu wissen, was in Anführungszeichen usw. eingeschlossen werden muss.