Neuvedli jste žádné podrobnosti o jazyce/prostředí, ale přesto se pokusím odhadnout:
Připravené příkazy MySQL nativně používají ? jako zástupný symbol parametru, ale PostgreSQL používá $1 , $2 atd. Zkuste nahradit ? s $1 a zjistěte, zda to funguje:
WHERE address = $1
Chybové zprávy v PostgreSQL jsou velmi záhadné.
Obecně jsem zjistil, že chybové zprávy Postgres jsou lepší než konkurenční produkty (ehm, MySQL a zejména Oracle), ale v tomto případě se vám podařilo zmást analyzátor nad rozum. :)