PDA

Ver la Versión Completa : consulta con parametros en blanco


merlin
01-12-2003, 13:04:36
Wenas gente, q pasa como vais con el delphi?

Tengo un peqño problem con el delphi y sus ejecuciones de las qsl´s el problema es el siguiente:


una query facilona del to el unico inconveniente es q tiene 4 parametros y hay veces en las q algunos de estos parametros son en blanco y el problema es ese q el delphi no ejecuta las sql si tiene parametros en blanco o bueno yo no se hacerlo, alguien sabe como pasarle un parametro en blanco a una query??? :confused:

la query es esta:
Select
cbprove."CODIGO",
cbprove."NOMBRE_COM",
cbprove."DIRECC_ENV",
cbprove."CP_ENV",
cbprove."POBL_ENV",
cbprove."PROV_ENV",
cbprove."CIF_DNI",
cbprove."FAX",
cbprove."MOVIL",
cbprove."EMAIL",
cbprove."PROVEEDOR",
cbprove."ACREEDOR",
cbprove."ACTIVO",
cbprove."INACTIVO"
From cbprove
WHERE cbprove."PROVEEDOR"=:P AND
cbprove."ACREEDOR"=:A AND
cbprove."ACTIVO"=:AC AND
cbprove."INACTIVO"=:IA
ORDER BY cbprove."CODIGO"


Un saludo.
:D

delphi.com.ar
01-12-2003, 14:40:27
¿Qué pasa si escribes algo como?:
...
WHERE (CAMPO = :pCampo OR :pCampo IS NULL)

Y asignas null al valor del campo...

Saludos!

agova
02-12-2003, 16:13:20
Que tal, lo que yo hago en estos casos es construir la consulta en tiempo de ejecucion y no en tiempo de diseño, de esta forma puedo poner condiciones al ir creando la consulta, es algo asi como esto:


Cons.SQL.Clear;
Cons.SQL.ADD(' Select ....... ');
Cons.SQL.ADD(' WHERE ');
if ValorCampo<>Null then
Cons.SQL.ADD(' Campo=:ValorCampo)
.....


Cons.Open;

Espero te sirva.