2009/7/9 Alvaro Herrera <alvhe...@alvh.no-ip.org>: > 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, pero es recomendable dejar el campo como bytea cuando no se estan almacenando datos binarios ? es mas cuando solo se va a almacenar texto plano ? -- Un saludo y muchisimas gracias. Atte: Ing. Jorge Sánchez Escobedo. -- TIP 3: Si encontraste la respuesta a tu problema, publícala, otros te lo agradecerán