PL SQL Statements Oracle PLSQL Tutorial

SQL>  create table cities
  2  as
  3  select username city
  4    from all_users
  5   where rownum<=37;
Table created.
SQL>
SQL> alter table cities
  2  add constraint
  3  cities_pk primary key(city);
Table altered.
SQL>
SQL> create table with_ri
  2  ( x    char(80),
  3    city references cities
  4  );
Table created.
SQL>
SQL> create table without_ri
  2  ( x    char(80),
  3    city varchar2(30)
  4  );
Table created.
SQL> alter session set sql_trace=true;
Session altered.
SQL>
SQL> declare
  2      type array is table of varchar2(30) index by binary_integer;
  3      l_data array;
  4  begin
  5      select * BULK COLLECT into l_data from cities;
  6      for i in 1 .. 1000
  7      loop
  8          for j in 1 .. l_data.count
  9          loop
 10              insert into with_ri
 11              values ('x', l_data(j) );
 12              insert into without_ri
 13              values ('x', l_data(j) );
 14          end loop;
 15      end loop;
 16  end;
 17  /
PL/SQL procedure successfully completed.
SQL>
SQL> drop table cities cascade constraint;
Table dropped.
SQL> drop table with_ri;
Table dropped.
SQL> drop table without_ri;
Table dropped.
SQL>