Non hai fornito alcun dettaglio sulla lingua/ambiente, ma proverò comunque a indovinare:
Le istruzioni preparate da MySQL utilizzano nativamente ?
come segnaposto del parametro, ma PostgreSQL usa $1
, $2
ecc. Prova a sostituire il ?
con $1
e vedi se funziona:
WHERE address = $1
I messaggi di errore in PostgreSQL sono molto criptici.
In generale, ho scoperto che i messaggi di errore di Postgres sono migliori dei prodotti concorrenti (ehm, MySQL e soprattutto Oracle), ma in questo caso sei riuscito a confondere il parser oltre la sanità mentale. :)