Fórum Dúvida SQL #365895
06/11/2008
0
Tow com uma dúvida em um sql....é o seguinte....eu quero deixar 4 campos para pesquisa.....
Nome, RG, CPF e Bairro....
queria que quando o usuário digitasse uma letra no campo NOME, ele fizesse a consulta e trouxesse todos quem começam com aquela letra...e se ele tbm informar um número d cpf...aew tbm pesquisar pelo cpf...mas...acontece o seguinte...
se eu informar um somente um número de CPF ele continua trazendo todos os registros....ele só muda a consulta se eu informar tbm um nome ou um bairro..
Ele não tah ignorando os campo que estão em branco....eu passo para o sql os 4 campos para pesquisa....se algum estiver em branco ele traz todo mundo....
alguém tem alguma idéia??
Tow usando os DataSource + ClientDataSet + DataSetProvider + SQLQuery.....
Vlw
Wdrocha
Curtir tópico
+ 0Posts
06/11/2008
Luiz Henrique
Talvez nao seja exatamente tua metodologia, mas fala sobre query dinamica
http://singularsistemas.com.br/blog/2008/05/queries-dinamicas-no-servidor-datasnap/
Gostei + 0
06/11/2008
Prmcibor
where cpf =´´ or nome like ´¬¬´ ele vai voltar todos mesmo, vc teria que usar o and e colocar um like no cpf tb. ficaria assim:
selecr * from table
where cpf like ´¬cpf¬´ and nome like ´¬¬´
aí se vc preencher apenas um ele traz apenas o que vc quer....
só preste atenção, que quando mais likes voce colocar em sua query mais pesada vai ficando.
Abraços,
Gostei + 0
07/11/2008
Wdrocha
Prmcibor.....mt obrigado tbm...funcionou perfeitamente...
só um dúvida...vc diz q qto mais likes....mais pesada fica a consulta....eu usei em quatro campos...
será q qdo o banco tiver com inúmeros registros a consulta poderá demorar mais do q esperado???
Vlw
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)