Bạn chưa cung cấp bất kỳ thông tin chi tiết nào về ngôn ngữ / môi trường, nhưng dù sao thì tôi cũng sẽ thử phỏng đoán:
Các câu lệnh chuẩn bị sẵn của MySQL nguyên bản sử dụng ?
làm trình giữ chỗ tham số, nhưng PostgreSQL sử dụng $1
, $2
v.v ... Hãy thử thay thế ?
với $1
và xem nó có hoạt động không:
WHERE address = $1
Các thông báo lỗi trong PostgreSQL rất khó hiểu.
Nói chung, tôi thấy rằng thông báo lỗi Postgres tốt hơn các sản phẩm cạnh tranh (ahem, MySQL và đặc biệt là Oracle), nhưng trong trường hợp này, bạn đã cố gắng nhầm lẫn với trình phân tích cú pháp ngoài sự tỉnh táo. :)