Executes the given SQL statement, which may return multiple results,
and signals the driver that any
auto-generated keys should be made available
for retrieval. The driver will ignore this signal if the SQL statement
is not an INSERT
statement, or an SQL statement able to return
auto-generated keys (the list of such statements is vendor-specific).
In some (uncommon) situations, a single SQL statement may return multiple result sets and/or update counts. Normally you can ignore this unless you are (1) executing a stored procedure that you know may return multiple results or (2) you are dynamically executing an unknown SQL string.
The execute
method executes an SQL statement and indicates the
form of the first result. You must then use the methods
getResultSet
or getUpdateCount
to retrieve the result, and getMoreResults
to
move to any subsequent result(s).
Note:This method cannot be called on a
PreparedStatement
or CallableStatement
.
sql | any SQL statement | |
autoGeneratedKeys | a constant indicating whether auto-generated
keys should be made available for retrieval using the method
getGeneratedKeys ; one of the following constants:
Statement.RETURN_GENERATED_KEYS or
Statement.NO_GENERATED_KEYS |
true
if the first result is a ResultSet
object; false
if it is an update count or there are
no results
SQLException | if a database access error occurs,
this method is called on a closed Statement , the second
parameter supplied to this method is not
Statement.RETURN_GENERATED_KEYS or
Statement.NO_GENERATED_KEYS ,
the method is called on a
PreparedStatement or CallableStatement | |
SQLFeatureNotSupportedException | if the JDBC driver does not support this method with a constant of Statement.RETURN_GENERATED_KEYS | |
SQLTimeoutException | when the driver has determined that the
timeout value that was specified by the setQueryTimeout
method has been exceeded and has at least attempted to cancel
the currently running Statement |
getResultSet, getUpdateCount, getMoreResults, getGeneratedKeys
Diagram: Statement