sexta-feira, outubro 31, 2008

Select ignorando acento

Quando se faz algum sistema que realize uma busca a partir de uma string do usuário, temos que levar em conseideração as letras maiúsculas e minúsculas e a acentuação.
Andei pesquisando e encontrei como fazer nos bancos mais usados. É assim:

Supondo que possuo a tabela 'tabela' com o campo 'campo' com os seguintes valores:
CAMPO
---------
Maca
Maçã
Macaco
Amanhã
Jaca
Maçaneta

Oracle 10g:
alter session set nls_comp=linguistic;
alter session set nls_sort=binary_ai;

Pronto. O Select desta sessão pegará ignorando o acento e ordenando sem considerá-lo.
select campo from tabela where campo like '%aca%';
ou
select campo from tabela where campo like '%açÃ%';
CAMPO
---------
Jaca
Maca
Maçã
Macaco
Maçaneta


MySQL:
select campo from `tabela`
where `campo` like _utf8 '%aca%' collate utf8_unicode_ci;

ou
select campo from `tabela`
where `campo` like _utf8 '%açÃ%' collate utf8_unicode_ci;

CAMPO
---------
Maca
Maçã
Macaco
Jaca
Maçaneta


PostgreSQL:
select campo from tabela
where lower(to_ascii(campo)) like lower(to_ascii('%açÃ%'));

ou
select campo from tabela
where lower(to_ascii(campo)) like lower(to_ascii('%aca%'));

CAMPO
---------
Maca
Maçã
Macaco
Jaca
Maçaneta


Para ordenar basta usar a cláusula 'order by'; no Oracle foi pré-estabelecida a maneira para a sessão.

quarta-feira, outubro 29, 2008

OpenOffice 3

A nova versão do OpenOffice.org já está disponível para download.
O OpenOffice é uma suite de escritório gratuita que utiliza o ODF e vem com processador de texto, planilha de cálculos, base de dados (simples), criação de apresentações e ferramenta para cálculos matemáticos.
As notas da versão podem ser vistas no próprio site da organização. Este Release conta com suporte ao novo formato de documentos da Microsoft OpenXML (com ressalva de alguns itens avançados), redistribuição de itens dos menus deixando-os mais intuitivo, mudanças nos ícones (sempre fazem isso), importação nativa de PDF (!), templates e maior facilidade para iniciar seu trabalho (eu não gosto muito, mas sentiram falta disso nas versões anteriores).
Pra baixá-lo, basta acessar a págiona de downloads do OpenOffice.org. São menos de 150mb com o JRE incluso, e ainda pode baixar extensões para a aplicação. A organização brasileira já disponibilizou a versão 3.0 bo BrOffice com 125mb para Windows.
Apesar de funcionar com 256mb de RAM, recomenda-se no mínimo 512. Para um bom trabalho não recomenda-se menos de 500mb de espaço no HD e resolução da tela com menos de 1024x768. O Java é necessário para a utilização do Base (banquinho de dados que vem no pacote); as outras ferramentas usam somente para funcionalidades específicas.

O jornal português Metro anunciou em primeira página no dia 27 deste mês.
Outra matéria que achei comentando o lançamento foi a do blog da ComputerWorld.

Coloque um selo no seu site para promover o OpenOffice!

 Use OpenOffice.org

Abraço!