SQL * Plus порядок последовательного выполнения многих файлов sql, перечисленных в скрипте - PullRequest
0 голосов
/ 03 июля 2018

Я хочу выполнить много файлов SQL, последовательно названных как file1.sql, file2.sql .. fileN.sql. Я перечислил их в файле с именем all.sql. как показано ниже:

@file1.sql    
@file2.sql  
@file3.sql

и затем я выполнил команду sqlplus как:

sqlplus username/password@domain @all.sql

проблема в том, что файлы выполнялись, но не в том порядке, в котором они перечислены в файле all.sql.

Таким образом, вопрос: как я могу заставить sqlplus выполнять файлы в том порядке, в котором они появляются в файле all.sql?

Спасибо за ваш ответ,

Ответы [ 2 ]

0 голосов
/ 05 июля 2018

SQL * Plus выполняет команды в порядке, как они появляются в файле. Просто представьте, что произойдет иначе, поскольку сама база данных Oracle создается с использованием файлов .sql (в $ ORACLE_HOME / rdmbs / admin /). Если порядок сценариев создания будет недетерминированным, хаос будет уверен.

Можете ли вы показать нам минимальный пример, где порядок не сохраняется (возможно, с помощью мини-скриптов, которые печатают только строку для вывода?

0 голосов
/ 03 июля 2018

Я пока не знаю команду plsql. Может быть, это скрипт, который порождает отдельный сеанс SQL * Plus для каждого файла?

Если вы используете SQL * Plus для запуска файла all.sql, вы должны получить желаемое поведение.

...