Postgre 8.3 problema com acento

estou usando o postgre 8.3 com o java mas estou com um problema para diferenciar letras com acento ja tentei usar
SELECT * FROM agenda
WHERE NOME ILIKE to_ascii(‘jose’) no banco esta assim josé
da o seginte erro

ERROR: encoding conversion from WIN1252 to ASCII not supported

SQL state: 0A000
ja tentei com o UTF-8 e latin1
ele grava certo e retorna certo o problema e em buscar digitando sem acento e ele me retornar todos com e sem
grato

JOSE MARIO

Bom, quando crio uma base de dados nos postgre sempre defino como Latin1.

Se vc estiver somente estudando e realizando testes, tente recriar sua base de dados e cuide na hora de definir o encode. Escolha Latin1.

Olá!

Crie esta função no PostgreSQL:

CREATE OR REPLACE FUNCTION sem_acento(text)
RETURNS text AS
$BODY$
select
translate($1,'áàâãäéèêëíìïóòôõöúùûüÁÀÂÃÄÉÈÊËÍÌÏÓÒÔÕÖÚÙÛÜçÇ','aaaaaeeeeiiiooooouuuuAAAAAEEEEIIIOOOOOUUUUcC');
$BODY$
LANGUAGE 'sql' IMMUTABLE STRICT;

Depois é só aplicar

SELECT * FROM suaTabela WHERE UPPER(sem_acento(campo)) LIKE UPPER(sem_acento('%TéS%'));
-- Retorna todos TES, TÉS, tes, etc.

Vlw

Oh funçãozinha mão na roda. :smiley: :smiley: :smiley:

Movido para o fórum de Persistência. Por favor, leia atentamente a descrição dos fóruns antes de postar.