sql >> Databáze >  >> RDS >> PostgreSQL

Chyba Postgres s Sinatra/Haml/DataMapper na Heroku

Vypadá to, že post_id je typu TEXT místo INTEGER. Chcete-li to vyřešit, musíte změnit datový typ. To bylo změněno ve verzi 8.3, starší verze mají implicitní obsazení. PostgreSQL můžete říct, aby to udělal:

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;

Viz také http://wiki.postgresql.org/wiki/Image :Pg83-implicit-casts.sql




  1. Nelze nastavit velikost zásobníku vláken v mysql

  2. Jak vyřešit InnoDB:Nelze uzamknout chybu mysql ./ibdata1?

  3. Omezte počet znaků ve sloupci dotazu mysql

  4. Zjistěte volné místo na tablespace