terça-feira, 29 de abril de 2008

Tutorial: Filtro com parâmetros nulos

Agradecimento

Primeiramente, gostaria de deixar meu agradecimento ao Gray, que publicou um post em http://barnsite.spaces.live.com/blog/cns!8C400BF8F7A6CD0C!1150.entry.


Objetivos

Aqui, nosso objetivo é simples. Provavelmente você já precisou apresentar um GridView associado a um conjunto de filtros, todos opcionais. Nesse caso, você tem dois caminhos a seguir:
  1. Contruir uma clausula WHERE via código e executá-la usando o exec(@select);
  2. Usar nossa sugestão! : )


Filtrando de forma simples

Ok, vamos direto ao ponto! Para fazermos essa busca, basta usarmos a seguinte sintaxe:

SELECT *
FROM cadastro
WHERE (Estado = ISNULL(@Estado, Estado)) AND (Cidade = ISNULL(@Cidade, Cidade))

Fácil, rápido e descomplicado! A Função ISNULL(testar, substituir) verifica se o valor de testar é nulo. Se não for, ele retorna o seu valor. Se for nulo, então ela retorna o valor de substituir.

Assim, conseguimos um código limpo, simples e mais seguro de ser usado!

Mais sugestãoes como essa, entre em contato!

Um comentário:

Anônimo disse...

Hi, sorry I only speak English. Thanks for mentioning my blog in your post.

Best Regards, Gray.