Class BrokeredStatement
- java.lang.Object
-
- org.apache.derby.iapi.jdbc.BrokeredStatement
-
- All Implemented Interfaces:
- java.lang.AutoCloseable, java.sql.Statement, java.sql.Wrapper, EngineStatement
- Direct Known Subclasses:
- BrokeredPreparedStatement
public class BrokeredStatement extends java.lang.Object implements EngineStatement
A Statement implementation that forwards all of its requests to an underlying Statement. This class implements the JDBC 4.1 interface.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidaddBatch(java.lang.String sql)voidcancel()voidclearBatch()voidclearWarnings()After this call getWarnings returns null until a new warning is reported for this Statement.voidclose()In many cases, it is desirable to immediately release a Statements's database and JDBC resources instead of waiting for this to happen when it is automatically closed; the close method provides this immediate release.voidcloseOnCompletion()java.sql.StatementcreateDuplicateStatement(java.sql.Connection conn, java.sql.Statement oldStatement)booleanexecute(java.lang.String sql)booleanexecute(java.lang.String sql, int autoGeneratedKeys)booleanexecute(java.lang.String sql, int[] columnIndexes)booleanexecute(java.lang.String sql, java.lang.String[] columnNames)int[]executeBatch()long[]executeLargeBatch()longexecuteLargeUpdate(java.lang.String sql)longexecuteLargeUpdate(java.lang.String sql, int autoGeneratedKeys)longexecuteLargeUpdate(java.lang.String sql, int[] columnIndexes)longexecuteLargeUpdate(java.lang.String sql, java.lang.String[] columnNames)java.sql.ResultSetexecuteQuery(java.lang.String sql)intexecuteUpdate(java.lang.String sql)intexecuteUpdate(java.lang.String sql, int autoGeneratedKeys)intexecuteUpdate(java.lang.String sql, int[] columnIndexes)intexecuteUpdate(java.lang.String sql, java.lang.String[] columnNames)java.sql.ConnectiongetConnection()intgetFetchDirection()intgetFetchSize()java.sql.ResultSetgetGeneratedKeys()JDBC 3.0 Retrieves any auto-generated keys created as a result of executing this Statement object.longgetLargeMaxRows()longgetLargeUpdateCount()intgetMaxFieldSize()intgetMaxRows()booleangetMoreResults()getMoreResults moves to a Statement's next result.booleangetMoreResults(int current)JDBC 3.0 Moves to this Statement obect'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 objectintgetQueryTimeout()java.sql.ResultSetgetResultSet()getResultSet returns the current result as a ResultSet.intgetResultSetConcurrency()intgetResultSetHoldability()Return the holdability of ResultSets created by this Statement.intgetResultSetType()JDBC 2.0 Determine the result set type.java.sql.StatementgetStatement()intgetUpdateCount()getUpdateCount returns the current result as an update count; if the result is a ResultSet or there are no more results -1 is returned.java.sql.SQLWarninggetWarnings()The first warning reported by calls on this Statement is returned.booleanisClosed()Checks if the statement is closed.booleanisCloseOnCompletion()booleanisPoolable()Forwards to the real Statement.booleanisWrapperFor(java.lang.Class iface)Returns false unlessifaceis implementedvoidsetCursorName(java.lang.String name)setCursorName defines the SQL cursor name that will be used by subsequent Statement execute methods.voidsetEscapeProcessing(boolean enable)If escape scanning is on (the default) the driver will do escape substitution before sending the SQL to the database.voidsetFetchDirection(int direction)JDBC 2.0 Give a hint as to the direction in which the rows in a result set will be processed.voidsetFetchSize(int rows)JDBC 2.0 Give the JDBC driver a hint as to the number of rows that should be fetched from the database when more rows are needed.voidsetLargeMaxRows(long max)voidsetMaxFieldSize(int max)The maxFieldSize limit (in bytes) is set to limit the size of data that can be returned for any column value; it only applies to BINARY, VARBINARY, LONGVARBINARY, CHAR, VARCHAR, and LONGVARCHAR fields.voidsetMaxRows(int max)The maxRows limit is set to limit the number of rows that any ResultSet can contain.voidsetPoolable(boolean poolable)Forwards to the real Statement.voidsetQueryTimeout(int seconds)<T> Tunwrap(java.lang.Class<T> iface)Returnsthisif this class implements the specified interface.
-
-
-
Method Detail
-
addBatch
public final void addBatch(java.lang.String sql) throws java.sql.SQLException- Specified by:
addBatchin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
clearBatch
public final void clearBatch() throws java.sql.SQLException- Specified by:
clearBatchin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
executeBatch
public final int[] executeBatch() throws java.sql.SQLException- Specified by:
executeBatchin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
cancel
public final void cancel() throws java.sql.SQLException- Specified by:
cancelin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
execute
public final boolean execute(java.lang.String sql) throws java.sql.SQLException- Specified by:
executein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
executeQuery
public final java.sql.ResultSet executeQuery(java.lang.String sql) throws java.sql.SQLException- Specified by:
executeQueryin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
executeUpdate
public final int executeUpdate(java.lang.String sql) throws java.sql.SQLException- Specified by:
executeUpdatein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
close
public void close() throws java.sql.SQLExceptionIn many cases, it is desirable to immediately release a Statements's database and JDBC resources instead of waiting for this to happen when it is automatically closed; the close method provides this immediate release.Note: A Statement is automatically closed when it is garbage collected. When a Statement is closed its current ResultSet, if one exists, is also closed.
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.sql.Statement- Throws:
java.sql.SQLException- thrown on failure.
-
getConnection
public final java.sql.Connection getConnection() throws java.sql.SQLException- Specified by:
getConnectionin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
getFetchDirection
public final int getFetchDirection() throws java.sql.SQLException- Specified by:
getFetchDirectionin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
getFetchSize
public final int getFetchSize() throws java.sql.SQLException- Specified by:
getFetchSizein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
getMaxFieldSize
public final int getMaxFieldSize() throws java.sql.SQLException- Specified by:
getMaxFieldSizein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
getMaxRows
public final int getMaxRows() throws java.sql.SQLException- Specified by:
getMaxRowsin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
getResultSetConcurrency
public final int getResultSetConcurrency() throws java.sql.SQLException- Specified by:
getResultSetConcurrencyin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
setMaxFieldSize
public final void setMaxFieldSize(int max) throws java.sql.SQLExceptionThe maxFieldSize limit (in bytes) is set to limit the size of data that can be returned for any column value; it only applies to BINARY, VARBINARY, LONGVARBINARY, CHAR, VARCHAR, and LONGVARCHAR fields. If the limit is exceeded, the excess data is silently discarded.- Specified by:
setMaxFieldSizein interfacejava.sql.Statement- Parameters:
max- the new max column size limit; zero means unlimited- Throws:
java.sql.SQLException- thrown on failure.
-
setMaxRows
public final void setMaxRows(int max) throws java.sql.SQLExceptionThe maxRows limit is set to limit the number of rows that any ResultSet can contain. If the limit is exceeded, the excess rows are silently dropped.- Specified by:
setMaxRowsin interfacejava.sql.Statement- Parameters:
max- the new max rows limit; zero means unlimited- Throws:
java.sql.SQLException- thrown on failure.
-
setEscapeProcessing
public final void setEscapeProcessing(boolean enable) throws java.sql.SQLExceptionIf escape scanning is on (the default) the driver will do escape substitution before sending the SQL to the database.- Specified by:
setEscapeProcessingin interfacejava.sql.Statement- Parameters:
enable- true to enable; false to disable- Throws:
java.sql.SQLException- thrown on failure.
-
getWarnings
public final java.sql.SQLWarning getWarnings() throws java.sql.SQLExceptionThe first warning reported by calls on this Statement is returned. A Statment's execute methods clear its SQLWarning chain. Subsequent Statement warnings will be chained to this SQLWarning.The warning chain is automatically cleared each time a statement is (re)executed.
Note: If you are processing a ResultSet then any warnings associated with ResultSet reads will be chained on the ResultSet object.
- Specified by:
getWarningsin interfacejava.sql.Statement- Returns:
- the first SQLWarning or null
- Throws:
java.sql.SQLException- thrown on failure.
-
clearWarnings
public final void clearWarnings() throws java.sql.SQLExceptionAfter this call getWarnings returns null until a new warning is reported for this Statement.- Specified by:
clearWarningsin interfacejava.sql.Statement- Throws:
java.sql.SQLException- thrown on failure.
-
setCursorName
public final void setCursorName(java.lang.String name) throws java.sql.SQLExceptionsetCursorName defines the SQL cursor name that will be used by subsequent Statement execute methods. This name can then be used in SQL positioned update/delete statements to identify the current row in the ResultSet generated by this getStatement(). If the database doesn't support positioned update/delete, this method is a noop.Note: By definition, positioned update/delete execution must be done by a different Statement than the one which generated the ResultSet being used for positioning. Also, cursor names must be unique within a Connection.
- Specified by:
setCursorNamein interfacejava.sql.Statement- Parameters:
name- the new cursor name.- Throws:
java.sql.SQLException
-
getResultSet
public final java.sql.ResultSet getResultSet() throws java.sql.SQLExceptiongetResultSet returns the current result as a ResultSet. It should only be called once per result.- Specified by:
getResultSetin interfacejava.sql.Statement- Returns:
- the current result as a ResultSet; null if the result is an update count or there are no more results or the statement was closed.
- Throws:
java.sql.SQLException- See Also:
execute(java.lang.String)
-
getUpdateCount
public final int getUpdateCount() throws java.sql.SQLExceptiongetUpdateCount returns the current result as an update count; if the result is a ResultSet or there are no more results -1 is returned. It should only be called once per result.The only way to tell for sure that the result is an update count is to first test to see if it is a ResultSet. If it is not a ResultSet it is either an update count or there are no more results.
- Specified by:
getUpdateCountin interfacejava.sql.Statement- Returns:
- the current result as an update count; -1 if it is a ResultSet or there are no more results
- Throws:
java.sql.SQLException- See Also:
execute(java.lang.String)
-
getMoreResults
public final boolean getMoreResults() throws java.sql.SQLExceptiongetMoreResults moves to a Statement's next result. It returns true if this result is a ResultSet. getMoreResults also implicitly closes any current ResultSet obtained with getResultSet. There are no more results when (!getMoreResults() && (getUpdateCount() == -1)- Specified by:
getMoreResultsin interfacejava.sql.Statement- Returns:
- true if the next result is a ResultSet; false if it is an update count or there are no more results
- Throws:
java.sql.SQLException- thrown on failure.- See Also:
execute(java.lang.String)
-
getResultSetType
public final int getResultSetType() throws java.sql.SQLExceptionJDBC 2.0 Determine the result set type.- Specified by:
getResultSetTypein interfacejava.sql.Statement- Throws:
java.sql.SQLException- Feature not implemented for now.
-
setFetchDirection
public final void setFetchDirection(int direction) throws java.sql.SQLExceptionJDBC 2.0 Give a hint as to the direction in which the rows in a result set will be processed. The hint applies only to result sets created using this Statement object. The default value is ResultSet.FETCH_FORWARD.- Specified by:
setFetchDirectionin interfacejava.sql.Statement- Parameters:
direction- the initial direction for processing rows- Throws:
java.sql.SQLException- if a database-access error occurs or direction is not one of ResultSet.FETCH_FORWARD, ResultSet.FETCH_REVERSE, or ResultSet.FETCH_UNKNOWN
-
setFetchSize
public final void setFetchSize(int rows) throws java.sql.SQLExceptionJDBC 2.0 Give the JDBC driver a hint as to the number of rows that should be fetched from the database when more rows are needed. The number of rows specified only affects result sets created using this getStatement(). If the value specified is zero, then the hint is ignored. The default value is zero.- Specified by:
setFetchSizein interfacejava.sql.Statement- Parameters:
rows- the number of rows to fetch- Throws:
java.sql.SQLException- if a database-access error occurs, or the condition 0 <= rows <= this.getMaxRows() is not satisfied.
-
getQueryTimeout
public final int getQueryTimeout() throws java.sql.SQLException- Specified by:
getQueryTimeoutin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
setQueryTimeout
public final void setQueryTimeout(int seconds) throws java.sql.SQLException- Specified by:
setQueryTimeoutin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
execute
public final boolean execute(java.lang.String sql, int autoGeneratedKeys) throws java.sql.SQLException- Specified by:
executein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
execute
public final boolean execute(java.lang.String sql, int[] columnIndexes) throws java.sql.SQLException- Specified by:
executein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
execute
public final boolean execute(java.lang.String sql, java.lang.String[] columnNames) throws java.sql.SQLException- Specified by:
executein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
executeUpdate
public final int executeUpdate(java.lang.String sql, int autoGeneratedKeys) throws java.sql.SQLException- Specified by:
executeUpdatein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
executeUpdate
public final int executeUpdate(java.lang.String sql, int[] columnIndexes) throws java.sql.SQLException- Specified by:
executeUpdatein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
executeUpdate
public final int executeUpdate(java.lang.String sql, java.lang.String[] columnNames) throws java.sql.SQLException- Specified by:
executeUpdatein interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
getMoreResults
public final boolean getMoreResults(int current) throws java.sql.SQLExceptionJDBC 3.0 Moves to this Statement obect'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- Specified by:
getMoreResultsin interfacejava.sql.Statement- Parameters:
current- - one of the following Statement constants indicating what should happen to current ResultSet objects obtained using the method getResultSetCLOSE_CURRENT_RESULT, KEEP_CURRENT_RESULT, or CLOSE_ALL_RESULTS- Returns:
- true if the next result is a ResultSet; false if it is an update count or there are no more results
- Throws:
java.sql.SQLException- thrown on failure.- See Also:
execute(java.lang.String)
-
getGeneratedKeys
public final java.sql.ResultSet getGeneratedKeys() throws java.sql.SQLExceptionJDBC 3.0 Retrieves any auto-generated keys created as a result of executing this Statement object. If this Statement object did not generate any keys, an empty ResultSet object is returned. If this Statement is a non-insert statement, an exception will be thrown.- Specified by:
getGeneratedKeysin interfacejava.sql.Statement- Returns:
- a ResultSet object containing the auto-generated key(s) generated by the execution of this Statement object
- Throws:
java.sql.SQLException- if a database access error occurs
-
getResultSetHoldability
public final int getResultSetHoldability() throws java.sql.SQLExceptionReturn the holdability of ResultSets created by this Statement. If this Statement is active in a global transaction the CLOSE_CURSORS_ON_COMMIT will be returned regardless of the holdability it was created with. In a local transaction the original create holdabilty will be returned.- Specified by:
getResultSetHoldabilityin interfacejava.sql.Statement- Throws:
java.sql.SQLException
-
createDuplicateStatement
public java.sql.Statement createDuplicateStatement(java.sql.Connection conn, java.sql.Statement oldStatement) throws java.sql.SQLException- Throws:
java.sql.SQLException
-
getStatement
public java.sql.Statement getStatement() throws java.sql.SQLException- Throws:
java.sql.SQLException
-
isWrapperFor
public boolean isWrapperFor(java.lang.Class iface) throws java.sql.SQLExceptionReturns false unlessifaceis implemented- Specified by:
isWrapperForin interfacejava.sql.Wrapper- Parameters:
iface- a Class defining an interface.- Returns:
- true if this implements the interface or directly or indirectly wraps an object that does.
- Throws:
java.sql.SQLException- if an error occurs while determining whether this is a wrapper for an object with the given interface.
-
unwrap
public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLExceptionReturnsthisif this class implements the specified interface.- Specified by:
unwrapin interfacejava.sql.Wrapper- Parameters:
iface- a class defining an interface- Returns:
- an object that implements the interface
- Throws:
java.sql.SQLException- if no object is found that implements the interface
-
isClosed
public final boolean isClosed() throws java.sql.SQLExceptionChecks if the statement is closed.- Specified by:
isClosedin interfacejava.sql.Statement- Returns:
trueif the statement is closed,falseotherwise- Throws:
java.sql.SQLException- if an error occurs
-
isPoolable
public final boolean isPoolable() throws java.sql.SQLExceptionForwards to the real Statement.- Specified by:
isPoolablein interfacejava.sql.Statement- Returns:
- true if the underlying Statement is poolable, false otherwise.
- Throws:
java.sql.SQLException- if the forwarding call fails.
-
setPoolable
public final void setPoolable(boolean poolable) throws java.sql.SQLExceptionForwards to the real Statement.- Specified by:
setPoolablein interfacejava.sql.Statement- Parameters:
poolable- the new value for the poolable hint.- Throws:
java.sql.SQLException- if the forwarding call fails.
-
closeOnCompletion
public void closeOnCompletion() throws java.sql.SQLException- Specified by:
closeOnCompletionin interfacejava.sql.Statement- Specified by:
closeOnCompletionin interfaceEngineStatement- Throws:
java.sql.SQLException
-
isCloseOnCompletion
public boolean isCloseOnCompletion() throws java.sql.SQLException- Specified by:
isCloseOnCompletionin interfacejava.sql.Statement- Specified by:
isCloseOnCompletionin interfaceEngineStatement- Throws:
java.sql.SQLException
-
executeLargeBatch
public long[] executeLargeBatch() throws java.sql.SQLException- Specified by:
executeLargeBatchin interfacejava.sql.Statement- Specified by:
executeLargeBatchin interfaceEngineStatement- Throws:
java.sql.SQLException
-
executeLargeUpdate
public long executeLargeUpdate(java.lang.String sql) throws java.sql.SQLException- Specified by:
executeLargeUpdatein interfacejava.sql.Statement- Specified by:
executeLargeUpdatein interfaceEngineStatement- Throws:
java.sql.SQLException
-
executeLargeUpdate
public long executeLargeUpdate(java.lang.String sql, int autoGeneratedKeys) throws java.sql.SQLException- Specified by:
executeLargeUpdatein interfacejava.sql.Statement- Specified by:
executeLargeUpdatein interfaceEngineStatement- Throws:
java.sql.SQLException
-
executeLargeUpdate
public long executeLargeUpdate(java.lang.String sql, int[] columnIndexes) throws java.sql.SQLException- Specified by:
executeLargeUpdatein interfacejava.sql.Statement- Specified by:
executeLargeUpdatein interfaceEngineStatement- Throws:
java.sql.SQLException
-
executeLargeUpdate
public long executeLargeUpdate(java.lang.String sql, java.lang.String[] columnNames) throws java.sql.SQLException- Specified by:
executeLargeUpdatein interfacejava.sql.Statement- Specified by:
executeLargeUpdatein interfaceEngineStatement- Throws:
java.sql.SQLException
-
getLargeMaxRows
public long getLargeMaxRows() throws java.sql.SQLException- Specified by:
getLargeMaxRowsin interfacejava.sql.Statement- Specified by:
getLargeMaxRowsin interfaceEngineStatement- Throws:
java.sql.SQLException
-
getLargeUpdateCount
public long getLargeUpdateCount() throws java.sql.SQLException- Specified by:
getLargeUpdateCountin interfacejava.sql.Statement- Specified by:
getLargeUpdateCountin interfaceEngineStatement- Throws:
java.sql.SQLException
-
setLargeMaxRows
public void setLargeMaxRows(long max) throws java.sql.SQLException- Specified by:
setLargeMaxRowsin interfacejava.sql.Statement- Specified by:
setLargeMaxRowsin interfaceEngineStatement- Throws:
java.sql.SQLException
-
-
DataMelt 3.0 © DataMelt by jWork.ORG