[firebase-br] IS NULL , LIKE e =

Mario brujeria em task.com.br
Sáb Set 1 13:47:15 -03 2007


Pessoal,

aproveitando a deixa estou com um dilema.

Utilizando SessionBean do J2EE crio um SELECT no qual posso adicionar um
criteria, por exemplo:
	1. SELECT * FROM TABELA WHERE NOME = ?
	2. SELECT * FROM TABELA WHERE NOME LIKE ?
	3. .....

Assim faço um formulário com Nome a ser preenchido.
Se a pessoa preencher com algum valor, passo o criteria %NOME_DIGITADO%
	SELECT * FROM TABELA WHERE NOME LIKE '%NOME_DIGITADO%'

Caso a pessoa não digite nada utilizo um %, retornando todos os valores:
	SELECT * FROM TABELA WHERE NOME LIKE '%'

Mas caso o campo NOME seja NULL na tabela, este select não me retornará
o registro.

Como fazer um SELECT com um criteria de tal forma que eu posso incluir
um valor pra pesquisar ou também nao incluir nada pra retornar todos?

Valeu
Mario Mol



Em Sáb, 2007-09-01 às 14:27 +0000, Rubem Nascimento da Rocha escreveu:
> Só uma retificação. Com valores NULL, não se usam operadores lógicos, e sim o operador IS.
>  
> Exemplo:
>  
> SELECT * FROM CLIENTE WHERE CLICODIGO IS NULL
>  
> Sds.
> > From: andersonpaduarj em hotmail.com> To: lista em firebase.com.br> Subject: Re: [firebase-br] Sugestões para exibir cadastros muito grandes> Date: Sat, 1 Sep 2007 14:25:51 +0000> > Legal,> > Acho que vc poderia abrir o form com DataSet aberto, colocando uma > instrucao + ou - assim:> > Selec * from Cliente where clicodigo = null> > Como o campo clicodigo é chave, então não existiria nenhum cliente sem > codigo, entao a tabela ficaria aberta mas sem carregar todos os registros.> > Quanto ao painel que vc criou provavelmente ele só será acionado quando o > usuario for fazer uma alteracao, exclusao ou uma pesquisa.> > Anderson Miranda> > > >From: "Consultores Software" <consultoressoftware em gmail.com>> >Reply-To: FireBase <lista em firebase.com.br>> >To: FireBase <lista em firebase.com.br>> >Subject: Re: [firebase-br] Sugestões para exibir cadastros muito grandes> >Date: Sat, 1 Sep 2007 09:56:49 -0300> >> >Obrigado pelas sugestões, pessoal !> >> >Eu adotei a seguinte solução:> >> >1. Faço a janela de cadastro abrir sem mostrar nada na grid, com o DataSet> >fechado.> >2. Fiz um painel de busca com uma combo onde o usuário seleciona o campo> >para a busca, e um edit onde o usuário digita a expressão a pesquisar.> >3. Ao teclar "Enter" no edit, uma procedure monta um select com os > >devidos> >parâmetros e faz a busca.> >Ficou bem prático, do meu ponto de vista....restará saber se ficará prático> >também do ponto de vista do usuário.> >> >> >> >Em 31/08/07, paulosxs Yahoo! <paulosxs em yahoo.com.br> escreveu:> > >> > > Eu organizaria os veículos em categorias e subcategorias, as quais> > > seriam exibidas em um treeview (árvore), e a lista de veículos exibidos> > > seria correspondente à subcategoria selecionada no treeview. Quanto à> > > pesquisa, eu não me preocuparia, pois faria diretamente na base, e não> > > no dataset.> > >> > >> > > Consultores Software escreveu:> > > > Bom dia pessoal !> > > >> > > > Tenho uma pergunta que não chega a ser exatamente técnica, mas sim,> > > sobre> > > > uma otimização.> > > >> > > > Tenho aqui em uma aplicação, um cadastro de veículos, que hoje > >possui> > > > cerca de 2 mil registros, mas deve aumentar bem, pois ainda não está > >em> > > > produção .> > > > Qual é a política mais adotada por vocês, para abrir esse cadastro > >em> > > uma> > > > grid, sem fazer full scan ( select * ) ?> > > >> > > > Talvez seja mostrar uma certa quantidade de registros, mas aí tem o > >caso> > > em> > > > que é preciso dar um locate no DataSet e o registro procurado não está> > > na> > > > grid.> > > >> > > > Quais seriam as sugestões de vocês ?> > > >> > > >> > > > Obrigado> > > > ______________________________________________> > > > 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> > >> >______________________________________________> >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> > _________________________________________________________________> Verificador de Segurança do Windows Live OneCare: combata já vírus e outras > ameaças! http://onecare.live.com/site/pt-br/default.htm> > > ______________________________________________> 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
> _________________________________________________________________
> Receba GRÁTIS as mensagens do Messenger no seu celular quando você estiver offline. Conheça  o MSN Mobile!
> http://mobile.live.com/signup/signup2.aspx?lc=pt-br
> ______________________________________________
> 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