|
||||||||||
| 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(String user,
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(String user,
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(String user,
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(String user,
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(String user,
String sql,
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(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(Object stmt)
|
|
boolean |
execute()
Executes the SQL statement in this PreparedStatement
object, which may be any kind of SQL statement. |
|
boolean |
execute(String s)
Executes the given SQL statement, which may return multiple results. |
|
boolean |
execute(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(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(String sql,
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. |
|
ResultSet |
executeQuery()
Executes the SQL query in this PreparedStatement object
and returns the ResultSet object generated by the query. |
|
ResultSet |
executeQuery(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(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(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(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(String sql,
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. |
|
int |
getAutoGeneratedKeys()
|
|
int[] |
getColumnIndexes()
|
|
String[] |
getColumnNames()
|
|
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. |
|
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. |
|
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. |
|
int |
getOriginalResultSetConcurrency()
|
|
int |
getOriginalResultSetHoldability()
|
|
int |
getOriginalResultSetType()
|
|
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. |
|
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. |
|
String |
getSql()
|
|
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. |
|
String |
getUser()
|
|
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(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,
Array x)
Sets the designated parameter to the given Array object. |
|
void |
setAsciiStream(int parameterIndex,
InputStream x)
Sets the designated parameter to the given input stream. |
|
void |
setAsciiStream(int parameterIndex,
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,
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,
BigDecimal x)
Sets the designated parameter to the given java.math.BigDecimal value. |
|
void |
setBinaryStream(int parameterIndex,
InputStream x)
Sets the designated parameter to the given input stream. |
|
void |
setBinaryStream(int parameterIndex,
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,
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,
Blob x)
Sets the designated parameter to the given Blob object. |
|
void |
setBlob(int parameterIndex,
InputStream inputStream)
Sets the designated parameter to a InputStream object. |
|
void |
setBlob(int parameterIndex,
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,
Reader reader)
Sets the designated parameter to the given Reader object. |
|
void |
setCharacterStream(int parameterIndex,
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,
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,
Clob x)
Sets the designated parameter to the given Clob object. |
|
void |
setClob(int parameterIndex,
Reader reader)
Sets the designated parameter to a Reader object. |
|
void |
setClob(int parameterIndex,
Reader reader,
long length)
Sets the designated parameter to a Reader object. |
|
void |
setClosed(boolean val)
Close this object |
|
void |
setCursorName(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,
Date x)
Sets the designated parameter to the given java.sql.Date
value. |
|
void |
setDate(int parameterIndex,
Date x,
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,
Reader value)
Sets the designated parameter to a Reader object. |
|
void |
setNCharacterStream(int parameterIndex,
Reader value,
long length)
Sets the designated parameter to a Reader object. |
|
void |
setNClob(int parameterIndex,
NClob value)
Sets the designated parameter to a java.sql.NClob object. |
|
void |
setNClob(int parameterIndex,
Reader reader)
Sets the designated parameter to a Reader object. |
|
void |
setNClob(int parameterIndex,
Reader reader,
long length)
Sets the designated parameter to a Reader object. |
|
void |
setNString(int parameterIndex,
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,
String typeName)
Sets the designated parameter to SQL NULL. |
|
void |
setObject(int parameterIndex,
Object x)
Sets the value of the designated parameter using the given object. |
|
void |
setObject(int parameterIndex,
Object x,
int targetSqlType)
Sets the value of the designated parameter with the given object. |
|
void |
setObject(int parameterIndex,
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(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,
Ref x)
Sets the designated parameter to the given REF(<structured-type>) value. |
|
void |
setRowId(int parameterIndex,
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,
SQLXML xmlObject)
Sets the designated parameter to the given java.sql.SQLXML object. |
|
void |
setString(int parameterIndex,
String x)
Sets the designated parameter to the given Java String
value. |
|
void |
setTime(int parameterIndex,
Time x)
Sets the designated parameter to the given java.sql.Time
value. |
|
void |
setTime(int parameterIndex,
Time x,
Calendar cal)
Sets the designated parameter to the given java.sql.Time
value, using the given Calendar object. |
|
void |
setTimestamp(int parameterIndex,
Timestamp x)
Sets the designated parameter to the given java.sql.Timestamp value. |
|
void |
setTimestamp(int parameterIndex,
Timestamp x,
Calendar cal)
Sets the designated parameter to the given java.sql.Timestamp value, using the given
Calendar object. |
|
void |
setUnicodeStream(int parameterIndex,
InputStream x,
int length)
Deprecated. |
|
void |
setURL(int parameterIndex,
URL x)
Sets the designated parameter to the given java.net.URL
value. |
|
|
unwrap(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(String user,
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(String user,
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(String user,
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(String user,
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(String user,
String sql,
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 SQLException
SQLException - if object is in invalid modepublic void clearPstmtValues()
public void closePstmt()
throws SQLException
SQLException - if object cannot be closed
public void destroy()
throws SQLException
SQLException - if it cannot be closedpublic boolean equals(Object stmt)
equals in class Objectstmt - given statement for comparing it
public void setClosed(boolean val)
val - true/falsepublic void setPreparedStatement(PreparedStatement pstmt)
pstmt - sql preparedstatement
public void addBatch()
throws SQLException
PreparedStatement
object's batch of commands.
addBatch in interface PreparedStatementSQLException - if a database access error occursStatement#addBatch
public void clearParameters()
throws 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 PreparedStatementSQLException - if a database access error occurs
public boolean execute()
throws 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 PreparedStatementtrue if the first result is a
ResultSet object; false if the
first result is an update count or there is no result
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(String sql,
int autoGeneratedKeys)
throws 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 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
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(String sql,
int[] columnIndexes)
throws 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 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
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(String sql,
String[] columnNames)
throws 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 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
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 ResultSet executeQuery()
throws SQLException
PreparedStatement object
and returns the ResultSet object generated by the query.
executeQuery in interface PreparedStatementResultSet object that contains the data produced
by the query; never null
SQLException - if a database access error occurs or the SQL
statement does not return a ResultSet object
public int executeUpdate()
throws 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 PreparedStatementINSERT,
UPDATE, or DELETE statements or
(2) 0 for SQL statements that return nothing
SQLException - if a database access error occurs or the SQL
statement returns a ResultSet object
public int executeUpdate(String sql,
int autoGeneratedKeys)
throws SQLException
Statement object should be made available for retrieval.
executeUpdate in interface 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
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(String sql,
int[] columnIndexes)
throws SQLException
INSERT statement.
executeUpdate in interface 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
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(String sql,
String[] columnNames)
throws SQLException
INSERT statement.
executeUpdate in interface 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
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 ResultSet getGeneratedKeys()
throws SQLException
Statement object. If this Statement object
did not generate any keys, an empty ResultSet object is
returned.
getGeneratedKeys in interface StatementResultSet object containing the auto-generated
key(s) generated by the execution of this Statement
object
SQLException - if a database access error occurs
public ResultSetMetaData getMetaData()
throws 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 PreparedStatementResultSet object's columns or
null if the driver cannot return a
ResultSetMetaData object
SQLException - if a database access error occurs
public boolean getMoreResults(int current)
throws 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 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
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 ParameterMetaData getParameterMetaData()
throws SQLException
PreparedStatement object's parameters.
getParameterMetaData in interface PreparedStatementParameterMetaData object that contains
information about the number, types and properties of this
PreparedStatement object's parameters
SQLException - if a database access error occursParameterMetaData
public int getResultSetHoldability()
throws SQLException
ResultSet objects
generated by this Statement object.
getResultSetHoldability in interface StatementResultSet.HOLD_CURSORS_OVER_COMMIT or
ResultSet.CLOSE_CURSORS_AT_COMMIT
SQLException - if a database access error occurs
public void setArray(int i,
Array x)
throws SQLException
Array object.
The driver converts this to an SQL ARRAY value when it
sends it to the database.
setArray in interface PreparedStatementi - the first parameter is 1, the second is 2, ...x - an Array object that maps an SQL
ARRAY value
SQLException - if a database access error occurs
public void setAsciiStream(int parameterIndex,
InputStream x,
int length)
throws 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 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
SQLException - if a database access error occurs
public void setBigDecimal(int parameterIndex,
BigDecimal x)
throws SQLException
java.math.BigDecimal value. The driver converts this to an
SQL NUMERIC value when it sends it to the database.
setBigDecimal in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setBinaryStream(int parameterIndex,
InputStream x,
int length)
throws 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 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
SQLException - if a database access error occurs
public void setBlob(int i,
Blob x)
throws SQLException
Blob object.
The driver converts this to an SQL BLOB value when it
sends it to the database.
setBlob in interface PreparedStatementi - the first parameter is 1, the second is 2, ...x - a Blob object that maps an SQL BLOB
value
SQLException - if a database access error occurs
public void setBoolean(int parameterIndex,
boolean x)
throws SQLException
boolean
value. The driver converts this to an SQL BIT value when
it sends it to the database.
setBoolean in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setByte(int parameterIndex,
byte x)
throws SQLException
byte
value. The driver converts this to an SQL TINYINT value
when it sends it to the database.
setByte in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setBytes(int parameterIndex,
byte[] x)
throws 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 PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setCharacterStream(int parameterIndex,
Reader reader,
int length)
throws 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 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
SQLException - if a database access error occurs
public void setClob(int i,
Clob x)
throws SQLException
Clob object.
The driver converts this to an SQL CLOB value when it
sends it to the database.
setClob in interface PreparedStatementi - the first parameter is 1, the second is 2, ...x - a Clob object that maps an SQL CLOB
value
SQLException - if a database access error occurs
public void setDate(int parameterIndex,
Date x)
throws SQLException
java.sql.Date
value. The driver converts this to an SQL DATE value when
it sends it to the database.
setDate in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setDate(int parameterIndex,
Date x,
Calendar cal)
throws 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 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
SQLException - if a database access error occurs
public void setDouble(int parameterIndex,
double x)
throws SQLException
double
value. The driver converts this to an SQL DOUBLE value
when it sends it to the database.
setDouble in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setFloat(int parameterIndex,
float x)
throws SQLException
float
value. The driver converts this to an SQL FLOAT value when
it sends it to the database.
setFloat in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setInt(int parameterIndex,
int x)
throws SQLException
int value.
The driver converts this to an SQL INTEGER value when it
sends it to the database.
setInt in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setLong(int parameterIndex,
long x)
throws SQLException
long
value. The driver converts this to an SQL BIGINT value
when it sends it to the database.
setLong in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setNull(int parameterIndex,
int sqlType)
throws SQLException
NULL.
Note: You must specify the parameter's SQL type.
setNull in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...sqlType - the SQL type code defined in java.sql.Types
SQLException - if a database access error occurs
public void setNull(int paramIndex,
int sqlType,
String typeName)
throws 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 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
SQLException - if a database access error occurs
public void setObject(int parameterIndex,
Object x)
throws 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 PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the object containing the input parameter value
SQLException - if a database access error occurs or the type of
the given object is ambiguous
public void setObject(int parameterIndex,
Object x,
int targetSqlType)
throws SQLException
setObject above, except that it
assumes a scale of zero.
setObject in interface 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
SQLException - if a database access error occurs
public void setObject(int parameterIndex,
Object x,
int targetSqlType,
int scale)
throws 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 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.
SQLException - if a database access error occursTypes
public void setRef(int i,
Ref x)
throws SQLException
REF(<structured-type>) value. The driver converts
this to an SQL REF value when it sends it to the database.
setRef in interface PreparedStatementi - the first parameter is 1, the second is 2, ...x - an SQL REF value
SQLException - if a database access error occurs
public void setShort(int parameterIndex,
short x)
throws SQLException
short
value. The driver converts this to an SQL SMALLINT value
when it sends it to the database.
setShort in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setString(int parameterIndex,
String x)
throws 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 PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setTime(int parameterIndex,
Time x)
throws SQLException
java.sql.Time
value. The driver converts this to an SQL TIME value when
it sends it to the database.
setTime in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setTime(int parameterIndex,
Time x,
Calendar cal)
throws 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 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
SQLException - if a database access error occurs
public void setTimestamp(int parameterIndex,
Timestamp x)
throws SQLException
java.sql.Timestamp value. The driver converts this to an
SQL TIMESTAMP value when it sends it to the database.
setTimestamp in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
SQLException - if a database access error occurs
public void setTimestamp(int parameterIndex,
Timestamp x,
Calendar cal)
throws 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 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
SQLException - if a database access error occurs
@Deprecated
public void setUnicodeStream(int parameterIndex,
InputStream x,
int length)
throws 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 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
SQLException - if a database access error occurs
public void addBatch(String s)
throws 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 Statements - typically this is a static SQL INSERT or
UPDATE statement
SQLException - if a database access error occurs, or the driver
does not support batch updatesexecuteBatch()
public void cancel()
throws 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 StatementSQLException - if a database access error occurs
public void clearBatch()
throws SQLException
Statement object's current list of SQL
commands.
NOTE: This method is optional.
clearBatch in interface StatementSQLException - if a database access error occurs or the driver
does not support batch updatesaddBatch()
public void clearWarnings()
throws 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 StatementSQLException - if a database access error occurs
public void close()
throws 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 StatementSQLException - if a database access error occurs
public boolean execute(String s)
throws 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 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
SQLException - if a database access error occursgetResultSet(),
getUpdateCount(),
getMoreResults(int)
public int[] executeBatch()
throws 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 StatementSQLException - 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 ResultSet executeQuery(String s)
throws SQLException
ResultSet object.
executeQuery in interface 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
SQLException - if a database access error occurs or the given
SQL statement produces anything other than a single
ResultSet object
public int executeUpdate(String s)
throws SQLException
INSERT,
UPDATE, or DELETE statement or an SQL
statement that returns nothing, such as an SQL DDL statement.
executeUpdate in interface 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
SQLException - if a database access error occurs or the given
SQL statement produces a ResultSet object
public Connection getConnection()
throws SQLException
Connection object that produced this
Statement object.
getConnection in interface StatementSQLException - if a database access error occurs
public int getFetchDirection()
throws 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 StatementStatement object
SQLException - if a database access error occurssetFetchDirection(int)
public int getFetchSize()
throws 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 StatementStatement object
SQLException - if a database access error occurssetFetchSize(int)
public int getMaxFieldSize()
throws 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 StatementSQLException - if a database access error occurssetMaxFieldSize(int)
public int getMaxRows()
throws SQLException
ResultSet
object produced by this Statement object can contain. If
this limit is exceeded, the excess rows are silently dropped.
getMaxRows in interface StatementResultSet
object produced by this Statement object; zero
means there is no limit
SQLException - if a database access error occurssetMaxRows(int)
public boolean getMoreResults()
throws 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 Statementtrue if the next result is a
ResultSet object; false if it is an
update count or there are no more results
SQLException - if a database access error occursexecute()
public int getQueryTimeout()
throws SQLException
Statement object to execute. If the limit is exceeded, a
SQLException is thrown.
getQueryTimeout in interface StatementSQLException - if a database access error occurssetQueryTimeout(int)
public ResultSet getResultSet()
throws SQLException
ResultSet object. This
method should be called only once per result.
getResultSet in interface StatementResultSet object or
null if the result is an update count or there are
no more results
SQLException - if a database access error occursexecute()
public int getResultSetConcurrency()
throws SQLException
ResultSet objects
generated by this Statement object.
getResultSetConcurrency in interface StatementResultSet.CONCUR_READ_ONLY or
ResultSet.CONCUR_UPDATABLE
SQLException - if a database access error occurs
public int getResultSetType()
throws SQLException
ResultSet objects
generated by this Statement object.
getResultSetType in interface StatementResultSet.TYPE_FORWARD_ONLY,
ResultSet.TYPE_SCROLL_INSENSITIVE, or
ResultSet.TYPE_SCROLL_SENSITIVE
SQLException - if a database access error occurs
public int getUpdateCount()
throws SQLException
ResultSet object or there are no more results, -1 is
returned. This method should be called only once per result.
getUpdateCount in interface StatementResultSet object or there are no more results
SQLException - if a database access error occursexecute()
public SQLWarning getWarnings()
throws 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 StatementSQLWarning object or null
if there are no warnings
SQLException - if a database access error occurs or this method
is called on a closed statement
public void setCursorName(String name)
throws 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 Statementname - the new cursor name, which must be unique within a connection
SQLException - if a database access error occurs
public void setEscapeProcessing(boolean enable)
throws SQLException
PreparedStatements objects will have no effect.
setEscapeProcessing in interface Statementenable - true to enable escape processing;
false to disable it
SQLException - if a database access error occurs
public void setFetchDirection(int direction)
throws 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 Statementdirection - the initial direction for processing rows
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 SQLException
setFetchSize in interface Statementrows - the number of rows to fetch
SQLException - if a database access error occurs, or the
condition 0 <= rows <=
this.getMaxRows() is not satisfied.getFetchSize()
public void setMaxFieldSize(int max)
throws 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 Statementmax - the new column size limit in bytes; zero means there is no
limit
SQLException - if a database access error occurs or the
condition max >= 0 is not satisfiedgetMaxFieldSize()
public void setMaxRows(int max)
throws SQLException
ResultSet object can contain to the given number. If the
limit is exceeded, the excess rows are silently dropped.
setMaxRows in interface Statementmax - the new max rows limit; zero means there is no limit
SQLException - if a database access error occurs or the
condition max >= 0 is not satisfiedgetMaxRows()
public void setQueryTimeout(int seconds)
throws SQLException
Statement object to execute to the given number of
seconds. If the limit is exceeded, an SQLException is
thrown.
setQueryTimeout in interface Statementseconds - the new query timeout limit in seconds; zero means there
is no limit
SQLException - if a database access error occurs or the
condition seconds >= 0 is not satisfiedgetQueryTimeout()
public void setURL(int parameterIndex,
URL x)
throws SQLException
java.net.URL
value. The driver converts this to an SQL DATALINK value
when it sends it to the database.
setURL in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the java.net.URL object to be set
SQLException - if a database access error occurspublic int hashCode()
hashCode in class Objectpublic boolean isClosed()
isClosed in interface Statement
public void setRowId(int parameterIndex,
RowId x)
throws SQLException
java.sql.RowId object. The driver converts this to a SQL
ROWID value when it sends it to the database
setRowId in interface PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNString(int parameterIndex,
String value)
throws 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 PreparedStatementparameterIndex - of the first parameter is 1, the second is 2, ...value - the parameter value
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNCharacterStream(int parameterIndex,
Reader value,
long length)
throws 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 PreparedStatementparameterIndex - of the first parameter is 1, the second is 2, ...value - the parameter valuelength - the number of characters in the parameter data.
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNClob(int parameterIndex,
NClob value)
throws SQLException
java.sql.NClob object. The driver converts this to a SQL NCLOB
value when it sends it to the database.
setNClob in interface PreparedStatementparameterIndex - of the first parameter is 1, the second is 2, ...value - the parameter value
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setClob(int parameterIndex,
Reader reader,
long length)
throws 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 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.
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.
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setBlob(int parameterIndex,
InputStream inputStream,
long length)
throws 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 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.
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.
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNClob(int parameterIndex,
Reader reader,
long length)
throws 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 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.
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setSQLXML(int parameterIndex,
SQLXML xmlObject)
throws SQLException
java.sql.SQLXML object. The driver converts this to an SQL
XML value when it sends it to the database.
setSQLXML in interface PreparedStatementparameterIndex - index of the first parameter is 1, the second is 2, ...xmlObject - a SQLXML object that maps an SQL XML value
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setAsciiStream(int parameterIndex,
InputStream x,
long length)
throws 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 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
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,
InputStream x,
long length)
throws 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 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
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,
Reader reader,
long length)
throws 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 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
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,
InputStream x)
throws 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 PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the Java input stream that contains the ASCII parameter value
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setBinaryStream(int parameterIndex,
InputStream x)
throws 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 PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the java input stream which contains the binary parameter value
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setCharacterStream(int parameterIndex,
Reader reader)
throws 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 PreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...reader - the java.io.Reader object that contains the Unicode data
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNCharacterStream(int parameterIndex,
Reader value)
throws 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 PreparedStatementparameterIndex - of the first parameter is 1, the second is 2, ...value - the parameter value
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setClob(int parameterIndex,
Reader reader)
throws 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 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.
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setBlob(int parameterIndex,
InputStream inputStream)
throws 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 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.
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,
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setNClob(int parameterIndex,
Reader reader)
throws 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 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.
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
SQLFeatureNotSupportedException - if the JDBC driver does not support this method
public void setPoolable(boolean poolable)
throws 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 Statementpoolable - requests that the statement be pooled if true and that the statement not be pooled if false
SQLException - if this method is called on a closed Statement
public boolean isPoolable()
throws SQLException
Statement is poolable or not.
isPoolable in interface Statementtrue if the Statement is poolable; false otherwise
SQLException - if this method is called on a closed Statement
setPoolable(boolean)
public boolean isWrapperFor(Class<?> iface)
throws SQLException
isWrapperFor in interface Wrapperiface - a Class defining an interface.
SQLException - if an error occurs while determining whether this is a wrapper for an object with the given interface.
public <T> T unwrap(Class<T> iface)
throws SQLException
unwrap in interface Wrapperiface - A Class defining an interface that the result must implement.
SQLException - If no object found that implements the interfacepublic String getSql()
public String getUser()
public int getAutoGeneratedKeys()
public int[] getColumnIndexes()
public String[] getColumnNames()
public int getOriginalResultSetType()
public int getOriginalResultSetConcurrency()
public int getOriginalResultSetHoldability()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||