Linos escribio:

  .
  .
  .
> y no solo postgres no quito los espacios a convertirlo a varchar si no que 
> las funciones 
> de manejo de strings no lo hacen tampoco, ni trim, ni replace por ejemplo, 
> despues de 
> darle vueltas me dio por probar que codigo me devolvian esos espacios asi que 
> use 
> "ascii(substring(field from 1 for 1))" y me devolvio 160, luego probe "SELECT 
> ascii(' ')" 
> y me devolvio 32 asi que parece ser que algunos campos continuan teniendo 
> espacios con el 
> codigo del espacio que se usa en latin-1, no se si sera culpa del iconv o del 
> postgres 
> pero son un monton de tablas y arreglarlas manualmente no va a ser sencillo, 
> a alguien se 
> le ocurre alguna manera de automatizar esto para todos los campos que puedan 
> estar afectados?
> --
> TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrĂ¡ leerlo

hola, creo que esto te puede servir:

postgres=# create table foo(a character varying(30));
CREATE TABLE
postgres=# insert into foo values(chr(160)||'12345     ');
INSERT 0 1
postgres=# select length( a ) from foo;
 length
--------
     11
(1 fila)

postgres=# select length( trim(a,chr(160)) ) from foo;
 length
--------
     10
(1 fila)

postgres=# select length( trim(a) ) from foo;
 length
--------
      6
(1 fila)

postgres=# select length( trim(trim(a),chr(160)) ) from foo;
 length
--------
      5
(1 fila)

ig_con=#



Saludos

Alejandro Chen
--
TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrĂ¡ leerlo

Responder a