Просмотр команд SQL с помощью команды LIST

В SQL*Plus самые последние выполнявшиеся операторы SQL сохраняются в области памяти, называемой буфером SQL. К сожалению, SQL*Plus позволяет сохранять в этом буфере только последнюю выполнявшуюся команду. Каждый новый вводимый оператор заменяет собой тот, что находился в буфере ранее. Если нужно увидеть предыдущую выполнявшуюся команду, достаточно ввести команду LIST или просто l:

SQL> l
1 SELECT username, status, process, sid, serial#
2 FROM v$session
3* WHERE status = 'ACTIVE'
SQL>

Для просмотра содержимого сценария SQL перед его выполнением его следует загрузить из операционной системы в буфер SQL с помощью команды GET:

SQL> GET status.sql
1 SELECT username,status,process,sid,serial#
2 FROM v$session
3* WHERE status = 'ACTIVE'
SQL> 

Внимание! В случае ввода в сеансе SQL*Plus лишь команды / будет сразу же начинаться выполнение последней вводившейся команды, которая всегда хранится в буфере SQL. Поэтому лучше с помощью команды LIST предварительно выяснить, какая именно команда будет выполняться.


Иногда может возникать необходимость выполнения подряд сразу нескольких сценариев с командами SQL. В таком случае можно указать все подлежащие выполнению сценарии в одном главном сценарии и затем просто запустить этот главный сценарий - в результате все включенные в него сценарии будут выполняться друг за другом автоматически. Ниже показано, как включить несколько сценариев SQL в один главный файл:

SQL> GET one_script.sql
1 @check.sql
2 @create_table.sql
3 @insert_table.sql
4* @create_constraint.sql
SQL> 

В этом примере запуск сценария one_script.sql будет, соответственно, приводить к поочередному выполнению четырех входящих в его состав сценариев. Такой подход является очень эффективным способом выполнения сценариев, особенно по ходу создания и заполнения новой базы данных, при условии, что необходимые для этого отдельные сценарии уже созданы и протестированы.


На заметку! Для запуска командных файлов, состоящих из нескольких других командных файлов, можно пользоваться обозначением @@имя_командного_файла, например: @@one_script.sql. Применение @@ гарантирует, что Oracle будет искать отдельные файлы по тому же пути, что и основной командный файл.


 

Вас заинтересует / Intresting for you:

Получение справочной информаци...
Получение справочной информаци... 1877 просмотров Алексей Вятский Tue, 21 Nov 2017, 13:19:25
Новые возможности ORACLE 5.1B
Новые возможности ORACLE 5.1B 5487 просмотров Николай Tue, 21 Nov 2017, 13:32:50
Команды DEFINE и UNDEFINE
Команды DEFINE и UNDEFINE 5475 просмотров Stas Belkov Tue, 21 Nov 2017, 13:18:46
Ввод блоков PL/SQL
Ввод блоков PL/SQL 6321 просмотров Александров Попков Tue, 21 Nov 2017, 13:33:37
Войдите чтобы комментировать

VaaPa аватар
VaaPa ответил в теме #10312 2 года 3 мес. назад
LIST - отличная команда в SQL, но порой о ней совсем забывают даже гуру программирования!)