Rimuovere le virgolette da tutto il ?
Segnaposto PreparedStatement. Il driver JDBC citerà le stringhe per te. Quando citi tu stesso il segnaposto della stringa, il driver JDBC pensa che tu voglia passare un letterale ?
nella tua dichiarazione.
Non hai menzionato il database che stai utilizzando, ma l'autore principale del driver MySQL JDBC lo conferma qui:http://forums.mysql.com/read.php?39,499385,499450#msg-499450