Insert Update de Caracteres especiales en Oracle ‘ chr(39)

Insert Update de Caracteres especiales en oracle ‘ chr(39)

Acostumbrado a trabajar con GeneXus, cuando necesito insertar o actualizar un valor con comilla simple en una columna caracter, la operación es muy sencilla:

atributo=”‘hola mundo'”

Ahora cuando queremos hacer esto en un script, usando por ejemplo sqlplus, la operación es distinta.

Básicamente hay que colocar otra comilla simple antes de la que queremos poner, de la siguiente forma:

insert into fdtest values(”’hola mundo”’);

Ahora bien si el caso que tenemos es al revés.

Tenemos en la tabla comilla simple y queremos pasarlas a dobles, nos encontramos, con el mismo problema, porque en la función replace no podemos invertir las comillas para hacer la búsqueda.

La solución en este caso es:

En el parámetro de búsqueda, usar el valor ascii de este caracter especial de la siguiente forma

select replace(campo,chr(39),'”‘) from fdtest;

Nuestro resultado será:

“hola mundo”

Fabricio De los Santos
Gerencia de Proyectos – Consultoría GeneXus –
ERP – Sistemas de Misión Crítica – Bases de Datos.

Vea mis blogs en:
www.fabriciodelossantos.com

Deja un comentario