我用批处理文件编写了一个命令,该命令调用包含pl/sql过程的.sql文件。但是,我需要在PL/SQL过程中设置a参数,这在批处理文件的整个过程中都很常见。
批处理文件如下所示。
set parameterOne=%1
set parameterTwo=%2
sqlplus -s uid/pwd filepath/filename.sql %parameterOne %parameterTwo.sql文件中的PL/SQL过程如下。
DECLARE parameterOneValue INT;
parameterTwoValue INT;
BEGIN
parameterOneValue := $(parameterOne);
parameterTwoValue := $(parameterTwo);
//procedure block
END;我需要将parameterOne、parameterTwo属性从批处理文件分别设置为.sql文件中的parameterOneValue、parameterTwoValue。有人能提供解决办法吗?
发布于 2017-11-21 10:11:35
使用集对进行定义,并使用&进行变量替换。
例如,
您的批处理文件:
set parameterOne=%1
set parameterTwo=%2
sqlplus -s uid/pwd filepath/filename.sql %parameterOne %parameterTwoPL/SQL块中的SQL*Plus替换:
parameterOneValue := &1;
parameterTwoValue := &2;&将替换在批处理文件中设置的实际值。
https://stackoverflow.com/questions/47409965
复制相似问题