Skip site navigation (1) Skip section navigation (2)

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 (view raw or flat)
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

pgsql-es-ayuda by date

Next:From: antonio albiñana crespoDate: 2006-04-22 16:49:05
Subject: dni postgresql
Previous:From: Alvaro HerreraDate: 2006-04-22 15:22:38
Subject: Re: Proble?==?iso-8859-1?Q?ma ILIKE con letra eñe

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group