Diferencia 8.2 con 8.3 en parametro funcion sql, meno

From: Gabriel Hermes Colina Zambra <hermeszambra(at)yahoo(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Diferencia 8.2 con 8.3 en parametro funcion sql, meno
Date: 2009-02-21 04:27:12
Message-ID: 702632.33226.qm@web63707.mail.re1.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Resulta que actualice a 8.3 y hubo dos funciones que tuve que tocar para
que siguieran funcionando.

Paso a explicar.

Asi es como quedo en 8.3

CREATE OR REPLACE FUNCTION "central"."fnc_buscocliente" (varchar) RETURNS SETOF "central"."clientes" AS
$body$
select * from central.clientes where id_cliente::varchar = $1 or ruc = $1
$body$
LANGUAGE 'sql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER
COST 100 ROWS 1000;

Asi era

CREATE OR REPLACE FUNCTION "central"."fnc_buscocliente" (varchar) RETURNS SETOF "central"."clientes" AS
$body$
select * from central.clientes where id_cliente = $1 or ruc = $1
$body$
LANGUAGE 'sql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER;

Bueno, Ruc es varchar y id_cliente es integer, en 8.2 el parametro podia comparar el parametro varchar en id_cliente sin problemas, siendo esta permisividad muy comoda.

Personalmente creo que es mejor no ser permisivo, pero me lleve una sorpresa cuando mi aplicacion anunciaba un error en la busqueda y habia cambiado su comportamiento por que cambie el servidor.

A que otros cambios del estilo debo prestar atencion para adelantarme a problemas de migracion, donde puedo encontrar info al respecto.

Otra cosa COST 100 ROWS 1000, no es soportado por 8.2, o por lo menos no con el que uso en un cliente, pues genere una funcion en 8.3 y cuando copie el ddl y lo ejecute en 8.2, ups, tuve que ver por que no caminaba y esta era la causa.

Agradezco desde ya algun comentario sobre estos puntos, pues de momento estoy muy saturado y recurro al foro para actualizarme.

Gracias y disculpen las molestias

Atte.
Gabriel Colina

¡Sé el Bello 51 de People en Español! ¡Es tu oportunidad de Brillar! Sube tus fotos ya. http://www.51bello.com/

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2009-02-21 05:56:59 Re: Diferencia 8.2 con 8.3 en parametro funcion sql, meno
Previous Message Rodrigo E. De León Plicet 2009-02-21 00:00:46 Re: Compatibilidad RH enterprise 5.3 !!!