variable script run developer define declarar 11g oracle sqlplus

oracle - run - ¿Cómo paso argumentos a un script PL/SQL en la línea de comandos con SQLPLUS?



sqlplus-s command (2)

En primer lugar, deberás invocar tu script así:

sqlplus.exe MYUSER/mypassword@HOST030 @refreshDataOnOracle.sql foo bar

En lugar de la redirección del sistema operativo, utilizará el símbolo "@" para indicar el nombre del archivo a ejecutar. También proporcionará los parámetros de script en la línea de comandos. En el script se referirá a los parámetros usando &1 , &2 etc.

update mytable set mycol = ''&2'' where myid = ''&1'';

que se traducirá en

update mytable set mycol = ''bar'' where myid = ''foo'';

¿Cómo paso argumentos a un script PL / SQL en la línea de comandos con SQLPLUS? Puedo llamar a mi script PL / SQL así, pero el script requiere argumentos para que tenga éxito. ¿Cómo puedo ejecutar sqlplus.exe para que pueda pasar argumentos al script?

@ECHO off // where HOST030 is a tnsnames alias to a machine, port, and instance sqlplus.exe MYUSER/mypassword@HOST030 < refreshDataOnOracle.sql pause

Intenté buscar la respuesta, pero no pude encontrar un "ejemplo de argumento" en ningún lugar para SQLPLUS. Sospecho que sería un método similar de usar el comando "START" de SQL * Plus?


Si desea registrar la ejecución de sqlplus, puede usar esta sintaxis:

sqlplus.exe MYUSER/mypassword@HOST030 @refreshDataOnOracle.sql foo bar >> log.log