El 09/05/2012 20:27, Alejandro Carrillo escribió:
Si, pero como puedo crear una function q ejecute el execute immediate de
tal forma que el numero de parámetros sea variable y evitando inyeccion sql?
No se si pillo lo que quieres hacer, el using ese me despista.
Yo tengo un caso en el que la aplicación ejecuta una función con varios
parámetros, pero es posible que alguno de ellos no haya sido
seleccionado por el operador. En ese caso se entiende que para ese
parámetro quiere todos los valores posibles
el codigo seria mas o menos asi (pseudo code)
declare function queryvarparams(par1 varchar, par2 int, par3 bool)
begin
select
c1,c2,c3
from tabla
where
case when $1 is null then true else c1 = $1 end
and case when $2 is null then true else c2 = $2 end
abd case when $3 is null then true else c3 = $3 end
De esta forma si pasas como null los parámetros no usados el sql no
filtrará ese valor
--
Oswaldo
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda