Consulta SQL - Apenas campos que contenham informações
19/05/2008
0
Preciso a consulta SQL de uma Query me retorne valores informados em 6 edits de uma mesma tabela. Sendo que nem todos os edits precisam conter informações. Não encontrei a sintaxe correta para fazer este tipo de pesquisa e gostaria de contar com a ajuda de voces. Segue um exemplo:
Pesquisar por:
Codigo [______] Nome [______] Endereço [______] Telefone [_____]
Resultados:
...
...
...
...
------------------------------------------------------------------------------------
O inconveniente é que quando um usuário, por exemplo, não informa algum dos parametros de busca, a sintaxe SQL fica incorreta, ou no caso não retorna nenhum valor porque busca um parametro ´vazio´.
Se alguem souber uma maneira de construir esta sintaxe e possa descreve-la para mim agradeço desde já
Muito obrigado a todos!
Pesquisar por:
Codigo [______] Nome [______] Endereço [______] Telefone [_____]
Resultados:
...
...
...
...
------------------------------------------------------------------------------------
O inconveniente é que quando um usuário, por exemplo, não informa algum dos parametros de busca, a sintaxe SQL fica incorreta, ou no caso não retorna nenhum valor porque busca um parametro ´vazio´.
Se alguem souber uma maneira de construir esta sintaxe e possa descreve-la para mim agradeço desde já
Muito obrigado a todos!
Geanceretta
Curtir tópico
+ 0
Responder
Posts
19/05/2008
Webjoel
Olá!
Você precisa mostar o SQL, verificando se o campo está vazio ou não, se tiver valor você inclui o filtro, exemplo:
Você precisa mostar o SQL, verificando se o campo está vazio ou não, se tiver valor você inclui o filtro, exemplo:
//declarar variavel: var filtro : string //... filtro := ´´; sql := ´SELECT * FROM CLIENTE´; if (editCODIGO.text <> ´´) then begin if (filtro = ´´) then begin filtro := filtro + ´ where COD_CLI = ´ + editCODIGO.text; end else begin filtro := filtro + ´ and COD_CLI = ´ + editCODIGO.text; end; end; //... //Depois de verificar todos os Edits, monte o SQL: SQLQuery := sql + filtro;
Responder
Clique aqui para fazer login e interagir na Comunidade :)