Mysql
 sql >> Database >  >> RDS >> Mysql

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:colonna sconosciuta "Smith" in "clausola where"

Quindi sembra che il tuo problema sia l'id che stai passando per la clausola where non è corretto. Stai passando un cognome "Smith" invece dell'ID asp.

Come nota sulla programmazione con SQL, per sicurezza dovresti davvero scrivere le tue query con mysql "?". Ciò consente a mysql di inserire le virgolette appropriate, se necessario, e di eseguire controlli per l'iniezione di sql.

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();

È un po' più sicuro e puoi passare direttamente le variabili senza sapere cosa deve essere racchiuso tra virgolette ecc.