powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Нужна помощь по sqlplus
3 сообщений из 3, страница 1 из 1
Нужна помощь по sqlplus
    #39766605
JPolak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток.
В скрипте под sqlplus необходимо, в команде ACCEPT задать дефолтное значение не константой, а через значение другой переменной.
Т.е. в bind переменную mag_num помещается вычисленное в рантайме некоторое значение. Это значение позднее я хочу использовать как дефолтное для команды ACCEPT.
В принципе, пример можно еще сильнее упростить остановившись чисто на bind переменной не прибегая к ( column ... new_value ... noprint). Изначально я так и сделал, просто решил поэксперементировать.
Проблема в повторном запросе значения для mag_num_.
&& в данном случае мне не помогли...

P.S. скрипт абсолютно надуманный, представлен исключительно для демонстрации проблемы.

пример вывода скрипта --->
> check it
Enter value for mag_num_: 44
Please, enter the magical number [44]:55
mag_num=55
<---

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
spool test.log
set serveroutput on
set verify off
--
prompt TEST script
--
var mag_num number
prompt > Try to find suitable route
  begin
    select 777 mag_num into :mag_num  from dual;
  end;
  /
--
 column mag_num new_value mag_num_ noprint
--
prompt > check it
accept mag_num_ number default '&&mag_num_' prompt 'Please, enter the magical number [&&mag_num_]:'
  begin
    dbms_output.put_line('mag_num=' || &&mag_num_);
  end;
/
spool off
...
Рейтинг: 0 / 0
Нужна помощь по sqlplus
    #39766630
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JPolak
Код: plsql
1.
column mag_num new_value mag_num_ noprint

После этого не хватает select-а
...
Рейтинг: 0 / 0
Нужна помощь по sqlplus
    #39766635
JPolak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ElicJPolak
Код: plsql
1.
column mag_num new_value mag_num_ noprint

После этого не хватает select-а

Огромное спасибо, заработало.
Код: plsql
1.
2.
3.
4.
5.
6.
...
--
 column mag_num new_value mag_num_ noprint
 select :mag_num as mag_num from dual;
--
...
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Нужна помощь по sqlplus
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]