|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.ow2.jonas.resource.internal.cm.sql.PreparedStatementWrapper
public class PreparedStatementWrapper
This class PreparedStatementWrapper wrap an SQL PreparedStatement
| Field Summary |
|---|
| Fields inherited from interface java.sql.Statement |
|---|
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO |
| Constructor Summary | |
|---|---|
PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
int[] columnIndexes,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
Creates a default PreparedStatementWrapper object capable
of returning the auto-generated keys designated by the given array. |
|
PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
Creates a PreparedStatementWrapper object that will
generate ResultSet objects with the given type,
concurrency, and holdability. |
|
PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
Creates a PreparedStatementWrapper object that will
generate ResultSet objects with the given type and
concurrency. |
|
PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
int autoGeneratedKeys,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
Creates a default PreparedStatementWrapper object that has
the capability to retrieve auto-generated keys. |
|
PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
java.lang.String[] columnNames,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
Creates a default PreparedStatementWrapper object capable
of returning the auto-generated keys designated by the given array. |
|
| Method Summary | ||
|---|---|---|
void |
addBatch()
Adds a set of parameters to this PreparedStatement
object's batch of commands. |
|
void |
addBatch(java.lang.String s)
Adds the given SQL command to the current list of commmands for this Statement object. |
|
void |
cancel()
Cancels this Statement object if both the DBMS and driver
support aborting an SQL statement. |
|
void |
checkIfValid()
Checks that this object is not in invalid state |
|
void |
clearBatch()
Empties this Statement object's current list of SQL
commands. |
|
void |
clearParameters()
Clears the current parameter values immediately. |
|
void |
clearPstmtValues()
Clears the values stored in the preparement. |
|
void |
clearWarnings()
Clears all the warnings reported on this Statement object. |
|
void |
close()
Releases this Statement object's database and JDBC
resources immediately instead of waiting for this to happen when it is
automatically closed. |
|
void |
closePstmt()
Close this object |
|
void |
destroy()
Destroy this preparestatement object, then it becomes closed and invalid |
|
boolean |
equals(java.lang.Object stmt)
|
|
boolean |
execute()
Executes the SQL statement in this PreparedStatement
object, which may be any kind of SQL statement. |
|
boolean |
execute(java.lang.String s)
Executes the given SQL statement, which may return multiple results. |
|
boolean |
execute(java.lang.String sql,
int autoGeneratedKeys)
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. |
|
boolean |
execute(java.lang.String sql,
int[] columnIndexes)
Executes the given SQL statement, which may return multiple results, and signals the driver that the auto-generated keys indicated in the given array should be made available for retrieval. |
|
boolean |
execute(java.lang.String sql,
java.lang.String[] columnNames)
Executes the given SQL statement, which may return multiple results, and signals the driver that the auto-generated keys indicated in the given array should be made available for retrieval. |
|
int[] |
executeBatch()
Submits a batch of commands to the database for execution and if all commands execute successfully, returns an array of update counts. |
|
java.sql.ResultSet |
executeQuery()
Executes the SQL query in this PreparedStatement object
and returns the ResultSet object generated by the query. |
|
java.sql.ResultSet |
executeQuery(java.lang.String s)
Executes the given SQL statement, which returns a single ResultSet object. |
|
int |
executeUpdate()
Executes the SQL statement in this PreparedStatement
object, which must be an SQL INSERT, UPDATE
or DELETE statement; or an SQL statement that returns
nothing, such as a DDL statement. |
|
int |
executeUpdate(java.lang.String s)
Executes the given SQL statement, which may be an INSERT,
UPDATE, or DELETE statement or an SQL
statement that returns nothing, such as an SQL DDL statement. |
|
int |
executeUpdate(java.lang.String sql,
int autoGeneratedKeys)
Executes the given SQL statement and signals the driver with the given flag about whether the auto-generated keys produced by this Statement object should be made available for retrieval. |
|
int |
executeUpdate(java.lang.String sql,
int[] columnIndexes)
Executes the given SQL statement and signals the driver that the auto-generated keys indicated in the given array should be made available for retrieval. |
|
int |
executeUpdate(java.lang.String sql,
java.lang.String[] columnNames)
Executes the given SQL statement and signals the driver that the auto-generated keys indicated in the given array should be made available for retrieval. |
|
java.sql.Connection |
getConnection()
Retrieves the Connection object that produced this
Statement object. |
|
int |
getFetchDirection()
Retrieves the direction for fetching rows from database tables that is the default for result sets generated from this Statement
object. |
|
int |
getFetchSize()
Retrieves the number of result set rows that is the default fetch size for ResultSet objects generated from this
Statement object. |
|
java.sql.ResultSet |
getGeneratedKeys()
Retrieves any auto-generated keys created as a result of executing this Statement object. |
|
int |
getMaxFieldSize()
Retrieves the maximum number of bytes that can be returned for character and binary column values in a ResultSet object produced by
this Statement object. |
|
int |
getMaxRows()
Retrieves the maximum number of rows that a ResultSet
object produced by this Statement object can contain. |
|
java.sql.ResultSetMetaData |
getMetaData()
Retrieves a ResultSetMetaData object that contains
information about the columns of the ResultSet object that
will be returned when this PreparedStatement object is
executed. |
|
boolean |
getMoreResults()
Moves to this Statement object's next result, returns
true if it is a ResultSet object, and
implicitly closes any current ResultSet object(s) obtained
with the method getResultSet. |
|
boolean |
getMoreResults(int current)
Moves to this Statement object's next result, deals with
any current ResultSet object(s) according to the
instructions specified by the given flag, and returns true
if the next result is a ResultSet object. |
|
java.sql.ParameterMetaData |
getParameterMetaData()
Retrieves the number, types and properties of this PreparedStatement object's parameters. |
|
int |
getQueryTimeout()
Retrieves the number of seconds the driver will wait for a Statement object to execute. |
|
java.sql.ResultSet |
getResultSet()
Retrieves the current result as a ResultSet object. |
|
int |
getResultSetConcurrency()
Retrieves the result set concurrency for ResultSet objects
generated by this Statement object. |
|
int |
getResultSetHoldability()
Retrieves the result set holdability for ResultSet objects
generated by this Statement object. |
|
int |
getResultSetType()
Retrieves the result set type for ResultSet objects
generated by this Statement object. |
|
int |
getUpdateCount()
Retrieves the current result as an update count; if the result is a ResultSet object or there are no more results, -1 is
returned. |
|
java.sql.SQLWarning |
getWarnings()
Retrieves the first warning reported by calls on this Statement object. |
|
int |
hashCode()
|
|
boolean |
isClosed()
|
|
boolean |
isPoolable()
Returns a value indicating whether the Statement is poolable or not. |
|
boolean |
isWrapperFor(java.lang.Class<?> iface)
Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does. |
|
void |
setArray(int i,
java.sql.Array x)
Sets the designated parameter to the given Array object. |
|
void |
setAsciiStream(int parameterIndex,
java.io.InputStream x)
Sets the designated parameter to the given input stream. |
|
void |
setAsciiStream(int parameterIndex,
java.io.InputStream x,
int length)
Sets the designated parameter to the given input stream, which will have the specified number of bytes. |
|
void |
setAsciiStream(int parameterIndex,
java.io.InputStream x,
long length)
Sets the designated parameter to the given input stream, which will have the specified number of bytes. |
|
void |
setBigDecimal(int parameterIndex,
java.math.BigDecimal x)
Sets the designated parameter to the given java.math.BigDecimal value. |
|
void |
setBinaryStream(int parameterIndex,
java.io.InputStream x)
Sets the designated parameter to the given input stream. |
|
void |
setBinaryStream(int parameterIndex,
java.io.InputStream x,
int length)
Sets the designated parameter to the given input stream, which will have the specified number of bytes. |
|
void |
setBinaryStream(int parameterIndex,
java.io.InputStream x,
long length)
Sets the designated parameter to the given input stream, which will have the specified number of bytes. |
|
void |
setBlob(int i,
java.sql.Blob x)
Sets the designated parameter to the given Blob object. |
|
void |
setBlob(int parameterIndex,
java.io.InputStream inputStream)
Sets the designated parameter to a InputStream object. |
|
void |
setBlob(int parameterIndex,
java.io.InputStream inputStream,
long length)
Sets the designated parameter to a InputStream object. |
|
void |
setBoolean(int parameterIndex,
boolean x)
Sets the designated parameter to the given Java boolean
value. |
|
void |
setByte(int parameterIndex,
byte x)
Sets the designated parameter to the given Java byte
value. |
|
void |
setBytes(int parameterIndex,
byte[] x)
Sets the designated parameter to the given Java array of bytes. |
|
void |
setCharacterStream(int parameterIndex,
java.io.Reader reader)
Sets the designated parameter to the given Reader object. |
|
void |
setCharacterStream(int parameterIndex,
java.io.Reader reader,
int length)
Sets the designated parameter to the given Reader object,
which is the given number of characters long. |
|
void |
setCharacterStream(int parameterIndex,
java.io.Reader reader,
long length)
Sets the designated parameter to the given Reader object, which is the given number of characters long. |
|
void |
setClob(int i,
java.sql.Clob x)
Sets the designated parameter to the given Clob object. |
|
void |
setClob(int parameterIndex,
java.io.Reader reader)
Sets the designated parameter to a Reader object. |
|
void |
setClob(int parameterIndex,
java.io.Reader reader,
long length)
Sets the designated parameter to a Reader object. |
|
void |
setClosed(boolean val)
Close this object |
|
void |
setCursorName(java.lang.String name)
Sets the SQL cursor name to the given String, which will
be used by subsequent Statement object
execute methods. |
|
void |
setDate(int parameterIndex,
java.sql.Date x)
Sets the designated parameter to the given java.sql.Date
value. |
|
void |
setDate(int parameterIndex,
java.sql.Date x,
java.util.Calendar cal)
Sets the designated parameter to the given java.sql.Date
value, using the given Calendar object. |
|
void |
setDouble(int parameterIndex,
double x)
Sets the designated parameter to the given Java double
value. |
|
void |
setEscapeProcessing(boolean enable)
Sets escape processing on or off. |
|
void |
setFetchDirection(int direction)
Gives the driver a hint as to the direction in which rows will be processed in ResultSet objects created using this
Statement object. |
|
void |
setFetchSize(int rows)
Gives the JDBC driver a hint as to the number of rows that should be fetched from the database when more rows are needed. |
|
void |
setFloat(int parameterIndex,
float x)
Sets the designated parameter to the given Java float
value. |
|
void |
setInt(int parameterIndex,
int x)
Sets the designated parameter to the given Java int value. |
|
void |
setLong(int parameterIndex,
long x)
Sets the designated parameter to the given Java long
value. |
|
void |
setMaxFieldSize(int max)
Sets the limit for the maximum number of bytes in a ResultSet column storing character or binary values to the
given number of bytes. |
|
void |
setMaxRows(int max)
Sets the limit for the maximum number of rows that any ResultSet object can contain to the given number. |
|
void |
setNCharacterStream(int parameterIndex,
java.io.Reader value)
Sets the designated parameter to a Reader object. |
|
void |
setNCharacterStream(int parameterIndex,
java.io.Reader value,
long length)
Sets the designated parameter to a Reader object. |
|
void |
setNClob(int parameterIndex,
java.sql.NClob value)
Sets the designated parameter to a java.sql.NClob object. |
|
void |
setNClob(int parameterIndex,
java.io.Reader reader)
Sets the designated parameter to a Reader object. |
|
void |
setNClob(int parameterIndex,
java.io.Reader reader,
long length)
Sets the designated parameter to a Reader object. |
|
void |
setNString(int parameterIndex,
java.lang.String value)
Sets the designated paramter to the given String object. |
|
void |
setNull(int parameterIndex,
int sqlType)
Sets the designated parameter to SQL NULL. |
|
void |
setNull(int paramIndex,
int sqlType,
java.lang.String typeName)
Sets the designated parameter to SQL NULL. |
|
void |
setObject(int parameterIndex,
java.lang.Object x)
Sets the value of the designated parameter using the given object. |
|
void |
setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType)
Sets the value of the designated parameter with the given object. |
|
void |
setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType,
int scale)
Sets the value of the designated parameter with the given object. |
|
void |
setPoolable(boolean poolable)
Requests that a Statement be pooled or not pooled. |
|
void |
setPreparedStatement(java.sql.PreparedStatement pstmt)
Sets the real prepared statement object on which we wrap calls |
|
void |
setQueryTimeout(int seconds)
Sets the number of seconds the driver will wait for a Statement object to execute to the given number of
seconds. |
|
void |
setRef(int i,
java.sql.Ref x)
Sets the designated parameter to the given REF(<structured-type>) value. |
|
void |
setRowId(int parameterIndex,
java.sql.RowId x)
Sets the designated parameter to the given java.sql.RowId object. |
|
void |
setShort(int parameterIndex,
short x)
Sets the designated parameter to the given Java short
value. |
|
void |
setSQLXML(int parameterIndex,
java.sql.SQLXML xmlObject)
Sets the designated parameter to the given java.sql.SQLXML object. |
|
void |
setString(int parameterIndex,
java.lang.String x)
Sets the designated parameter to the given Java String
value. |
|
void |
setTime(int parameterIndex,
java.sql.Time x)
Sets the designated parameter to the given java.sql.Time
value. |
|
void |
setTime(int parameterIndex,
java.sql.Time x,
java.util.Calendar cal)
Sets the designated parameter to the given java.sql.Time
value, using the given Calendar object. |
|
void |
setTimestamp(int parameterIndex,
java.sql.Timestamp x)
Sets the designated parameter to the given java.sql.Timestamp value. |
|
void |
setTimestamp(int parameterIndex,
java.sql.Timestamp x,
java.util.Calendar cal)
Sets the designated parameter to the given java.sql.Timestamp value, using the given
Calendar object. |
|
void |
setUnicodeStream(int parameterIndex,
java.io.InputStream x,
int length)
Deprecated. |
|
void |
setURL(int parameterIndex,
java.net.URL x)
Sets the designated parameter to the given java.net.URL
value. |
|
|
unwrap(java.lang.Class<T> iface)
Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
PreparedStatementWrapper object that will
generate ResultSet objects with the given type and
concurrency. This method is the same as the prepareStatement
method above, but it allows the default result set type and concurrency
to be overridden.
user - the user used for accessing the connectionsql - a String object that is the SQL statement to be
sent to the database; may contain one or more ? IN parametersresultSetType - a result set type; one of
ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEresultSetConcurrency - a concurrency type; one of
ResultSet.CONCUR_READ_ONLY or
ResultSet.CONCUR_UPDATABLEtrace - the logger to use for logging purposeisDebugLogging - if true, log the debug event in the logger
public PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
PreparedStatementWrapper object that will
generate ResultSet objects with the given type,
concurrency, and holdability.
This method is the same as the prepareStatement method
above, but it allows the default result set type, concurrency, and
holdability to be overridden.
user - the user used for accessing the connectionsql - a String object that is the SQL statement to be
sent to the database; may contain one or more ? IN parametersresultSetType - one of the following ResultSet
constants: ResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVEresultSetConcurrency - one of the following ResultSet
constants: ResultSet.CONCUR_READ_ONLY or
ResultSet.CONCUR_UPDATABLEresultSetHoldability - one of the following ResultSet
constants: ResultSet.HOLD_CURSORS_OVER_COMMIT or
ResultSet.CLOSE_CURSORS_AT_COMMITtrace - the logger to use for logging purposeisDebugLogging - if true, log the debug event in the logger
public PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
int autoGeneratedKeys,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
PreparedStatementWrapper object that has
the capability to retrieve auto-generated keys. The given constant tells
the driver whether it should make auto-generated keys available for
retrieval. This parameter is ignored if the SQL statement is not an
INSERT statement.
user - the user used for accessing the connectionsql - an SQL statement that may contain one or more '?' IN parameter
placeholdersautoGeneratedKeys - a flag indicating whether auto-generated keys
should be returned; one of
Statement.RETURN_GENERATED_KEYS or
Statement.NO_GENERATED_KEYStrace - the logger to use for logging purposeisDebugLogging - if true, log the debug event in the logger
public PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
int[] columnIndexes,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
PreparedStatementWrapper object capable
of returning the auto-generated keys designated by the given array. This
array contains the indexes of the columns in the target table that
contain the auto-generated keys that should be made available. This array
is ignored if the SQL statement is not an INSERT
statement.
An SQL statement with or without IN parameters can be pre-compiled and
stored in a PreparedStatement object. This object can then
be used to efficiently execute this statement multiple times.
user - the user used for accessing the connectionsql - an SQL statement that may contain one or more '?' IN parameter
placeholderscolumnIndexes - an array of column indexes indicating the columns
that should be returned from the inserted row or rowstrace - the logger to use for logging purposeisDebugLogging - if true, log the debug event in the logger
public PreparedStatementWrapper(java.lang.String user,
java.lang.String sql,
java.lang.String[] columnNames,
org.objectweb.util.monolog.api.Logger trace,
boolean isDebugLogging)
PreparedStatementWrapper object capable
of returning the auto-generated keys designated by the given array. This
array contains the names of the columns in the target table that contain
the auto-generated keys that should be returned. This array is ignored if
the SQL statement is not an INSERT statement.
An SQL statement with or without IN parameters can be pre-compiled and
stored in a PreparedStatement object. This object can then
be used to efficiently execute this statement multiple times.
user - the user used for accessing the connectionsql - an SQL statement that may contain one or more '?' IN parameter
placeholderscolumnNames - an array of column names indicating the columns that
should be returned from the inserted row or rowstrace - the logger to use for logging purposeisDebugLogging - if true, log the debug event in the logger| Method Detail |
|---|
public void checkIfValid()
throws java.sql.SQLException
java.sql.SQLException - if object is in invalid modepublic void clearPstmtValues()
public void closePstmt()
throws java.sql.SQLException
java.sql.SQLException - if object cannot be closed
public void destroy()
throws java.sql.SQLException
java.sql.SQLException - if it cannot be closedpublic boolean equals(java.lang.Object stmt)
equals in class java.lang.Objectstmt - given statement for comparing it
public void setClosed(boolean val)
val - true/falsepublic void setPreparedStatement(java.sql.PreparedStatement pstmt)
pstmt - sql preparedstatement
public void addBatch()
throws java.sql.SQLException
PreparedStatement
object's batch of commands.
addBatch in interface java.sql.PreparedStatementjava.sql.SQLException - if a database access error occursStatement#addBatch
public void clearParameters()
throws java.sql.SQLException
In general, parameter values remain in force for repeated use of a
statement. Setting a parameter value automatically clears its previous
value. However, in some cases it is useful to immediately release the
resources used by the current parameter values; this can be done by
calling the method clearParameters.
clearParameters in interface java.sql.PreparedStatementjava.sql.SQLException - if a database access error occurs
public boolean execute()
throws java.sql.SQLException
PreparedStatement
object, which may be any kind of SQL statement. Some prepared statements
return multiple results; the execute method handles these
complex statements as well as the simpler form of statements handled by
the methods executeQuery and executeUpdate.
The execute method returns a boolean to
indicate the form of the first result. You must call either the method
getResultSet or getUpdateCount to retrieve
the result; you must call getMoreResults to move to any
subsequent result(s).
execute in interface java.sql.PreparedStatementtrue if the first result is a
ResultSet object; false if the
first result is an update count or there is no result
java.sql.SQLException - if a database access error occurs or an argument
is supplied to this methodStatement#execute,
Statement#getResultSet,
Statement#getUpdateCount,
Statement#getMoreResults
public boolean execute(java.lang.String sql,
int autoGeneratedKeys)
throws java.sql.SQLException
INSERT statement.
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).
execute in interface java.sql.Statementsql - any SQL statementautoGeneratedKeys - 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
java.sql.SQLException - if a database access error occurs or the second
parameter supplied to this method is not
Statement.RETURN_GENERATED_KEYS or
Statement.NO_GENERATED_KEYS.getResultSet(),
getUpdateCount(),
getMoreResults(int),
getGeneratedKeys()
public boolean execute(java.lang.String sql,
int[] columnIndexes)
throws java.sql.SQLException
INSERT
statement.
Under 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).
execute in interface java.sql.Statementsql - any SQL statementcolumnIndexes - an array of the indexes of the columns in the
inserted row that should be made available for retrieval by a call
to the method getGeneratedKeys
true if the first result is a
ResultSet object; false if it is an
update count or there are no results
java.sql.SQLException - if a database access error occurs or the elements
in the int array passed to this method are not
valid column indexesgetResultSet(),
getUpdateCount(),
getMoreResults(int)
public boolean execute(java.lang.String sql,
java.lang.String[] columnNames)
throws java.sql.SQLException
INSERT statement.
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).
execute in interface java.sql.Statementsql - any SQL statementcolumnNames - an array of the names of the columns in the inserted
row that should be made available for retrieval by a call to the
method getGeneratedKeys
true if the next result is a
ResultSet object; false if it is an
update count or there are no more results
java.sql.SQLException - if a database access error occurs or the elements
of the String array passed to this method are
not valid column namesgetResultSet(),
getUpdateCount(),
getMoreResults(int),
getGeneratedKeys()
public java.sql.ResultSet executeQuery()
throws java.sql.SQLException
PreparedStatement object
and returns the ResultSet object generated by the query.
executeQuery in interface java.sql.PreparedStatementResultSet object that contains the data produced
by the query; never null
java.sql.SQLException - if a database access error occurs or the SQL
statement does not return a ResultSet object
public int executeUpdate()
throws java.sql.SQLException
PreparedStatement
object, which must be an SQL INSERT, UPDATE
or DELETE statement; or an SQL statement that returns
nothing, such as a DDL statement.
executeUpdate in interface java.sql.PreparedStatementINSERT,
UPDATE, or DELETE statements or
(2) 0 for SQL statements that return nothing
java.sql.SQLException - if a database access error occurs or the SQL
statement returns a ResultSet object
public int executeUpdate(java.lang.String sql,
int autoGeneratedKeys)
throws java.sql.SQLException
Statement object should be made available for retrieval.
executeUpdate in interface java.sql.Statementsql - must be an SQL INSERT, UPDATE
or DELETE statement or an SQL statement that
returns nothingautoGeneratedKeys - a flag indicating whether auto-generated keys
should be made available for retrieval; one of the following
constants: Statement.RETURN_GENERATED_KEYS
Statement.NO_GENERATED_KEYS
INSERT,
UPDATE or DELETE statements, or
0 for SQL statements that return nothing
java.sql.SQLException - if a database access error occurs, the given SQL
statement returns a ResultSet object, or the
given constant is not one of those allowed
public int executeUpdate(java.lang.String sql,
int[] columnIndexes)
throws java.sql.SQLException
INSERT statement.
executeUpdate in interface java.sql.Statementsql - an SQL INSERT, UPDATE or
DELETE statement or an SQL statement that returns
nothing, such as an SQL DDL statementcolumnIndexes - an array of column indexes indicating the columns
that should be returned from the inserted row
INSERT,
UPDATE, or DELETE statements, or 0
for SQL statements that return nothing
java.sql.SQLException - if a database access error occurs, the SQL
statement returns a ResultSet object, or the
second argument supplied to this method is not an
int array whose elements are valid column
indexes
public int executeUpdate(java.lang.String sql,
java.lang.String[] columnNames)
throws java.sql.SQLException
INSERT statement.
executeUpdate in interface java.sql.Statementsql - an SQL INSERT, UPDATE or
DELETE statement or an SQL statement that returns
nothingcolumnNames - an array of the names of the columns that should be
returned from the inserted row
INSERT,
UPDATE, or DELETE statements, or 0
for SQL statements that return nothing
java.sql.SQLException - if a database access error occurs, the SQL
statement returns a ResultSet object, or the
second argument supplied to this method is not a
String array whose elements are valid column
names
public java.sql.ResultSet getGeneratedKeys()
throws java.sql.SQLException
Statement object. If this Statement object
did not generate any keys, an empty ResultSet object is
returned.
getGeneratedKeys in interface java.sql.StatementResultSet object containing the auto-generated
key(s) generated by the execution of this Statement
object
java.sql.SQLException - if a database access error occurs
public java.sql.ResultSetMetaData getMetaData()
throws java.sql.SQLException
ResultSetMetaData object that contains
information about the columns of the ResultSet object that
will be returned when this PreparedStatement object is
executed.
Because a PreparedStatement object is precompiled, it is
possible to know about the ResultSet object that it will
return without having to execute it. Consequently, it is possible to
invoke the method getMetaData on a
PreparedStatement object rather than waiting to execute it
and then invoking the ResultSet.getMetaData method on the
ResultSet object that is returned.
NOTE: Using this method may be expensive for some drivers due to the lack of underlying DBMS support.
getMetaData in interface java.sql.PreparedStatementResultSet object's columns or
null if the driver cannot return a
ResultSetMetaData object
java.sql.SQLException - if a database access error occurs
public boolean getMoreResults(int current)
throws java.sql.SQLException
Statement object's next result, deals with
any current ResultSet object(s) according to the
instructions specified by the given flag, and returns true
if the next result is a ResultSet object.
There are no more results when the following is true:
// stmt is a Statement object ((stmt.getMoreResults() == false) && (stmt.getUpdateCount() == -1))
getMoreResults in interface java.sql.Statementcurrent - one of the following Statement constants
indicating what should happen to current ResultSet
objects obtained using the method getResultSet:
Statement.CLOSE_CURRENT_RESULT,
Statement.KEEP_CURRENT_RESULT, or
Statement.CLOSE_ALL_RESULTS
true if the next result is a
ResultSet object; false if it is an
update count or there are no more results
java.sql.SQLException - if a database access error occurs or the argument
supplied is not one of the following:
Statement.CLOSE_CURRENT_RESULT,
Statement.KEEP_CURRENT_RESULT, or
Statement.CLOSE_ALL_RESULTSexecute()
public java.sql.ParameterMetaData getParameterMetaData()
throws java.sql.SQLException
PreparedStatement object's parameters.
getParameterMetaData in interface java.sql.PreparedStatementParameterMetaData object that contains
information about the number, types and properties of this
PreparedStatement object's parameters
java.sql.SQLException - if a database access error occursParameterMetaData
public int getResultSetHoldability()
throws java.sql.SQLException
ResultSet objects
generated by this Statement object.
getResultSetHoldability in interface java.sql.StatementResultSet.HOLD_CURSORS_OVER_COMMIT or
ResultSet.CLOSE_CURSORS_AT_COMMIT
java.sql.SQLException - if a database access error occurs
public void setArray(int i,
java.sql.Array x)
throws java.sql.SQLException
Array object.
The driver converts this to an SQL ARRAY value when it
sends it to the database.
setArray in interface java.sql.PreparedStatementi - the first parameter is 1, the second is 2, ...x - an Array object that maps an SQL
ARRAY value
java.sql.SQLException - if a database access error occurs
public void setAsciiStream(int parameterIndex,
java.io.InputStream x,
int length)
throws java.sql.SQLException
LONGVARCHAR parameter, it may be more practical to send
it via a java.io.InputStream. Data will be read from the
stream as needed until end-of-file is reached. The JDBC driver will do
any necessary conversion from ASCII to the database char format.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setAsciiStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the Java input stream that contains the ASCII parameter valuelength - the number of bytes in the stream
java.sql.SQLException - if a database access error occurs
public void setBigDecimal(int parameterIndex,
java.math.BigDecimal x)
throws java.sql.SQLException
java.math.BigDecimal value. The driver converts this to an
SQL NUMERIC value when it sends it to the database.
setBigDecimal in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setBinaryStream(int parameterIndex,
java.io.InputStream x,
int length)
throws java.sql.SQLException
LONGVARBINARY parameter, it may be more practical to
send it via a java.io.InputStream object. The data will be
read from the stream as needed until end-of-file is reached.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setBinaryStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the java input stream which contains the binary parameter valuelength - the number of bytes in the stream
java.sql.SQLException - if a database access error occurs
public void setBlob(int i,
java.sql.Blob x)
throws java.sql.SQLException
Blob object.
The driver converts this to an SQL BLOB value when it
sends it to the database.
setBlob in interface java.sql.PreparedStatementi - the first parameter is 1, the second is 2, ...x - a Blob object that maps an SQL BLOB
value
java.sql.SQLException - if a database access error occurs
public void setBoolean(int parameterIndex,
boolean x)
throws java.sql.SQLException
boolean
value. The driver converts this to an SQL BIT value when
it sends it to the database.
setBoolean in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setByte(int parameterIndex,
byte x)
throws java.sql.SQLException
byte
value. The driver converts this to an SQL TINYINT value
when it sends it to the database.
setByte in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setBytes(int parameterIndex,
byte[] x)
throws java.sql.SQLException
VARBINARY or
LONGVARBINARY (depending on the argument's size relative
to the driver's limits on VARBINARY values) when it sends
it to the database.
setBytes in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setCharacterStream(int parameterIndex,
java.io.Reader reader,
int length)
throws java.sql.SQLException
Reader object,
which is the given number of characters long. When a very large UNICODE
value is input to a LONGVARCHAR parameter, it may be more
practical to send it via a java.io.Reader object. The data
will be read from the stream as needed until end-of-file is reached. The
JDBC driver will do any necessary conversion from UNICODE to the database
char format.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setCharacterStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...reader - the java.io.Reader object that contains the
Unicode datalength - the number of characters in the stream
java.sql.SQLException - if a database access error occurs
public void setClob(int i,
java.sql.Clob x)
throws java.sql.SQLException
Clob object.
The driver converts this to an SQL CLOB value when it
sends it to the database.
setClob in interface java.sql.PreparedStatementi - the first parameter is 1, the second is 2, ...x - a Clob object that maps an SQL CLOB
value
java.sql.SQLException - if a database access error occurs
public void setDate(int parameterIndex,
java.sql.Date x)
throws java.sql.SQLException
java.sql.Date
value. The driver converts this to an SQL DATE value when
it sends it to the database.
setDate in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setDate(int parameterIndex,
java.sql.Date x,
java.util.Calendar cal)
throws java.sql.SQLException
java.sql.Date
value, using the given Calendar object. The driver uses
the Calendar object to construct an SQL DATE
value, which the driver then sends to the database. With a
Calendar object, the driver can calculate the date taking
into account a custom timezone. If no Calendar object is
specified, the driver uses the default timezone, which is that of the
virtual machine running the application.
setDate in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter valuecal - the Calendar object the driver will use to
construct the date
java.sql.SQLException - if a database access error occurs
public void setDouble(int parameterIndex,
double x)
throws java.sql.SQLException
double
value. The driver converts this to an SQL DOUBLE value
when it sends it to the database.
setDouble in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setFloat(int parameterIndex,
float x)
throws java.sql.SQLException
float
value. The driver converts this to an SQL FLOAT value when
it sends it to the database.
setFloat in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setInt(int parameterIndex,
int x)
throws java.sql.SQLException
int value.
The driver converts this to an SQL INTEGER value when it
sends it to the database.
setInt in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setLong(int parameterIndex,
long x)
throws java.sql.SQLException
long
value. The driver converts this to an SQL BIGINT value
when it sends it to the database.
setLong in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setNull(int parameterIndex,
int sqlType)
throws java.sql.SQLException
NULL.
Note: You must specify the parameter's SQL type.
setNull in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...sqlType - the SQL type code defined in java.sql.Types
java.sql.SQLException - if a database access error occurs
public void setNull(int paramIndex,
int sqlType,
java.lang.String typeName)
throws java.sql.SQLException
NULL. This version
of the method setNull should be used for user-defined
types and REF type parameters. Examples of user-defined types include:
STRUCT, DISTINCT, JAVA_OBJECT, and named array types.
Note: To be portable, applications must give the SQL type code and the fully-qualified SQL type name when specifying a NULL user-defined or REF parameter. In the case of a user-defined type the name is the type name of the parameter itself. For a REF parameter, the name is the type name of the referenced type. If a JDBC driver does not need the type code or type name information, it may ignore it. Although it is intended for user-defined and Ref parameters, this method may be used to set a null parameter of any JDBC type. If the parameter does not have a user-defined or REF type, the given typeName is ignored.
setNull in interface java.sql.PreparedStatementparamIndex - the first parameter is 1, the second is 2, ...sqlType - a value from java.sql.TypestypeName - the fully-qualified name of an SQL user-defined type;
ignored if the parameter is not a user-defined type or REF
java.sql.SQLException - if a database access error occurs
public void setObject(int parameterIndex,
java.lang.Object x)
throws java.sql.SQLException
Sets the value of the designated parameter using the given object. The
second parameter must be of type Object; therefore, the
java.lang equivalent objects should be used for built-in
types.
The JDBC specification specifies a standard mapping from Java
Object types to SQL types. The given argument will be
converted to the corresponding SQL type before being sent to the
database.
Note that this method may be used to pass datatabase- specific abstract
data types, by using a driver-specific Java type. If the object is of a
class implementing the interface SQLData, the JDBC driver
should call the method SQLData.writeSQL to write it to the
SQL data stream. If, on the other hand, the object is of a class
implementing Ref, Blob, Clob,
Struct, or Array, the driver should pass
it to the database as a value of the corresponding SQL type.
This method throws an exception if there is an ambiguity, for example, if the object is of a class implementing more than one of the interfaces named above.
setObject in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the object containing the input parameter value
java.sql.SQLException - if a database access error occurs or the type of
the given object is ambiguous
public void setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType)
throws java.sql.SQLException
setObject above, except that it
assumes a scale of zero.
setObject in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the object containing the input parameter valuetargetSqlType - the SQL type (as defined in java.sql.Types) to be
sent to the database
java.sql.SQLException - if a database access error occurs
public void setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType,
int scale)
throws java.sql.SQLException
Sets the value of the designated parameter with the given object. The
second argument must be an object type; for integral values, the
java.lang equivalent objects should be used.
The given Java object will be converted to the given targetSqlType before
being sent to the database. If the object has a custom mapping (is of a
class implementing the interface SQLData), the JDBC
driver should call the method SQLData.writeSQL to write it
to the SQL data stream. If, on the other hand, the object is of a class
implementing Ref, Blob, Clob,
Struct, or Array, the driver should pass
it to the database as a value of the corresponding SQL type.
Note that this method may be used to pass database-specific abstract data types.
setObject in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the object containing the input parameter valuetargetSqlType - the SQL type (as defined in java.sql.Types) to be
sent to the database. The scale argument may further qualify this
type.scale - for java.sql.Types.DECIMAL or java.sql.Types.NUMERIC types,
this is the number of digits after the decimal point. For all
other types, this value will be ignored.
java.sql.SQLException - if a database access error occursTypes
public void setRef(int i,
java.sql.Ref x)
throws java.sql.SQLException
REF(<structured-type>) value. The driver converts
this to an SQL REF value when it sends it to the database.
setRef in interface java.sql.PreparedStatementi - the first parameter is 1, the second is 2, ...x - an SQL REF value
java.sql.SQLException - if a database access error occurs
public void setShort(int parameterIndex,
short x)
throws java.sql.SQLException
short
value. The driver converts this to an SQL SMALLINT value
when it sends it to the database.
setShort in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setString(int parameterIndex,
java.lang.String x)
throws java.sql.SQLException
String
value. The driver converts this to an SQL VARCHAR or
LONGVARCHAR value (depending on the argument's size
relative to the driver's limits on VARCHAR values) when it
sends it to the database.
setString in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setTime(int parameterIndex,
java.sql.Time x)
throws java.sql.SQLException
java.sql.Time
value. The driver converts this to an SQL TIME value when
it sends it to the database.
setTime in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setTime(int parameterIndex,
java.sql.Time x,
java.util.Calendar cal)
throws java.sql.SQLException
java.sql.Time
value, using the given Calendar object. The driver uses
the Calendar object to construct an SQL TIME
value, which the driver then sends to the database. With a
Calendar object, the driver can calculate the time taking
into account a custom timezone. If no Calendar object is
specified, the driver uses the default timezone, which is that of the
virtual machine running the application.
setTime in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter valuecal - the Calendar object the driver will use to
construct the time
java.sql.SQLException - if a database access error occurs
public void setTimestamp(int parameterIndex,
java.sql.Timestamp x)
throws java.sql.SQLException
java.sql.Timestamp value. The driver converts this to an
SQL TIMESTAMP value when it sends it to the database.
setTimestamp in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if a database access error occurs
public void setTimestamp(int parameterIndex,
java.sql.Timestamp x,
java.util.Calendar cal)
throws java.sql.SQLException
java.sql.Timestamp value, using the given
Calendar object. The driver uses the Calendar
object to construct an SQL TIMESTAMP value, which the
driver then sends to the database. With a Calendar object,
the driver can calculate the timestamp taking into account a custom
timezone. If no Calendar object is specified, the driver
uses the default timezone, which is that of the virtual machine running
the application.
setTimestamp in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter valuecal - the Calendar object the driver will use to
construct the timestamp
java.sql.SQLException - if a database access error occurs
public void setUnicodeStream(int parameterIndex,
java.io.InputStream x,
int length)
throws java.sql.SQLException
LONGVARCHAR
parameter, it may be more practical to send it via a
java.io.InputStream object. The data will be read from the
stream as needed until end-of-file is reached. The JDBC driver will do
any necessary conversion from Unicode to the database char format.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setUnicodeStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - a java.io.InputStream object that contains the
Unicode parameter value as two-byte Unicode characterslength - the number of bytes in the stream
java.sql.SQLException - if a database access error occurs
public void addBatch(java.lang.String s)
throws java.sql.SQLException
Statement object. The commands in this list can be
executed as a batch by calling the method executeBatch.
NOTE: This method is optional.
addBatch in interface java.sql.Statements - typically this is a static SQL INSERT or
UPDATE statement
java.sql.SQLException - if a database access error occurs, or the driver
does not support batch updatesexecuteBatch()
public void cancel()
throws java.sql.SQLException
Statement object if both the DBMS and driver
support aborting an SQL statement. This method can be used by one thread
to cancel a statement that is being executed by another thread.
cancel in interface java.sql.Statementjava.sql.SQLException - if a database access error occurs
public void clearBatch()
throws java.sql.SQLException
Statement object's current list of SQL
commands.
NOTE: This method is optional.
clearBatch in interface java.sql.Statementjava.sql.SQLException - if a database access error occurs or the driver
does not support batch updatesaddBatch()
public void clearWarnings()
throws java.sql.SQLException
Statement object.
After a call to this method, the method getWarnings will
return null until a new warning is reported for this
Statement object.
clearWarnings in interface java.sql.Statementjava.sql.SQLException - if a database access error occurs
public void close()
throws java.sql.SQLException
Statement object's database and JDBC
resources immediately instead of waiting for this to happen when it is
automatically closed. It is generally good practice to release resources
as soon as you are finished with them to avoid tying up database
resources.
Calling the method close on a Statement
object that is already closed has no effect.
Note: A Statement object is automatically closed
when it is garbage collected. When a Statement object is
closed, its current ResultSet object, if one exists, is
also closed.
close in interface java.sql.Statementjava.sql.SQLException - if a database access error occurs
public boolean execute(java.lang.String s)
throws java.sql.SQLException
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).
execute in interface java.sql.Statements - any SQL statement
true if the first result is a
ResultSet object; false if it is an
update count or there are no results
java.sql.SQLException - if a database access error occursgetResultSet(),
getUpdateCount(),
getMoreResults(int)
public int[] executeBatch()
throws java.sql.SQLException
int elements of the array that is returned are ordered to
correspond to the commands in the batch, which are ordered according to
the order in which they were added to the batch. The elements in the
array returned by the method executeBatch may be one of
the following:
SUCCESS_NO_INFO -- indicates that the
command was processed successfully but that the number of rows affected
is unknown
If one of the commands in a batch update fails to execute properly, this
method throws a BatchUpdateException, and a JDBC driver
may or may not continue to process the remaining commands in the batch.
However, the driver's behavior must be consistent with a particular DBMS,
either always continuing to process commands or never continuing to
process commands. If the driver continues processing after a failure, the
array returned by the method
BatchUpdateException.getUpdateCounts will contain as many
elements as there are commands in the batch, and at least one of the
elements will be the following:
EXECUTE_FAILED -- indicates that the
command failed to execute successfully and occurs only if a driver
continues to process commands after a command fails
A driver is not required to implement this method. The possible
implementations and return values have been modified in the Java 2 SDK,
Standard Edition, version 1.3 to accommodate the option of continuing to
proccess commands in a batch update after a
BatchUpdateException obejct has been thrown.
executeBatch in interface java.sql.Statementjava.sql.SQLException - if a database access error occurs or the driver
does not support batch statements. Throws
BatchUpdateException (a subclass of
SQLException) if one of the commands sent to
the database fails to execute properly or attempts to return a
result set.
public java.sql.ResultSet executeQuery(java.lang.String s)
throws java.sql.SQLException
ResultSet object.
executeQuery in interface java.sql.Statements - an SQL statement to be sent to the database, typically a static
SQL SELECT statement
ResultSet object that contains the data produced
by the given query; never null
java.sql.SQLException - if a database access error occurs or the given
SQL statement produces anything other than a single
ResultSet object
public int executeUpdate(java.lang.String s)
throws java.sql.SQLException
INSERT,
UPDATE, or DELETE statement or an SQL
statement that returns nothing, such as an SQL DDL statement.
executeUpdate in interface java.sql.Statements - an SQL INSERT, UPDATE or
DELETE statement or an SQL statement that returns
nothing
INSERT,
UPDATE or DELETE statements, or
0 for SQL statements that return nothing
java.sql.SQLException - if a database access error occurs or the given
SQL statement produces a ResultSet object
public java.sql.Connection getConnection()
throws java.sql.SQLException
Connection object that produced this
Statement object.
getConnection in interface java.sql.Statementjava.sql.SQLException - if a database access error occurs
public int getFetchDirection()
throws java.sql.SQLException
Statement
object. If this Statement object has not set a fetch
direction by calling the method setFetchDirection, the
return value is implementation-specific.
getFetchDirection in interface java.sql.StatementStatement object
java.sql.SQLException - if a database access error occurssetFetchDirection(int)
public int getFetchSize()
throws java.sql.SQLException
ResultSet objects generated from this
Statement object. If this Statement object
has not set a fetch size by calling the method setFetchSize,
the return value is implementation-specific.
getFetchSize in interface java.sql.StatementStatement object
java.sql.SQLException - if a database access error occurssetFetchSize(int)
public int getMaxFieldSize()
throws java.sql.SQLException
ResultSet object produced by
this Statement object. This limit applies only to
BINARY, VARBINARY,
LONGVARBINARY, CHAR, VARCHAR,
and LONGVARCHAR columns. If the limit is exceeded, the
excess data is silently discarded.
getMaxFieldSize in interface java.sql.Statementjava.sql.SQLException - if a database access error occurssetMaxFieldSize(int)
public int getMaxRows()
throws java.sql.SQLException
ResultSet
object produced by this Statement object can contain. If
this limit is exceeded, the excess rows are silently dropped.
getMaxRows in interface java.sql.StatementResultSet
object produced by this Statement object; zero
means there is no limit
java.sql.SQLException - if a database access error occurssetMaxRows(int)
public boolean getMoreResults()
throws java.sql.SQLException
Statement object's next result, returns
true if it is a ResultSet object, and
implicitly closes any current ResultSet object(s) obtained
with the method getResultSet.
There are no more results when the following is true:
// stmt is a Statement object ((stmt.getMoreResults() == false) && (stmt.getUpdateCount() == -1))
getMoreResults in interface java.sql.Statementtrue if the next result is a
ResultSet object; false if it is an
update count or there are no more results
java.sql.SQLException - if a database access error occursexecute()
public int getQueryTimeout()
throws java.sql.SQLException
Statement object to execute. If the limit is exceeded, a
SQLException is thrown.
getQueryTimeout in interface java.sql.Statementjava.sql.SQLException - if a database access error occurssetQueryTimeout(int)
public java.sql.ResultSet getResultSet()
throws java.sql.SQLException
ResultSet object. This
method should be called only once per result.
getResultSet in interface java.sql.StatementResultSet object or
null if the result is an update count or there are
no more results
java.sql.SQLException - if a database access error occursexecute()
public int getResultSetConcurrency()
throws java.sql.SQLException
ResultSet objects
generated by this Statement object.
getResultSetConcurrency in interface java.sql.StatementResultSet.CONCUR_READ_ONLY or
ResultSet.CONCUR_UPDATABLE
java.sql.SQLException - if a database access error occurs
public int getResultSetType()
throws java.sql.SQLException
ResultSet objects
generated by this Statement object.
getResultSetType in interface java.sql.StatementResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVE
java.sql.SQLException - if a database access error occurs
public int getUpdateCount()
throws java.sql.SQLException
ResultSet object or there are no more results, -1 is
returned. This method should be called only once per result.
getUpdateCount in interface java.sql.StatementResultSet object or there are no more results
java.sql.SQLException - if a database access error occursexecute()
public java.sql.SQLWarning getWarnings()
throws java.sql.SQLException
Statement object. Subsequent Statement
object warnings will be chained to this SQLWarning object.
The warning chain is automatically cleared each time a statement is
(re)executed. This method may not be called on a closed
Statement object; doing so will cause an
SQLException to be thrown.
Note: If you are processing a ResultSet object,
any warnings associated with reads on that ResultSet
object will be chained on it rather than on the Statement
object that produced it.
getWarnings in interface java.sql.StatementSQLWarning object or null
if there are no warnings
java.sql.SQLException - if a database access error occurs or this method
is called on a closed statement
public void setCursorName(java.lang.String name)
throws java.sql.SQLException
String, which will
be used by subsequent Statement object
execute methods. This name can then be used in SQL
positioned update or delete statements to identify the current row in the
ResultSet object generated by this statement. If the
database does not support positioned update/delete, this method is a
noop. To insure that a cursor has the proper isolation level to support
updates, the cursor's SELECT statement should have the
form SELECT FOR UPDATE. If FOR UPDATE is
not present, positioned updates may fail.
Note: By definition, the execution of positioned updates and
deletes must be done by a different Statement object than
the one that generated the ResultSet object being used for
positioning. Also, cursor names must be unique within a connection.
setCursorName in interface java.sql.Statementname - the new cursor name, which must be unique within a connection
java.sql.SQLException - if a database access error occurs
public void setEscapeProcessing(boolean enable)
throws java.sql.SQLException
PreparedStatements objects will have no effect.
setEscapeProcessing in interface java.sql.Statementenable - true to enable escape processing;
false to disable it
java.sql.SQLException - if a database access error occurs
public void setFetchDirection(int direction)
throws java.sql.SQLException
ResultSet objects created using this
Statement object. The default value is
ResultSet.FETCH_FORWARD.
Note that this method sets the default fetch direction for result sets
generated by this Statement object. Each result set has
its own methods for getting and setting its own fetch direction.
setFetchDirection in interface java.sql.Statementdirection - the initial direction for processing rows
java.sql.SQLException - if a database access error occurs or the given
direction is not one of ResultSet.FETCH_FORWARD,
ResultSet.FETCH_REVERSE, or
ResultSet.FETCH_UNKNOWNgetFetchDirection()
public void setFetchSize(int rows)
throws java.sql.SQLException
setFetchSize in interface java.sql.Statementrows - the number of rows to fetch
java.sql.SQLException - if a database access error occurs, or the
condition 0 <= rows <=
this.getMaxRows() is not satisfied.getFetchSize()
public void setMaxFieldSize(int max)
throws java.sql.SQLException
ResultSet column storing character or binary values to the
given number of bytes. This limit applies only to BINARY,
VARBINARY, LONGVARBINARY,
CHAR, VARCHAR, and
LONGVARCHAR fields. If the limit is exceeded, the excess
data is silently discarded. For maximum portability, use values greater
than 256.
setMaxFieldSize in interface java.sql.Statementmax - the new column size limit in bytes; zero means there is no
limit
java.sql.SQLException - if a database access error occurs or the
condition max >= 0 is not satisfiedgetMaxFieldSize()
public void setMaxRows(int max)
throws java.sql.SQLException
ResultSet object can contain to the given number. If the
limit is exceeded, the excess rows are silently dropped.
setMaxRows in interface java.sql.Statementmax - the new max rows limit; zero means there is no limit
java.sql.SQLException - if a database access error occurs or the
condition max >= 0 is not satisfiedgetMaxRows()
public void setQueryTimeout(int seconds)
throws java.sql.SQLException
Statement object to execute to the given number of
seconds. If the limit is exceeded, an SQLException is
thrown.
setQueryTimeout in interface java.sql.Statementseconds - the new query timeout limit in seconds; zero means there
is no limit
java.sql.SQLException - if a database access error occurs or the
condition seconds >= 0 is not satisfiedgetQueryTimeout()
public void setURL(int parameterIndex,
java.net.URL x)
throws java.sql.SQLException
java.net.URL
value. The driver converts this to an SQL DATALINK value
when it sends it to the database.
setURL in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the java.net.URL object to be set
java.sql.SQLException - if a database access error occurspublic int hashCode()
hashCode in class java.lang.Objectpublic boolean isClosed()
isClosed in interface java.sql.Statement
public void setRowId(int parameterIndex,
java.sql.RowId x)
throws java.sql.SQLException
java.sql.RowId object. The driver converts this to a SQL
ROWID value when it sends it to the database
setRowId in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access
error occurs or this method is called on a closed PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNString(int parameterIndex,
java.lang.String value)
throws java.sql.SQLException
String object. The driver converts this to a SQL NCHAR
or NVARCHAR or LONGNVARCHAR value (depending on the argument's size relative to the driver's
limits on NVARCHAR values) when it sends it to the database.
setNString in interface java.sql.PreparedStatementparameterIndex - of the first parameter is 1, the second is 2, ...value - the parameter value
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does
not support national character sets; if the driver can detect that a data conversion error could occur; if a database
access error occurs; or this method is called on a closed PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNCharacterStream(int parameterIndex,
java.io.Reader value,
long length)
throws java.sql.SQLException
Reader object. The Reader reads the data till end-of-file is
reached. The driver does the necessary conversion from Java character format to the national character set in the database.
setNCharacterStream in interface java.sql.PreparedStatementparameterIndex - of the first parameter is 1, the second is 2, ...value - the parameter valuelength - the number of characters in the parameter data.
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does
not support national character sets; if the driver can detect that a data conversion error could occur; if a database
access error occurs; or this method is called on a closed PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNClob(int parameterIndex,
java.sql.NClob value)
throws java.sql.SQLException
java.sql.NClob object. The driver converts this to a SQL NCLOB
value when it sends it to the database.
setNClob in interface java.sql.PreparedStatementparameterIndex - of the first parameter is 1, the second is 2, ...value - the parameter value
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does
not support national character sets; if the driver can detect that a data conversion error could occur; if a database
access error occurs; or this method is called on a closed PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setClob(int parameterIndex,
java.io.Reader reader,
long length)
throws java.sql.SQLException
Reader object. The reader must contain the number of characters specified
by length otherwise a SQLException will be generated when the PreparedStatement is executed. This
method differs from the setCharacterStream (int, Reader, int) method because it informs the driver that the
parameter value should be sent to the server as a CLOB. When the setCharacterStream method is
used, the driver may have to do extra work to determine whether the parameter data should be sent to the server as a
LONGVARCHAR or a CLOB
setClob in interface java.sql.PreparedStatementparameterIndex - index of the first parameter is 1, the second is 2, ...reader - An object that contains the data to set the parameter value to.length - the number of characters in the parameter data.
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access
error occurs; this method is called on a closed PreparedStatement or if the length specified is less than
zero.
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setBlob(int parameterIndex,
java.io.InputStream inputStream,
long length)
throws java.sql.SQLException
InputStream object. The inputstream must contain the number of characters
specified by length otherwise a SQLException will be generated when the PreparedStatement is
executed. This method differs from the setBinaryStream (int, InputStream, int) method because it informs the
driver that the parameter value should be sent to the server as a BLOB. When the setBinaryStream
method is used, the driver may have to do extra work to determine whether the parameter data should be sent to the server
as a LONGVARBINARY or a BLOB
setBlob in interface java.sql.PreparedStatementparameterIndex - index of the first parameter is 1, the second is 2, ...inputStream - An object that contains the data to set the parameter value to.length - the number of bytes in the parameter data.
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access
error occurs; this method is called on a closed PreparedStatement; if the length specified is less than zero
or if the number of bytes in the inputstream does not match the specfied length.
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNClob(int parameterIndex,
java.io.Reader reader,
long length)
throws java.sql.SQLException
Reader object. The reader must contain the number of characters specified
by length otherwise a SQLException will be generated when the PreparedStatement is executed. This
method differs from the setCharacterStream (int, Reader, int) method because it informs the driver that the
parameter value should be sent to the server as a NCLOB. When the setCharacterStream method is
used, the driver may have to do extra work to determine whether the parameter data should be sent to the server as a
LONGNVARCHAR or a NCLOB
setNClob in interface java.sql.PreparedStatementparameterIndex - index of the first parameter is 1, the second is 2, ...reader - An object that contains the data to set the parameter value to.length - the number of characters in the parameter data.
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if the length
specified is less than zero; if the driver does not support national character sets; if the driver can detect that a data
conversion error could occur; if a database access error occurs or this method is called on a closed
PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setSQLXML(int parameterIndex,
java.sql.SQLXML xmlObject)
throws java.sql.SQLException
java.sql.SQLXML object. The driver converts this to an SQL
XML value when it sends it to the database.
setSQLXML in interface java.sql.PreparedStatementparameterIndex - index of the first parameter is 1, the second is 2, ...xmlObject - a SQLXML object that maps an SQL XML value
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access
error occurs; this method is called on a closed PreparedStatement or the
java.xml.transform.Result, Writer or OutputStream has not been closed for the
SQLXML object
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setAsciiStream(int parameterIndex,
java.io.InputStream x,
long length)
throws java.sql.SQLException
LONGVARCHAR parameter, it may be more practical to send it via a
java.io.InputStream. Data will be read from the stream as needed until end-of-file is reached. The JDBC driver
will do any necessary conversion from ASCII to the database char format.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setAsciiStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the Java input stream that contains the ASCII parameter valuelength - the number of bytes in the stream
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database
access error occurs or this method is called on a closed PreparedStatement
public void setBinaryStream(int parameterIndex,
java.io.InputStream x,
long length)
throws java.sql.SQLException
LONGVARBINARY parameter, it may be more practical to send it via a
java.io.InputStream object. The data will be read from the stream as needed until end-of-file is reached.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setBinaryStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the java input stream which contains the binary parameter valuelength - the number of bytes in the stream
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database
access error occurs or this method is called on a closed PreparedStatement
public void setCharacterStream(int parameterIndex,
java.io.Reader reader,
long length)
throws java.sql.SQLException
Reader object, which is the given number of characters long. When a
very large UNICODE value is input to a LONGVARCHAR parameter, it may be more practical to send it via a
java.io.Reader object. The data will be read from the stream as needed until end-of-file is reached. The JDBC
driver will do any necessary conversion from UNICODE to the database char format.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setCharacterStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...reader - the java.io.Reader object that contains the Unicode datalength - the number of characters in the stream
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database
access error occurs or this method is called on a closed PreparedStatement
public void setAsciiStream(int parameterIndex,
java.io.InputStream x)
throws java.sql.SQLException
LONGVARCHAR parameter, it may be more practical to send it via a java.io.InputStream. Data will
be read from the stream as needed until end-of-file is reached. The JDBC driver will do any necessary conversion from ASCII
to the database char format.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
setAsciiStream which takes a length parameter.
setAsciiStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the Java input stream that contains the ASCII parameter value
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database
access error occurs or this method is called on a closed PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setBinaryStream(int parameterIndex,
java.io.InputStream x)
throws java.sql.SQLException
LONGVARBINARY parameter, it may be more practical to send it via a java.io.InputStream object.
The data will be read from the stream as needed until end-of-file is reached.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
setBinaryStream which takes a length parameter.
setBinaryStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the java input stream which contains the binary parameter value
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database
access error occurs or this method is called on a closed PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setCharacterStream(int parameterIndex,
java.io.Reader reader)
throws java.sql.SQLException
Reader object. When a very large UNICODE value is input to a
LONGVARCHAR parameter, it may be more practical to send it via a java.io.Reader object. The data
will be read from the stream as needed until end-of-file is reached. The JDBC driver will do any necessary conversion from
UNICODE to the database char format.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
setCharacterStream which takes a length parameter.
setCharacterStream in interface java.sql.PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...reader - the java.io.Reader object that contains the Unicode data
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database
access error occurs or this method is called on a closed PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNCharacterStream(int parameterIndex,
java.io.Reader value)
throws java.sql.SQLException
Reader object. The Reader reads the data till end-of-file is
reached. The driver does the necessary conversion from Java character format to the national character set in the database.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
setNCharacterStream which takes a length parameter.
setNCharacterStream in interface java.sql.PreparedStatementparameterIndex - of the first parameter is 1, the second is 2, ...value - the parameter value
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does
not support national character sets; if the driver can detect that a data conversion error could occur; if a database
access error occurs; or this method is called on a closed PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setClob(int parameterIndex,
java.io.Reader reader)
throws java.sql.SQLException
Reader object. This method differs from the
setCharacterStream (int, Reader) method because it informs the driver that the parameter value should be sent
to the server as a CLOB. When the setCharacterStream method is used, the driver may have to do
extra work to determine whether the parameter data should be sent to the server as a LONGVARCHAR or a
CLOB
Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
setClob which takes a length parameter.
setClob in interface java.sql.PreparedStatementparameterIndex - index of the first parameter is 1, the second is 2, ...reader - An object that contains the data to set the parameter value to.
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access
error occurs; this method is called on a closed PreparedStatementor if parameterIndex does not correspond to a
parameter marker in the SQL statement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setBlob(int parameterIndex,
java.io.InputStream inputStream)
throws java.sql.SQLException
InputStream object. This method differs from the
setBinaryStream (int, InputStream) method because it informs the driver that the parameter value should be
sent to the server as a BLOB. When the setBinaryStream method is used, the driver may have to do
extra work to determine whether the parameter data should be sent to the server as a LONGVARBINARY or a
BLOB
Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
setBlob which takes a length parameter.
setBlob in interface java.sql.PreparedStatementparameterIndex - index of the first parameter is 1, the second is 2, ...inputStream - An object that contains the data to set the parameter value to.
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access
error occurs; this method is called on a closed PreparedStatement or if parameterIndex does not correspond to
a parameter marker in the SQL statement,
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNClob(int parameterIndex,
java.io.Reader reader)
throws java.sql.SQLException
Reader object. This method differs from the
setCharacterStream (int, Reader) method because it informs the driver that the parameter value should be sent
to the server as a NCLOB. When the setCharacterStream method is used, the driver may have to do
extra work to determine whether the parameter data should be sent to the server as a LONGNVARCHAR or a
NCLOB
Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of
setNClob which takes a length parameter.
setNClob in interface java.sql.PreparedStatementparameterIndex - index of the first parameter is 1, the second is 2, ...reader - An object that contains the data to set the parameter value to.
java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does
not support national character sets; if the driver can detect that a data conversion error could occur; if a database
access error occurs or this method is called on a closed PreparedStatement
java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setPoolable(boolean poolable)
throws java.sql.SQLException
Statement be pooled or not pooled. The value specified is a hint to the statement pool
implementation indicating whether the applicaiton wants the statement to be pooled. It is up to the statement pool manager
as to whether the hint is used.
The poolable value of a statement is applicable to both internal statement caches implemented by the driver and external statement caches implemented by application servers and other applications.
By default, a Statement is not poolable when created, and a PreparedStatement and
CallableStatement are poolable when created.
setPoolable in interface java.sql.Statementpoolable - requests that the statement be pooled if true and that the statement not be pooled if false
java.sql.SQLException - if this method is called on a closed Statement
public boolean isPoolable()
throws java.sql.SQLException
Statement is poolable or not.
isPoolable in interface java.sql.Statementtrue if the Statement is poolable; false otherwise
java.sql.SQLException - if this method is called on a closed Statement
setPoolable(boolean)
public boolean isWrapperFor(java.lang.Class<?> iface)
throws java.sql.SQLException
isWrapperFor in interface java.sql.Wrapperiface - a Class defining an interface.
java.sql.SQLException - if an error occurs while determining whether this is a wrapper for an object with the given interface.
public <T> T unwrap(java.lang.Class<T> iface)
throws java.sql.SQLException
unwrap in interface java.sql.Wrapperiface - A Class defining an interface that the result must implement.
java.sql.SQLException - If no object found that implements the interface
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||