Oracle - Insert Dinamico

 
Vista:

Insert Dinamico

Publicado por Guillermo (14 intervenciones) el 04/05/2007 00:55:51
Estimados amigos,
estoy haciendo el siguiente insert dinamico que me funciona con caracteres normales, pero tengo un campo que debo insertar y que tiene ' en el medio y al llegar a ese campo, el insert dinamico me da error de missing comma. Quisiera saber si alguno de Ustedes tuvo alguna vez algo asi y como lo soluciono.
Muchas gracias.
Saludos,

v_insert_din := 'insert into '||V_DESTINO||'(codigo, '||V_CAMPO||') values ('||v_codigo||', '||chr(39)||v_valor||chr(39)||')';
execute immediate v_insert_din;

el error me da cuando v_valor = JUAN E'OLEARI, porque tiene un apostrofe en el medio, que es palabra reservada para Oracle.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Insert Dinamico

Publicado por juanpa (16 intervenciones) el 09/05/2007 20:36:57
para soluciona ese tema debes hacerlo de la siguiente forma:

v_valor = JUAN E'''OLEARI //debes agregar dos comillas simple para que te tome la comilla que tu quieres como parte del texto, de esta forma te encuentra la comilla que tu quieres insertar...

v_insert_din := 'insert into '||V_DESTINO||'(codigo, '||V_CAMPO||') values ('||v_codigo||', '||chr(39)||v_valor||chr(39)||')';
execute immediate v_insert_din;

Espero que esto solucione tu problema

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Insert Dinamico

Publicado por Guillermo (14 intervenciones) el 23/05/2007 00:31:23
Muchisimas gracias, lo voy a probar.

Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar