Search notes:

SQL*Plus: SET ROWPREFETCH

The value of rowprefetch specifies the number of records that are returned as part of a fetch call from the database.
After fetching the records, they still undergo the value of arraysize.
set pages        5000
set arraysize       3
set rowprefetch     7
 
with
   function onesec(n number) return varchar is
      roundtrips number;
   begin
      select
         mys.value into roundtrips
      From
         v$mystat   mys   join
         v$statname nam on mys.statistic# = nam.statistic#
      Where
         nam.name = 'SQL*Net roundtrips to/from client';
 
      dbms_session.sleep(1);
      return to_char(n, '99') || to_char(roundtrips, '999');
   end onesec;
select
   onesec(level) x
from
   dual connect by level <= 40
/
Starting the script from the shell:
$ sqlplus rene/rene@ora19 @arraysize-prefetch.sql

See also

The default value of rowprefetch is changed to 2 when using SQL*Plus's command line option -fast.
SQL*Plus' set commands such as set arraysize
SQL*Plus

Index