Не сте предоставили никакви подробности за езика/средата, но все пак ще се опитам да предположа:
Подготвените оператори на MySQL използват естествено ?
като заместител на параметъра, но PostgreSQL използва $1
, $2
и т.н. Опитайте да замените ?
с $1
и вижте дали работи:
WHERE address = $1
Съобщенията за грешки в PostgreSQL са много загадъчни.
Като цяло открих, че съобщенията за грешки в Postgres са по-добри от конкурентните продукти (хм, MySQL и особено Oracle), но в този случай сте успели да объркате анализатора отвъд разума. :)