Re: Problema ILIKE con letra eñe

From: "Jaime Casanova" <systemguards(at)gmail(dot)com>
To: "Jaime Casanova" <systemguards(at)gmail(dot)com>, "Paolo Lopez" <murphyperu(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Problema ILIKE con letra eñe
Date: 2006-04-22 16:04:38
Message-ID: c2d9e70e0604220904o7dc164b4va39322431870c262@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On 4/22/06, Alvaro Herrera <alvherre(at)commandprompt(dot)com> wrote:
> Jaime Casanova escribió:
> > On 4/22/06, Paolo Lopez <murphyperu(at)gmail(dot)com> wrote:
> > > Jaime: Gracias por probar el ejemplo, pero los resultados del select
> > > los obtuviste desde linea de comandos o por el pgadmin ??
> > >
> >
> > me declarare culpable, hice las pruebas con el pgAdmin
> >
> > rehaciendo las pruebas en psql ninguno de los 3 selects devuelve la fila...
> >
> > y al ver la fila desde el psql, la muestra asi:
> >
> > prueba=# select * from persona;
> > idpersona | nombres | appaterno | apmaterno
> > -----------+---------+-----------+-----------
> > 1 | juaN | muÐante | ruiZ
> > (1 fila)
>
> Ojo! El client_encoding tiene que estar definido correctamente en ambos
> casos, tanto al ingresar la tupla como al extraerla. Para que el
> upper() funcione correctamente, lo importante es que el ingreso haya
> sido correcto.
>
> --
> Alvaro Herrera http://www.CommandPrompt.com/
> PostgreSQL Replication, Consulting, Custom Development, 24x7 support
>

Lo se...

prueba=# insert into persona values (default, 'Alicia', 'Oñate', 'nose');
INSERT 0 1
prueba=# select * from persona where appaterno ILIKE 'OÑATE';
idpersona | nombres | appaterno | apmaterno
-----------+---------+-----------+-----------
(0 filas)

prueba=# select * from persona where appaterno ILIKE 'OñATE';
idpersona | nombres | appaterno | apmaterno
-----------+---------+-----------+-----------
2 | Alicia | Oñate | nose
(1 fila)

prueba=# select * from persona where lower(appaterno) LIKE lower('OÑATE');
idpersona | nombres | appaterno | apmaterno
-----------+---------+-----------+-----------
(0 filas)

prueba=# show server_encoding;
server_encoding
-----------------
LATIN1
(1 fila)

prueba=# show client_encoding;
client_encoding
-----------------
LATIN1
(1 fila)

prueba=# \l
Listado de base de datos
Nombre | Due±o | Codificaci¾n
-----------+----------+--------------
bench | postgres | LATIN1
postgres | postgres | LATIN1
prueba | postgres | LATIN1
template0 | postgres | LATIN1
template1 | postgres | LATIN1
(5 filas)

de todos modos desconfio por la forma en que se muestran caracteres latinos...

quiza tenga que ver con el locale?
el locale que estoy usando es uno propio de windows Spanish_Ecuador.28591

e internamente el acceso directo al psql establece el codigo de pagina
1252... no se si algo de esto servira

--
Atentamente,
Jaime Casanova

"What they (MySQL) lose in usability, they gain back in benchmarks, and that's
all that matters: getting the wrong answer really fast."
Randal L. Schwartz

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message antonio albiñana crespo 2006-04-22 16:49:05 dni postgresql
Previous Message Alvaro Herrera 2006-04-22 15:22:38 Re: Problema ILIKE con letra eñe