SQL para hacer cast de postgres 8.2 para postgres 8.3
Cuando se realiza la migración de postgres 8.2 a postgres 8.3, no todos los tipos de datos son iguales, y es necesario hacer unos cast de tipo, y de funciones para que todo funcione correctamente. Para ello basta con ejecutar las siguientes sentencias SQL:
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(oid) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(oidout($1));'; CREATE CAST (oid AS text) WITH FUNCTION pg_catalog.text(oid) AS IMPLICIT; CREATE FUNCTION pg_catalog.text(DATE) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(date_out($1));'; CREATE CAST (DATE AS text) WITH FUNCTION pg_catalog.text(DATE) AS IMPLICIT; CREATE FUNCTION pg_catalog.text(DOUBLE PRECISION) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(float8out($1));'; CREATE CAST (DOUBLE PRECISION AS text) WITH FUNCTION pg_catalog.text(DOUBLE PRECISION) AS IMPLICIT; CREATE FUNCTION pg_catalog.text(REAL) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(float4out($1));'; CREATE CAST (REAL AS text) WITH FUNCTION pg_catalog.text(REAL) AS IMPLICIT; CREATE FUNCTION pg_catalog.text(TIME WITH TIME zone) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(timetz_out($1));'; CREATE CAST (TIME WITH TIME zone AS text) WITH FUNCTION pg_catalog.text(TIME WITH TIME zone) AS IMPLICIT; CREATE FUNCTION pg_catalog.text(TIME WITHOUT TIME zone) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(time_out($1));'; CREATE CAST (TIME WITHOUT TIME zone AS text) WITH FUNCTION pg_catalog.text(TIME WITHOUT TIME zone) AS IMPLICIT; CREATE FUNCTION pg_catalog.text(TIMESTAMP WITH TIME zone) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(timestamptz_out($1));'; CREATE CAST (TIMESTAMP WITH TIME zone AS text) WITH FUNCTION pg_catalog.text(TIMESTAMP WITH TIME zone) AS IMPLICIT; CREATE FUNCTION pg_catalog.text(INTERVAL) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(interval_out($1));'; CREATE CAST (INTERVAL AS text) WITH FUNCTION pg_catalog.text(INTERVAL) 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; CREATE FUNCTION pg_catalog.text(NUMERIC) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(numeric_out($1));'; CREATE CAST (NUMERIC AS text) WITH FUNCTION pg_catalog.text(NUMERIC) AS IMPLICIT; CREATE FUNCTION pg_catalog.text(TIMESTAMP WITHOUT TIME zone) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(timestamp_out($1));'; CREATE CAST (TIMESTAMP WITHOUT TIME zone AS text) WITH FUNCTION pg_catalog.text(TIMESTAMP WITHOUT TIME zone) AS IMPLICIT;
ArtÃculos relacionados:
2 comentarios en SQL para hacer cast de postgres 8.2 para postgres 8.3
Deja un comentario
Buscador
Mi foto aleatoria
Comentarios recientes
CategorÃas
- Aplicaciones (34)
- Deportes (5)
- Exponentcms (15)
- Firefox (4)
- FotografÃa (15)
- Hardware (17)
- HTML CSS JavaScript y PHP (14)
- Humor (7)
- Internet (36)
- Musica (27)
- Posicionamiento Seo (12)
- Programación (7)
- Scripting (7)
- Seguridad (27)
- Sin categorÃa (2)
- Sistemas operativos (7)
- SQL-Bases Datos (3)
- Varios (87)
- Virtualización (21)
Enlaces
Archivos
- agosto 2011 (1)
- junio 2011 (2)
- mayo 2011 (1)
- abril 2011 (3)
- marzo 2011 (1)
- febrero 2011 (1)
- diciembre 2010 (1)
- noviembre 2010 (1)
- julio 2010 (2)
- junio 2010 (2)
- mayo 2010 (4)
- abril 2010 (1)
- marzo 2010 (1)
- febrero 2010 (5)
- enero 2010 (4)
- diciembre 2009 (5)
- noviembre 2009 (9)
- octubre 2009 (4)
- septiembre 2009 (9)
- agosto 2009 (9)
- julio 2009 (20)
- junio 2009 (8)
- mayo 2009 (13)
- abril 2009 (12)
- marzo 2009 (13)
- febrero 2009 (18)
- enero 2009 (15)
- diciembre 2008 (14)
- noviembre 2008 (14)
- octubre 2008 (18)
- septiembre 2008 (7)
- agosto 2008 (8)
- julio 2008 (3)
- octubre 2007 (4)

Excelente aporte Jonathan! gracias a tu publicación hemos migrado exitosamente las base de datos de Postgres 8.2 a 8.3 sin afectar las aplicaciones.
Solo el conocimiento nos hace libres.
Éxitos!
Gracias por la ayuda Jhonatan, resolvà mi problema con la migración de 8.1 a 8.4. Bravo