я долженSQL * Plus @@ поведение с пробелами в пути родительского сценария
- Connect
- Вызов SQL-скрипт
- Выход SQLPLUS
Итак, я создал sql-script run.sql:
set def on
WHENEVER SQLERROR EXIT ROLLBACK
conn &2
@"&1";
exit;
Например, у меня есть sql- скрипты в папку "C: \ папку с пробелами \":
а) install.sql с содержимым:
prompt Hello
@@a.sql
@@b.sql
б) и, конечно, у меня есть a.sql и b.sql файлы в папку с некоторыми действиями.
Итак, я пытаюсь запустить мой сценарий:
sqlplus /nolog @"Path_to_Run\run.sql" \"c:\folder with spaces\install.sql\" user/[email protected]
И я получил результат:
Hello
SP2-0310: unable to open file "c:\folder.sql"
Таким образом, он может открыть install.sql, но не может открыть @@ a.sql , Он пытается запустить такой скрипт:
@c:\folder with spaces\a.sql
Но как я могу разместить здесь цитаты? Он должен запустить скрипт a.sql внутри папки «c: \ folder with spaces».
Если у вас есть доступ, см. Документ MOS 745780.1, описывающий это поведение. К сожалению, вам нужен обходной путь, как и тот, который предоставляет StephaneM. –
Существует решение. Спасибо – usbo