Jak powiedzieli inni, sam PL/SQL nie nadaje się do tego zadania, potrzebujesz interfejsu użytkownika na górze, aby wchodzić w interakcje z użytkownikiem końcowym. Jeśli jednak masz realną potrzebę, aby to zrobić w SQL Plus, jest to możliwe przy użyciu techniki opisanej w to pytanie SO .
Musisz utworzyć 2 skrypty SQL Plus:
1) Skrypt do wykonania pojedynczego wstawienia, tutaj o nazwie script_insert.sql:
insert into t1 values ('&1.');
@main
2) Skrypt kontrolujący proces, tutaj nazwany main.sql:
accept selection prompt "Please enter value, enter 'done' when no more values: "
set term off verify off
column script new_value v_script
select case '&selection.'
when 'done' then ''
else '@script_insert &selection.'
end as script
from dual;
set term on
@&v_script.
Teraz w SQL Plus możesz go uruchomić w następujący sposób:
SQL> select * from t1;
no rows selected
SQL> @main
Please enter value, enter 'done' when no more values: 1
Please enter value, enter 'done' when no more values: 2
Please enter value, enter 'done' when no more values: 3
Please enter value, enter 'done' when no more values: done
SQL> select * from t1;
N1
----------
1
2
3
Pozwolę sobie powtórzyć, że to pokazuje, że można to zrobić, nie twierdzę, że jest to dobry sposób na zaimplementowanie wymagania - chyba że jest to tylko narzędzie ad hoc, z którego może korzystać DBA lub programista. Nigdy nie dałbym użytkownikowi końcowemu SQL Plus jako interfejs użytkownika!