ORACLE SQL: приостановить выполнение, пока пользователь не введет
У меня есть сценарий Oracle SQL, как это:
- Вывести некоторые значения из таблицы
- Я хочу сделать паузу здесь, пока я не смогу просмотреть значения из таблицы, описанной выше, и нажать кнопку, чтобы продолжить выполнение. Если значение выглядит хорошо для меня, я хочу прямо сейчас сломать SQL-скрипт.
- выполнить некоторую очистку, потому что значения не выглядят хорошо, необходимо исправить.
Есть ли что-нибудь подобное в Oracle SQL? вроде паузы в командном файле, вы должны нажать пробел, чтобы продолжить работу, но я могу отменить его
1 ответ
Решение
В SQLPlus вы можете создать скрипт, который принимает какое-то значение, а затем решает, что делать, основываясь на входных данных.
Например, такой скрипт:
d: \ x.sql:
set verify off;
select 'some data' from dual;
/* prompt a message and ask for a value to store in a variable */
accept choice prompt 'Update data (Y/N)?';
begin
if '&choice' = 'Y' then /* check the variable value */
dbms_output.put_line('Update data');
else
dbms_output.put_line('Exit');
end if;
end ;
/
Сделаю:
SQL> sta d:\x
'SOMEDATA
---------
some data
Update data (Y/N)?Y
Update data
SQL> sta d:\x
'SOMEDATA
---------
some data
Update data (Y/N)?N
Exit