From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Manuel Sugawara <masm(at)fciencias(dot)unam(dot)mx> |
Cc: | blackbeer <dblackbeer(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: mensajes de excepccion en esañol |
Date: | 2005-09-02 20:01:12 |
Message-ID: | 20050902200112.GH29066@surnet.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Fri, Sep 02, 2005 at 12:47:38PM -0500, Manuel Sugawara wrote:
> Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> writes:
>
> > En resumen, si uno configura todo correctamente, las cosas funcionan
> > como se espera. Lamentablemente es bastante facil equivocarse en la
> > configuracion :-(
>
> Bueeeno, creo que nunca lo había pensado, simplemente me había
> acostumbrado a vivir con el error pero ahora todo es claro. El
> problema viene de que tengo mi base de datos en latin1 (sobre todo
> para el manejo de collations y algunas coasas de regex) y mi ambiente
> en utf8. Cuando abro psql todo funciona bien, ie se da cuenta que
> estoy en utf8 y hace el recoding como debería, por ejemplo, el mensje
> de bienvenida se ve bien:
Humm, yo puedo reproducir variados problemas si echo a perder mi
ambiente. Pero al final, si defino las variables correctamente todo se
ve bien. ¿Qué tienes en las variables LC_*? Mi ambiente latin1 no
tiene ninguna de esas variables, y si lo dejo así para el UTF8 hay
problemas de varios tipos; pero en cuanto defino LC_ALL=es_CL.utf8 todo
funciona.
Por ejemplo, tuve un problema con \d porque creé una tabla cuyo nombre
llevaba tilde antes de definir el LC_ALL (este es el terminal utf8);
pero definiéndolo se acaba el problema:
alvherre=# create table decoración (a text);
CREATE TABLE
alvherre=# \d
ERROR: could not convert UTF8 character 0x00ed to ISO8859-1
alvherre=# \q
03:47 drizzt ~ 0$ LC_ALL=es_CL.utf8 psql
Bienvenido a psql 8.1devel, el terminal interactivo de PostgreSQL.
Digite: \copyright para ver los términos de distribución
\h para obtener ayuda sobre comandos SQL
\? para obtener ayuda sobre comandos internos
\g o punto y coma (;) para ejecutar consulta
\q para salir
alvherre=# set client_encoding to utf8;
SET
alvherre=# select * from pg_class where relname like 'dec%';
relname | relnamespace | reltype | relowner | relam | relfilenode | reltablespace | relpages | reltuples | reltoastrelid | reltoastidxid | relhasindex | relisshared | relkind | relnatts | relchecks | reltriggers | relukeys | relfkeys | relrefs | relhasoids | relhaspkey | relhasrules | relhassubclass | relacl
------------+--------------+---------+----------+-------+-------------+---------------+----------+-----------+---------------+---------------+-------------+-------------+---------+----------+-----------+-------------+----------+----------+---------+------------+------------+-------------+----------------+--------
decoración | 2200 | 24670 | 10 | 0 | 24669 | 0 | 0 | 0 | 24671 | 0 | f | f | r | 1 | 0 | 0 | 0 | 0 | 0 | f | f | f | f |
(1 fila)
alvherre=# \d
Listado de relaciones
Schema | Nombre | Tipo | Dueño
--------+--------------------------------+-----------+----------
public | a | tabla | alvherre
public | b | tabla | alvherre
public | decoración | tabla | alvherre
public | foo | tabla | alvherre
public | test | tabla | alvherre
public | trabajadores | tabla | alvherre
public | trabajadores_pk_trabajador_seq | secuencia | alvherre
(7 filas)
Y los mensajes de error se despliegan OK también:
alvherre=# insert into decoración values ('a');
ERROR: llave duplicada viola restricción unique «decoración_a_key»
> Ahora, la parte de psql se resolvería si se le enseña a hacer de forma
> explícita un SET client_encoding TO 'utf8' si se da cuenta que el
> ambiente es UTF-8 y la base de datos no, esto es nada más que SMOP.
Ah, eso sería bueno, indudablemente.
--
Alvaro Herrera -- Valdivia, Chile Architect, www.EnterpriseDB.com
"Un poeta es un mundo encerrado en un hombre" (Victor Hugo)
From | Date | Subject | |
---|---|---|---|
Next Message | Arturo Valenzuela | 2005-09-02 21:04:10 | EnterpriseDB Vs Postgresql |
Previous Message | Manuel Sugawara | 2005-09-02 17:47:38 | Re: mensajes de excepccion en esañol |