Reputation: 786
try (PreparedStatement stmt = conn.
prepareStatement(
"update klant set naam = ?, voornaam = ?, geboortedatum = ?, opmerking = ?, debetstand_limiet = ?, actief = ? from klant where id = ?");) {
stmt.setString(1, teWijzigenKlant.getNaam());
stmt.setString(2, teWijzigenKlant.getVoornaam());
stmt.setString(3, teWijzigenKlant.getGeboorteDatum().toString());
stmt.setString(4, teWijzigenKlant.getOpmerking());
stmt.setDouble(5, teWijzigenKlant.getDebetstandLimiet().doubleValue());
byte b;
if (teWijzigenKlant.isActief() == true){
b = 1;
}
else{
b = 0;
}
stmt.setByte(6, b);
stmt.setInt(7, teWijzigenKlant.getId());
stmt.execute();
When I try to test a method that contains this code, it says I have an error in my SQL syntax but I can't seem to figure out what it is... My database consists of the following columns:
1 id int(11) Nee Geen AUTO_INCREMENT Veranderen Veranderen
2 naam varchar(64) latin1_swedish_ci Nee Geen Veranderen
3 voornaam varchar(32) latin1_swedish_ci Nee Geen
4 geboortedatum date Nee Geen Veranderen Veranderen
5 opmerking text latin1_swedish_ci Ja NULL Veranderen
6 debetstand_limiet double Nee Geen Veranderen Veranderen
7 actief tinyint(1)
Anyone know what I'm doing wrong?
Upvotes: 1
Views: 42
Reputation: 360662
"update klant set [..snip..] from klant where id = ?");) {
^^^^^^^^^^
update
queries don't have a from
clause... and would be redundant ANYWAYS since you already specified table klant
at the beginning of the update string.
Upvotes: 5