Bulk processing, by using only one ALLBASE/SQL command to operate on multiple
rows, provides a way of minimizing the time page or table locks are
held. Locks are only held while moving rows between
database tables and an array defined by the program, and operations can
be done while
holding data in that array without holding locks against the database.
Because the BULK FETCH command may need to be executed
several times before an entire active set is retrieved, locks
obtained to execute this command may be held longer than locks needed
to execute the other BULK commands.
Therefore this command is most useful for applications running
when multi-user DBEnvironment access is minimal or when
concurrent transactions do not need to update the table that is
the target of the BULK FETCH.
Transaction management is further discussed in the .