Tengo un procedimiento almacenado que recibe parámetros así:
Código:
Desde un shell por un sqlplus lanzo el procedimiento de la siguiente manera:PROCEDURE MI_PROC ( id NUMBER, dato1 VARCHAR2, dato2 VARCHAR2, dato3 NUMBER, dato 4 VARCHAR2) IS..... END;
Código:
El archivo cargar.sql tiene esta estructura:sqlplus -S /NOLOG cargar.sql 1 $valor1 $valor2 $valor3 $valor4>salida.txt
Código:
Este proceso funciona perfectamente si le envío desde el shell números, por ejemplo:connect user/pwd@BD DECLARE BEGIN MI_PROC(&1, &2, &3, &4, &5); END; / EXIT;
Código:
Pero el problema que tengo es que al enviar un valor alfanumérico en valor4 no me está ejecutando el procedimiento, por ejemplo:valor1=254 valor2=7895 valor3=87458451 valor4=20110420124578
Código:
Quisiera saber cuál es la forma correcta de enviar valor4 para que el shell lo interprete correctamente y la BD lo ejecutevalor4=20110420_124518
Gracias!!!