Seperti yang dikatakan orang lain, PL/SQL saja tidak cocok untuk tugas ini, Anda memerlukan UI di atas untuk berinteraksi dengan pengguna akhir. Namun, jika Anda benar-benar perlu melakukan ini di SQL Plus, dimungkinkan menggunakan teknik yang saya jelaskan di pertanyaan SO ini .
Anda perlu membuat 2 skrip SQL Plus:
1) Sebuah skrip untuk melakukan penyisipan tunggal, di sini disebut script_insert.sql:
insert into t1 values ('&1.');
@main
2) Sebuah skrip untuk mengontrol proses, di sini disebut 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.
Sekarang di SQL Plus Anda dapat menjalankannya seperti ini:
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
Izinkan saya menegaskan kembali bahwa ini menunjukkan hal itu dapat dilakukan, saya tidak akan mengklaimnya sebagai cara yang baik untuk mengimplementasikan persyaratan - kecuali itu hanya alat ad hoc untuk digunakan oleh DBA atau pengembang. Saya tidak akan pernah memberikan pengguna akhir SQL Plus sebagai UI!