PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Błąd Postgresa z Sinatra/Haml/DataMapper na Heroku

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




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Posortować według kolumny ASC, ale najpierw wartości NULL?

  2. Jak zweryfikować nakładające się czasy w Railsach za pomocą postgresql

  3. Szybkie wyszukiwanie w pobliżu użytkowników za pomocą PostGIS

  4. Jak działa funkcja Exp() w PostgreSQL

  5. Psql COPY z ograniczeniem kończy się niepowodzeniem