[firebase-br] Testar parâmetro nulo

Maycon Ferraça maycon em nucleosistemas.com.br
Ter Jul 18 14:03:09 -03 2006


No FB2 Funcionará!

[]
Maycon Ferraça

Eduardo Jedliczka (TeamFB) escreveu:
> Pessoal,
> 
> Alguns dizem que este tipo de select funcionará no FB 2.0 (eu sinceramente 
> não sei), mas o FB 1.X tem uma limitação muito grande no "contexto" de 
> utilização de parâmetros. Não é possível comparar um parâmetro A com um 
> parâmetro B, não é possível passar o nome da tabela por parâmetro, não é 
> possível comparar um parâmetro com null, etc..
> 
> Mas não vejo muito motivo para quebrar tanto a cabeça. Há duas soluções 
> simples:
> 
> 1) Alterar o select pelo aplicativo.
> 2) Escrever uma SP que faz distinção entre os parâmetros e filtra apenas o 
> desejado.
> 
> No FB 2.0 ainda temos o "execute block" que permite utilizarmos uma SP sem 
> que ela exista no banco.
> 
> ======================
> Eduardo Jedliczka
> Membro do TeamFB - FireBase
> Apucarana - PR
> ======================
> 
> ----- Original Message ----- 
> From: ""Fabrício F. Kammer"" <ffkammer em conchalnet.com.br>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Tuesday, July 18, 2006 11:37 AM
> Subject: Re: [firebase-br] Testar parâmetro nulo
> 
> 
> Não funciona... eu já havia testado isso... dá erro na hora de executar
> o sql
> 
> francisco gamarra escreveu:
>> então faça o seguinte
>>
>> WHERE CAMPO=:PARAM OR cast(:PARAM as varchar(1000)) IS NULL.
>>
>>
>>
>>
>> Em 18/07/06, "Fabrício F. Kammer" <ffkammer em conchalnet.com.br> escreveu:
>>
>>> É o que eu faço hoje, mas em meu novo projeto isso não será possível,
>>> pois é para trabalhar com relatórios personalizados, e eu não saberei
>>> quais parâmetros farão parte da query no código fonte de meu sistema,
>>> então não poderei montar dinamicamente a cláusula WHERE.
>>>
>>> Realmente preciso de um condição para testar se um parâmetro é nulo ou
>>> não.
>>>
>>> []s
>>>
>>>
>>> francisco gamarra escreveu:
>>>
>>>> Partircularmente eu prefiro montar o SQL do que utilizar parâmetros.
>>>> assim eu consigo montar melhor minhas condições
>>>>
>>>> Em 18/07/06, "Fabrício F. Kammer" <ffkammer em conchalnet.com.br> escreveu:
>>>>
>>>>
>>>>> Salve Galera!
>>>>>
>>>>> Há como eu testar se um parâmetro é nulo? Mesmo que eu precise utilizar
>>>>> alguma funcao UDF para isso.
>>>>>
>>>>>
>>>>> Tenho várias consultas onde preciso que os parâmetros sejam opcionais,
>>>>> ou seja, se o usuário deixá-los em branco, a consulta deverá trazer
>>>>> todos os registros. Em Oracle eu consego utilizar o seguinte:
>>>>>
>>>>> WHERE CAMPO=:PARAM OR :PARAM IS NULL.
>>>>>
>>>>> Já no Firebird isso não é possível, então estou tentando achar alguma
>>>>> solução para isto. Já testei o seguinte:
>>>>>
>>>>> WHERE CAMPO=:PARAM OR 0=:PARAM
>>>>>
>>>>> Isso funciona, basta eu passar o valor 0 (zero) no parâmetro que a
>>>>> consulta me dá o retorno desejado, porém terei que lembra de utilizar
>>>>> isso no momento de validação dos parâmetros e não gostaria de fazer
>>>>> dessa forma, a menos que eu não encontre outra solução.
>>>>>
>>>>>
>>>>> []s
>>>>>
>>>>> Fabrício F. Kammer
>>>>>
>>>>> ______________________________________________
>>>>> 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
>>>>
>>>>
>>> --
>>> Fabrício F. Kammer
>>> 19 3866-1927
>>> ConchalNet
>>> 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
>>
> 
> 





Mais detalhes sobre a lista de discussão lista