Re: SQL dinamico con parametros

From: Oswaldo <listas(at)soft-com(dot)es>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: SQL dinamico con parametros
Date: 2012-05-14 18:14:41
Message-ID: 4FB14B91.3090809@soft-com.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

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

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alejandro Carrillo 2012-05-14 23:13:58 Implementacion de (+)
Previous Message Sergio Gabriel Rodriguez 2012-05-14 13:16:59 Instagram usa Postgres