In an efficient database management method, a program beforehand defined
and registered to a database is invoked by a request to execute database
processing. An inputted query request is analyzed to generate an
execution module for executing it. When a program not contained in the
module is invoked at execution of the module, resources predetermined for
use by programs are classified into resources to be set as unavailable
resources until a transaction is completed in another program and
resources to be set as resources unavailable to other programs until the
programs are terminated. When a transaction completion request is
received from a program, any resource set as an unavailable resource
until the transaction is completed in the program is set as an available
resource. Any resource set as unavailable resource until a program
associated therewith is terminated is set as an available resource when
the program is terminated.