[firebase-br] Like - Case insensitive

Daniel Sonda daniel em mhnet.com.br
Qui Dez 4 10:22:26 -03 2008


Já usei uma versão do Firebird 1.5 que disponibilizava o collate PT_BR.
Usando esse collate o problema era resolvido, sem precisar dar upper.

O problema é que vc vai ter que recriar o banco de dados e usar o 
collate em todos os campos que achar necessário.

Att.
Daniel Sonda
www.h2jsolucoes.com.br



Fabrício Fadel Kammer escreveu:
> Só complementando, sei que o FB 2.0 permite o uso de funções na 
> criação de índices, mas atualmente não há como eu migrar meu sistema 
> do FB 1.5 para o 2, então tenho que pensar em uma solução nesse caso.
>
> Há alguma coisa a mais a ser feita que não precise de um campo extra, 
> com os valores em maiúsculas nele?
>
> Abraços
>
> Fabrício Fadel Kammer escreveu:
>> Bom dia pessoal,
>>
>> Hoje para poder usar o comando LIKE sem diferenciar maiúsculas de 
>> minúsculas acrescento o um Upper na condição, conforme sql abaixo:
>>
>> SELECT NOME FROM CLIENTES WHERE UPPER(NOME) LIKE 'JO%'
>>
>> Isso faz com que o LIKE retorne TODOS os clientes cujo nome inicie 
>> com "JO", porém o Firebird não utiliza índices nessa busca. Gostaria 
>> de saber com os colegas se há como eu fazer o like não diferenciar 
>> maiúsculas de minúsculas, obrigando assim o Firebird a usar o índice 
>> do campo nome e ganhar performance nessa SQL?
>>
>> Queria fazer algo como abaixo:
>>
>> SELECT NOME FROM CLIENTES WHERE NOME LIKE 'JO%'
>>
>> E o Firebird deveria retornar todos registros abaixo:
>> Joao
>> JOao
>> JOAO
>> Jose
>> JOSE
>> JOsE
>> etc
>>
>> Grato desde já
>>
>> Fabrício
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use: 
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: 
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
> __________ Information from ESET Smart Security, version of virus 
> signature database 3662 (20081203) __________
>
> The message was checked by ESET Smart Security.
>
> http://www.eset.com
>
>
>
>




Mais detalhes sobre a lista de discussão lista