Buenas noches Sr. Alvaro.

Intenté realizar lo que comenta y me devuelve el mismo error de que no se
puede hacer casting de bytea a text.

ERROR: cannot cast type bytea to text
SQL state: 42846
Character: 31

En la línea: update leo set a = replace(a::text, 'una', 'otra')::bytea;

Estoy usando PG 8.2 y haciendo las operaciones sobre PgAdmin III bajo
Windows XP.

Atte.
Leonardo Castillo L.

El 9 de julio de 2009 19:21, Alvaro Herrera <alvhe...@alvh.no-ip.org>escribió:

> Leonardo Castillo escribió:
> > Buenas tardes amigos listeros...
> > A continuación les comento una interrogante que me surge de un problema
> que
> > tengo actualmente. Tengo un campo BYTEA que contiene textos y quisiera
> > sustituir una cadena de caracteres por otra. Algo como un replace('Texto
> > actual','Texto nuevo',CAMPO), pero hacer con SQL no se si me expliqué
> bien.
>
> No veo la dificultad:
>
> alvherre=# create table leo (a bytea);
> CREATE TABLE
> alvherre=# insert into leo values ('una palabra');
> INSERT 0 1
> alvherre=# select * from leo;
>      a
> -------------
>  una palabra
> (1 fila)
> alvherre=# update leo set a = replace(a::text, 'una', 'otra')::bytea;
> UPDATE 1
> alvherre=# select * from leo;
>      a
> --------------
>  otra palabra
> (1 fila)
>
>
> Ahora, si el texto fuera distinto, yo me preocuparía bien del reemplazo
> que fuera a hacer ...
>
> alvherre=# select replace('una palabra en la luna de mi comuna', 'una',
> 'otra');
>                replace
> ----------------------------------------
>  otra palabra en la lotra de mi comotra
> (1 fila)
>
>
> --
> Alvaro Herrera
> http://www.amazon.com/gp/registry/CTMLCN8V17R4
> "Digital and video cameras have this adjustment and film cameras don't for
> the
> same reason dogs and cats lick themselves: because they can."   (Ken
> Rockwell)
>

Responder a