Wygląda na to, że post_id jest typu TEKST zamiast INTEGER. Aby to naprawić, musisz zmienić typ danych. Zostało to zmienione w wersji 8.3, starsze wersje mają niejawną obsadę. Możesz powiedzieć PostgreSQL, aby to zrobił:
CREATE FUNCTION pg_catalog.text(integer) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(int4out($1));';
CREATE CAST (integer AS text) WITH FUNCTION pg_catalog.text(integer) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(smallint) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(int2out($1));';
CREATE CAST (smallint AS text) WITH FUNCTION pg_catalog.text(smallint) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(bigint) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(int8out($1));';
CREATE CAST (bigint AS text) WITH FUNCTION pg_catalog.text(bigint) AS IMPLICIT;
Zobacz także http://wiki.postgresql.org/wiki/Image :Pg83-niejawne-casty.sql