Using Stored Programs in JDBC
So far we have mainly reviewed the JDBC calls that can be used with any database and that don’t relate in any way to stored program calls. If you have used JDBC with other RDBMS types or with previous versions of MySQL, you probably haven’t learned much. Let’s move on to processing stored program calls in JDBC (Figure 14-2).
Stored program calls are very similar to standard JDBC calls. A stored program strongly resembles a prepared statement that executes a query, with the following exceptions:
A stored program can return more than one result set.
A stored procedure can be associated with output—as well as input—parameters. This means that we need a way to retrieve the altered values from any stored procedure parameters that are defined as
OUT
orINOUT
.
In addition to the general sequence of processing involved in creating and executing a prepared statement, when executing a stored program, we may need to retrieve multiple result sets and also—when the stored program execution has completed—retrieve the results of any output variables.
Using the CallableStatement Interface
The CallableStatement
interface extends the PreparedStatement
interface. It includes
all of the methods of the PreparedStatement
interface, as well as
additional methods specific to stored program calls. You create a
CallableStatement
with the
prepareCall( )
method of a
Connection
object:
CallableStatementstatementName
=ConnectionName
.prepareCall(sql_text
);
The single argument ...
Get MySQL Stored Procedure Programming now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.