Problemas com SQL - SELECT...

Delphi

07/05/2003

Oi pessoal!!!

é o seguinte: Criei um mecanismo de pesquisa onde algumas variaveis são preenchidas com os valores de alguns edits e se o edit estiver em branco são preenchidas com ´¬´.

Aí faço um select tipo assim:

SQL.Text:=´SELECT * FROM CLIENTES WHERE CODIGO LIKE ´+#39+Codigo+39+´ and NOME LIKE ´+39+´¬´+nome+´¬´+39+´ and ENDER LIKE ´+39+Endereco+39+´ and CEP LIKE ´+39+CEP+39+´ and CIDADE LIKE ´+39+Cidade+39+´ and ESTADO LIKE ´+39+UF+39+´ and FONE LIKE ´+39+Fone+39+´ and PESSOA LIKE ´+39+Pessoa+39+´ and CGC_CPF LIKE ´+39+CNPJ+39+´ and CGC_ICM LIKE ´+39+InscricaoEstadual+39+´ and CONTATO LIKE ´+39+Contato+39+´ and FAX LIKE ´+39+FAX+39;

tipo... com todos os campos em branco ficaria assim:

SELECT * FROM CLIENTES WHERE CODIGO LIKE ´¬´ and NOME LIKE ´¬¬¬´ and ENDER LIKE ´¬´ and CEP LIKE ´¬´ and CIDADE LIKE ´¬´ and ESTADO LIKE ´¬´ and FONE LIKE ´¬´ and PESSOA LIKE ´¬´ and CGC_CPF LIKE ´¬´ and CGC_ICM LIKE ´¬´ and CONTATO LIKE ´¬´ and FAX LIKE ´¬´

o problema é ele só retorna os registros que não tiverem nenhum campo em branco... tipo: se algum cliente não possuir numero de telefone, ppor exemplo, ele não aparecerá no resultado do select...

Outro problema é que se eu pesquisar o campo Bairro (por exemplo), que foi criado depois que todos os outros, ele só retornará os registros que foram inseridos depois da criação do campo bairro (mesmo que eu tenha modificado o valor de alguns registros antigos.

Por que isto está acontecendo? o caractere ´¬´ não é um ´Curinga´ que deveria encontrar todos os valores de um campo (incluindo em branco)?

Como posso resolver isto?

E quanto ao meu problema com o campo Bairro? como resolvo?

Valeu!!!
Aquele Abraço!!!

Tiago Farinon


Tiago Farinon

Tiago Farinon

Curtidas 0

Respostas

Wtjunior

Wtjunior

07/05/2003

Olá

Tente usar OR no lugar de AND ....

um abraço


GOSTEI 0
Tiago Farinon

Tiago Farinon

07/05/2003

Olá Tente usar OR no lugar de AND .... um abraço


Soh que eu quero que ele pesquise com o maximo de campos possível...
Tipo: se a pessoa souber o que o nome da pessoa é ´Maria´ e seu bairro é ´Vila-Cotovelo´ ele ache todos os registros que contenham estes dois dados... será que com OR não vai aparecer todas as marias e todos os moradores da Vila-Cotovelo?

Bom... Vou tentar de qquer maneira...

Valeu!!!
Tiago


GOSTEI 0
POSTAR