Re: [firebase-br] Parâmetros nulos

Kléber Caneva kdcc em terra.com.br
Qui Jul 20 09:27:17 -03 2006


Não sei pq teve que criar esse segundo parametro..

Veja nas mensagens de ontem, eu passei um exemplo onde usso exatamente como 
no seu exemplo do Oracle.

[]´s

Kléber Caneva

----- Original Message ----- 
From: "Fabiano Arndt" <fabianoallex em gmail.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, July 19, 2006 5:57 PM
Subject: Re: [firebase-br] Parâmetros nulos


Precisei disso tbm, em Oracle é facinho, normalmente nossos select de
relatórios e consultas tem esse formato no Oracle:

SELECT
  [CAMPOS]
FROM
  [TABLEAS]
WHERE
  (:PARAM IS NULL
    OR
     CAMPO = :PARAM)
  AND
  (:PARAM2 IS NULL
    OR
     CAMPO = :PARAM2)


no firebird tive que criar 2 parametros para cada opção, ficou mais ou
menos assim

SELECT
  [CAMPOS]
FROM
  [TABLEAS]
WHERE
  (:POR_PARAM = -1
    OR
     CAMPO = :PARAM)
  AND
  (:POR_PARAM_2 = -1
    OR
     CAMPO = :PARAM2)

aí se o usuário deseja pelo primeiro parametro, passo 0 para POR_PARAM
e o valor do parametro se ele deseja não filtrar pelo parametro, passo
-1 para POR_PARAM

espero que nao tenha ficado confusso


flw,
Fabiano.


Em 18/07/06, "Fabrício F. Kammer"<ffkammer em conchalnet.com.br> escreveu:
> Salve Galera!
>
> Alguém sabe alguma forma eficiente para testar se um parâmetro é nulo?
> Tenho muitas consultas com parâmetros opcionais e preciso que o select
> traga todos os registros caso o parâmetro não sejam informados.
>
> Em Oracle isso é o possível:
>
> WHERE CAMPO=:PARAM OR :PARAM IS NULL
>
> Já no FB não é possível esta solução. Testei o seguinte:
>
> WHERE CAMPO=:PARAM OR 0=:PARAM
>
> Porém dessa forma eu terei que passar um 0 (zero) na momento da execução
> da consulta, caso isso seja esquecido a consulta não retornará nenhum
> registro.
>
> []s
>
> --
> Fabrício F. Kammer
> Conchal/SP
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa

E-mail classificado pelo Identificador de Spam Inteligente Terra.
Para alterar a categoria classificada, visite
http://mail.terra.com.br/protected_email/imail/imail.cgi?+_u=kdcc&_l=1,1153342753.411977.18494.aldavila.hst.terra.com.br,5303,Des15,Des15

Esta mensagem foi verificada pelo E-mail Protegido Terra.
Scan engine: McAfee VirusScan / Atualizado em 19/07/2006 / Versão: 
4.4.00/4810
Proteja o seu e-mail Terra: http://mail.terra.com.br/








Mais detalhes sobre a lista de discussão lista