Я бегу Oracle 18. c на платформе Windows 10. У меня есть большой сценарий DOS, который вызывает SQL Plus для запуска первого SQL сценария, передавая ему параметр. Параметр успешно передан в первый SQL скрипт. В этом скрипте SQL я пытаюсь добавить текст к переданному параметру, чтобы он мог вызвать второй скрипт, используя функцию "@". DOS Script test1.bat
@echo off
SET value1=2020_01_19_17_00_01
sqlplus my_username/my_password@my_TNS as sysdba @C:\Backups\test1.sql %value1%
SQL Script test1. sql
SET SERVEROUTPUT ON
variable param1 varchar2(512);
variable full_file_name varchar2(512);
BEGIN
:param1 := '&&1';
dbms_output.put_line('The value of the passed parameter is: ' || :param1);
:full_file_name := :param1 || '_f104.sql';
dbms_output.put_line('The new filename would be: ' || :full_file_name);
@:full_file_name;
END;
/
У меня проблемы с получением значение в : full_file_name для выполнения из сценария test1. sql. Если бы переменная не использовалась, я бы просто использовал строку @2020_01_19_17_00_01_f104.sql Как мне go получить файл сценария, имя которого хранится в: full_file_name для выполнения?