|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.firebirdsql.jdbc.AbstractStatement
org.firebirdsql.jdbc.FBStatement
org.firebirdsql.jdbc.AbstractPreparedStatement
org.firebirdsql.jdbc.AbstractCallableStatement
The interface used to execute SQL stored procedures. JDBC provides a stored procedure SQL escape syntax that allows stored procedures to be called in a standard way for all RDBMSs. This escape syntax has one form that includes a result parameter and one that does not. If used, the result parameter must be registered as an OUT parameter. The other parameters can be used for input, output or both. Parameters are referred to sequentially, by number, with the first parameter being 1.
{?= call <procedure-name>[<arg1>,<arg2>, ...]}
{call <procedure-name>[<arg1>,<arg2>, ...]}
IN parameter values are set using the set methods inherited from
PreparedStatement. The type of all OUT parameters must be
registered prior to executing the stored procedure; their values
are retrieved after execution via the get methods provided here.
A CallableStatement can return one ResultSet or
multiple ResultSet objects. Multiple
ResultSet objects are handled using operations
inherited from Statement.
For maximum portability, a call's ResultSet objects and
update counts should be processed prior to getting the values of output
parameters.
Methods that are new in the JDBC 2.0 API are marked "Since 1.2." Note: Escape syntax currently is not supported. Please use native Firebird procedure call syntax:
EXECUTE PROCEDURE(param1, ...);
Connection.prepareCall(java.lang.String),
ResultSet| Field Summary | |
protected FBProcedureCall |
procedureCall
|
protected boolean |
selectableProcedure
|
| Fields inherited from class org.firebirdsql.jdbc.AbstractPreparedStatement |
isParamSet |
| Fields inherited from class org.firebirdsql.jdbc.AbstractStatement |
c, fetchSize, firstWarning, fixedStmt, hasMoreResults, isResultSet, maxRows |
| 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 | |
protected |
AbstractCallableStatement(AbstractConnection c,
java.lang.String sql,
int rsType,
int rsConcurrency)
|
| Method Summary | |
void |
addBatch()
Adds a set of parameters to this PreparedStatement
object's batch of commands. |
protected void |
assertHasData(java.sql.ResultSet rs)
Asserts if the current statement has data to return. |
protected void |
cacheResultSet()
|
void |
clearBatch()
Makes the set of commands in the current batch empty. |
boolean |
execute()
Executes an execute stored procedure. |
int[] |
executeBatch()
Submits a batch of commands to the database for execution and if all commands execute successfully, returns an array of update counts. |
java.sql.ResultSet |
executeQuery()
Execute query. |
int |
executeUpdate()
Execute query. |
java.sql.Array |
getArray(int parameterIndex)
Gets the value of a JDBC ARRAY parameter as an
Array object in the Java programming language. |
java.math.BigDecimal |
getBigDecimal(int parameterIndex)
Gets the value of a JDBC NUMERIC parameter as a
java.math.BigDecimal object with as many digits to the
right of the decimal point as the value contains. |
java.math.BigDecimal |
getBigDecimal(int parameterIndex,
int scale)
Deprecated. |
java.sql.Blob |
getBlob(int parameterIndex)
Gets the value of a JDBC BLOB parameter as a
Blob object in the Java programming language. |
boolean |
getBoolean(int parameterIndex)
Gets the value of a JDBC BIT parameter as a boolean
in the Java programming language. |
byte |
getByte(int parameterIndex)
Gets the value of a JDBC TINYINT parameter as a byte
in the Java programming language. |
byte[] |
getBytes(int parameterIndex)
Gets the value of a JDBC BINARY or VARBINARY
parameter as an array of byte values in the Java
programming language. |
java.sql.Clob |
getClob(int parameterIndex)
Gets the value of a JDBC CLOB parameter as a
Clob object in the Java programming language. |
java.sql.ResultSet |
getCurrentResultSet()
Get current result set. |
java.sql.Date |
getDate(int parameterIndex)
Gets the value of a JDBC DATE parameter as a
java.sql.Date object. |
java.sql.Date |
getDate(int parameterIndex,
java.util.Calendar cal)
Gets the value of a JDBC DATE parameter as a
java.sql.Date object, using
the given Calendar object
to construct the date.
|
double |
getDouble(int parameterIndex)
Gets the value of a JDBC DOUBLE parameter as a double
in the Java programming language. |
float |
getFloat(int parameterIndex)
Gets the value of a JDBC FLOAT parameter as a float
in the Java programming language. |
int |
getInt(int parameterIndex)
Gets the value of a JDBC INTEGER parameter as an int
in the Java programming language. |
long |
getLong(int parameterIndex)
Gets the value of a JDBC BIGINT parameter as a long
in the Java programming language. |
java.sql.ResultSetMetaData |
getMetaData()
Since we deferred the statement preparation until all OUT params are registered, we ensure that the statement is prepared before the meta data for the callable statement is obtained. |
java.lang.Object |
getObject(int parameterIndex)
Gets the value of a parameter as an Object in the Java
programming language.
|
java.lang.Object |
getObject(int parameterIndex,
java.util.Map map)
Returns an object representing the value of OUT parameter i and uses map for the custom
mapping of the parameter value.
|
java.sql.Ref |
getRef(int parameterIndex)
Gets the value of a JDBC REF(<structured-type>)
parameter as a Ref object in the Java programming language. |
java.sql.ResultSet |
getResultSet()
Returns the current result as a ResultSet object.
|
short |
getShort(int parameterIndex)
Gets the value of a JDBC SMALLINT parameter as a short
in the Java programming language. |
java.lang.String |
getString(int parameterIndex)
Retrieves the value of a JDBC CHAR, VARCHAR,
or LONGVARCHAR parameter as a String in
the Java programming language.
|
java.sql.Time |
getTime(int parameterIndex)
Get the value of a JDBC TIME parameter as a
java.sql.Time object. |
java.sql.Time |
getTime(int parameterIndex,
java.util.Calendar cal)
Gets the value of a JDBC TIME parameter as a
java.sql.Time object, using
the given Calendar object
to construct the time.
|
java.sql.Timestamp |
getTimestamp(int parameterIndex)
Gets the value of a JDBC TIMESTAMP parameter as a
java.sql.Timestamp object. |
java.sql.Timestamp |
getTimestamp(int parameterIndex,
java.util.Calendar cal)
Gets the value of a JDBC TIMESTAMP parameter as a
java.sql.Timestamp object, using
the given Calendar object to construct
the Timestamp object.
|
protected boolean |
internalExecute(boolean sendOutParams)
Execute statement internally. |
protected void |
prepareFixedStatement(java.lang.String sql,
boolean describeBind)
We allow multiple calls to this method without re-preparing the statement. |
void |
registerOutParameter(int parameterIndex,
int sqlType)
Registers the OUT parameter in ordinal position parameterIndex to the JDBC type
sqlType. |
void |
registerOutParameter(int parameterIndex,
int sqlType,
int scale)
Registers the parameter in ordinal position parameterIndex to be of JDBC type
sqlType. |
void |
setArray(int i,
java.sql.Array x)
Sets the designated parameter to the given Array object.
|
void |
setAsciiStream(int parameterIndex,
java.io.InputStream x,
int length)
Sets the designated parameter to the given input stream, which will have the specified number of bytes. |
void |
setBigDecimal(int parameterIndex,
java.math.BigDecimal x)
|
void |
setBinaryStream(int parameterIndex,
java.io.InputStream inputStream,
int length)
|
void |
setBlob(int parameterIndex,
java.sql.Blob blob)
Sets the designated parameter to the given Blob object. |
void |
setBoolean(int parameterIndex,
boolean x)
|
void |
setByte(int parameterIndex,
byte x)
|
void |
setBytes(int parameterIndex,
byte[] x)
|
void |
setCharacterStream(int parameterIndex,
java.io.Reader reader,
int length)
Sets the designated parameter to the given Reader
object, which is the given number of characters long.
|
void |
setClob(int parameterIndex,
java.sql.Clob x)
Sets the designated parameter to the given Clob object. |
void |
setDate(int parameterIndex,
java.sql.Date x)
|
void |
setDate(int parameterIndex,
java.sql.Date x,
java.util.Calendar cal)
Sets the designated parameter to the given java.sql.Date value,
using the given Calendar object. |
void |
setDouble(int parameterIndex,
double x)
|
void |
setFloat(int parameterIndex,
float x)
|
void |
setInt(int parameterIndex,
int x)
|
void |
setLong(int parameterIndex,
long x)
|
void |
setNull(int parameterIndex,
int sqlType)
Sets the designated parameter to SQL NULL.
|
void |
setNull(int parameterIndex,
int sqlType,
java.lang.String typeName)
Sets the designated parameter to SQL NULL.
|
void |
setObject(int parameterIndex,
java.lang.Object x)
|
void |
setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType)
Sets the value of the designated parameter with the given object. |
void |
setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType,
int scale)
Sets the value of the designated parameter with the given object. |
void |
setRef(int parameterIndex,
java.sql.Ref x)
Sets the designated parameter to the given REF(<structured-type>) value. |
protected void |
setRequiredTypes()
Set required types for output parameters. |
void |
setSelectableProcedure(boolean selectableProcedure)
Mark this callable statement as a call of the selectable procedure. |
void |
setShort(int parameterIndex,
short x)
|
void |
setString(int parameterIndex,
java.lang.String x)
|
void |
setTime(int parameterIndex,
java.sql.Time x)
|
void |
setTime(int parameterIndex,
java.sql.Time x,
java.util.Calendar cal)
Sets the designated parameter to the given java.sql.Time value,
using the given Calendar object. |
void |
setTimestamp(int parameterIndex,
java.sql.Timestamp x)
|
void |
setTimestamp(int parameterIndex,
java.sql.Timestamp x,
java.util.Calendar cal)
Sets the designated parameter to the given java.sql.Timestamp value,
using the given Calendar object. |
void |
setUnicodeStream(int parameterIndex,
java.io.InputStream x,
int length)
Sets the designated parameter to the given input stream, which will have the specified number of bytes. |
boolean |
wasNull()
Indicates whether or not the last OUT parameter read had the value of SQL NULL. |
| Methods inherited from class org.firebirdsql.jdbc.AbstractPreparedStatement |
clearParameters, getField, getXsqlvar, setStringForced |
| Methods inherited from class org.firebirdsql.jdbc.FBStatement |
execute, execute, execute, executeUpdate, executeUpdate, executeUpdate, getGeneratedKeys, getMoreResults, getResultSetHoldability |
| Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface java.sql.CallableStatement |
getArray, getBigDecimal, getBlob, getBoolean, getByte, getBytes, getClob, getDate, getDate, getDouble, getFloat, getInt, getLong, getObject, getObject, getRef, getShort, getString, getTime, getTime, getTimestamp, getTimestamp, getURL, getURL, registerOutParameter, registerOutParameter, registerOutParameter, registerOutParameter, setAsciiStream, setBigDecimal, setBinaryStream, setBoolean, setByte, setBytes, setCharacterStream, setDate, setDate, setDouble, setFloat, setInt, setLong, setNull, setNull, setObject, setObject, setObject, setShort, setString, setTime, setTime, setTimestamp, setTimestamp, setURL |
| Methods inherited from interface java.sql.PreparedStatement |
clearParameters, getParameterMetaData, setURL |
| Methods inherited from interface java.sql.Statement |
addBatch, cancel, clearWarnings, close, execute, execute, execute, execute, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout |
| Methods inherited from interface org.firebirdsql.jdbc.FirebirdStatement |
getDeletedRowsCount, getInsertedRowsCount, getUpdatedRowsCount, hasOpenResultSet, isValid |
| Field Detail |
protected boolean selectableProcedure
protected FBProcedureCall procedureCall
| Constructor Detail |
protected AbstractCallableStatement(AbstractConnection c,
java.lang.String sql,
int rsType,
int rsConcurrency)
throws java.sql.SQLException
| Method Detail |
public void addBatch()
throws java.sql.SQLException
AbstractPreparedStatementPreparedStatement
object's batch of commands.
addBatch in interface java.sql.PreparedStatementaddBatch in class AbstractPreparedStatementjava.sql.SQLException - if a database access error occursStatement.addBatch(java.lang.String),
What Is in the JDBC
2.0 API
public void clearBatch()
throws java.sql.SQLException
AbstractPreparedStatement
clearBatch in interface java.sql.StatementclearBatch in class AbstractPreparedStatementjava.sql.SQLException - if a database access error occurs or the
driver does not support batch statements
public int[] executeBatch()
throws java.sql.SQLException
AbstractPreparedStatementint 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:
-2 -- 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:
-3 -- indicates that the command failed
to execute successfully and occurs only if a driver continues to
process commands after a command fails
A driver is not required to implement this method.
The possible implementations and return values have been modified in
the Java 2 SDK, Standard Edition, version 1.3 to
accommodate the option of continuing to proccess commands in a batch
update after a BatchUpdateException obejct has been thrown.
executeBatch in interface java.sql.StatementexecuteBatch in class AbstractPreparedStatementjava.sql.SQLException - if a database access error occurs or the
driver does not support batch statements. Throws BatchUpdateException
(a subclass of SQLException) if one of the commands sent to the
database fails to execute properly or attempts to return a result set.public void setSelectableProcedure(boolean selectableProcedure)
FirebirdCallableStatement
setSelectableProcedure in interface FirebirdCallableStatementselectableProcedure - true if the called procedure is selectable.
protected void setRequiredTypes()
throws java.sql.SQLException
java.sql.SQLException - if something went wrong.
protected void prepareFixedStatement(java.lang.String sql,
boolean describeBind)
throws GDSException,
java.sql.SQLException
prepareFixedStatement in class AbstractPreparedStatementGDSException
java.sql.SQLException
public java.sql.ResultSetMetaData getMetaData()
throws java.sql.SQLException
getMetaData in interface java.sql.PreparedStatementgetMetaData in class AbstractPreparedStatementResultSet object's columns
java.sql.SQLException - if a database access error occurs
public boolean execute()
throws java.sql.SQLException
execute
method handles these complex statements as well as the simpler
form of statements handled by the methods executeQuery
and executeUpdate.
execute in interface java.sql.PreparedStatementexecute in class AbstractPreparedStatementjava.sql.SQLException - if a database access error occursStatement.execute(java.lang.String)
public java.sql.ResultSet executeQuery()
throws java.sql.SQLException
executeQuery in interface java.sql.PreparedStatementexecuteQuery in class AbstractPreparedStatementResultSet object that contains the data produced by the
query; never null
java.sql.SQLException - if a database access error occurs
public int executeUpdate()
throws java.sql.SQLException
executeUpdate in interface java.sql.PreparedStatementexecuteUpdate in class AbstractPreparedStatementjava.sql.SQLException - if a database access error occurs
protected boolean internalExecute(boolean sendOutParams)
throws java.sql.SQLException
internalExecute in class AbstractPreparedStatementjava.sql.SQLException
public void registerOutParameter(int parameterIndex,
int sqlType)
throws java.sql.SQLException
parameterIndex to the JDBC type
sqlType. All OUT parameters must be registered
before a stored procedure is executed.
The JDBC type specified by sqlType for an OUT
parameter determines the Java type that must be used
in the get method to read the value of that parameter.
If the JDBC type expected to be returned to this output parameter
is specific to this particular database, sqlType
should be java.sql.Types.OTHER. The method
getObject(int) retrieves the value.
registerOutParameter in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so onsqlType - the JDBC type code defined by java.sql.Types.
If the parameter is of JDBC type NUMERIC
or DECIMAL, the version of
registerOutParameter that accepts a scale value
should be used.
java.sql.SQLException - if a database access error occursTypes
public void registerOutParameter(int parameterIndex,
int sqlType,
int scale)
throws java.sql.SQLException
parameterIndex to be of JDBC type
sqlType. This method must be called
before a stored procedure is executed.
The JDBC type specified by sqlType for an OUT
parameter determines the Java type that must be used
in the get method to read the value of that parameter.
This version of registerOutParameter should be
used when the parameter is of JDBC type NUMERIC
or DECIMAL.
registerOutParameter in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so onsqlType - SQL type code defined by java.sql.Types.scale - the desired number of digits to the right of the
decimal point. It must be greater than or equal to zero.
java.sql.SQLException - if a database access error occursTypes
public boolean wasNull()
throws java.sql.SQLException
NULL. Note that this method should be called only after
calling a getXXX method; otherwise, there is no value to use in
determining whether it is null or not.
wasNull in interface java.sql.CallableStatementtrue if the last parameter read was SQL
NULL; false otherwise
java.sql.SQLException - if a database access error occurs
public java.lang.String getString(int parameterIndex)
throws java.sql.SQLException
CHAR, VARCHAR,
or LONGVARCHAR parameter as a String in
the Java programming language.
For the fixed-length type JDBC CHAR,
the String object
returned has exactly the same value the JDBC
CHAR value had in the
database, including any padding added by the database.
getString in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is null.
java.sql.SQLException - if a database access error occurs
public boolean getBoolean(int parameterIndex)
throws java.sql.SQLException
BIT parameter as a boolean
in the Java programming language.
getBoolean in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is false.
java.sql.SQLException - if a database access error occurs
public byte getByte(int parameterIndex)
throws java.sql.SQLException
TINYINT parameter as a byte
in the Java programming language.
getByte in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is 0.
java.sql.SQLException - if a database access error occurs
public short getShort(int parameterIndex)
throws java.sql.SQLException
SMALLINT parameter as a short
in the Java programming language.
getShort in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is 0.
java.sql.SQLException - if a database access error occurs
public int getInt(int parameterIndex)
throws java.sql.SQLException
INTEGER parameter as an int
in the Java programming language.
getInt in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is 0.
java.sql.SQLException - if a database access error occurs
public long getLong(int parameterIndex)
throws java.sql.SQLException
BIGINT parameter as a long
in the Java programming language.
getLong in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is 0.
java.sql.SQLException - if a database access error occurs
public float getFloat(int parameterIndex)
throws java.sql.SQLException
FLOAT parameter as a float
in the Java programming language.
getFloat in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is 0.
java.sql.SQLException - if a database access error occurs
public double getDouble(int parameterIndex)
throws java.sql.SQLException
DOUBLE parameter as a double
in the Java programming language.
getDouble in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is 0.
java.sql.SQLException - if a database access error occurs
public java.math.BigDecimal getBigDecimal(int parameterIndex,
int scale)
throws java.sql.SQLException
NUMERIC parameter as a
java.math.BigDecimal object with scale digits to
the right of the decimal point.
getBigDecimal in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so onscale - the number of digits to the right of the decimal point
NULL, the result is
null.
java.sql.SQLException - if a database access error occurs
public byte[] getBytes(int parameterIndex)
throws java.sql.SQLException
BINARY or VARBINARY
parameter as an array of byte values in the Java
programming language.
getBytes in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result is
null.
java.sql.SQLException - if a database access error occurs
public java.sql.Date getDate(int parameterIndex)
throws java.sql.SQLException
DATE parameter as a
java.sql.Date object.
getDate in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is null.
java.sql.SQLException - if a database access error occurs
public java.sql.Time getTime(int parameterIndex)
throws java.sql.SQLException
TIME parameter as a
java.sql.Time object.
getTime in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is null.
java.sql.SQLException - if a database access error occurs
public java.sql.Timestamp getTimestamp(int parameterIndex)
throws java.sql.SQLException
TIMESTAMP parameter as a
java.sql.Timestamp object.
getTimestamp in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result
is null.
java.sql.SQLException - if a database access error occurs
public java.lang.Object getObject(int parameterIndex)
throws java.sql.SQLException
Object in the Java
programming language.
This method returns a Java object whose type corresponds to the JDBC
type that was registered for this parameter using the method
registerOutParameter. By registering the target JDBC
type as java.sql.Types.OTHER, this method can be used
to read database-specific abstract data types.
getObject in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
java.lang.Object holding the OUT parameter value.
java.sql.SQLException - if a database access error occursTypes
public java.math.BigDecimal getBigDecimal(int parameterIndex)
throws java.sql.SQLException
NUMERIC parameter as a
java.math.BigDecimal object with as many digits to the
right of the decimal point as the value contains.
getBigDecimal in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
NULL, the result is null.
java.sql.SQLException - if a database access error occurs
public java.lang.Object getObject(int parameterIndex,
java.util.Map map)
throws java.sql.SQLException
i and uses map for the custom
mapping of the parameter value.
This method returns a Java object whose type corresponds to the
JDBC type that was registered for this parameter using the method
registerOutParameter. By registering the target
JDBC type as java.sql.Types.OTHER, this method can
be used to read database-specific abstract data types.
getObject in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2, and so onmap - the mapping from SQL type names to Java classes
java.lang.Object holding the OUT parameter value
java.sql.SQLException - if a database access error occurs
public java.sql.Ref getRef(int parameterIndex)
throws java.sql.SQLException
REF(<structured-type>)
parameter as a Ref object in the Java programming language.
getRef in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so on
Ref object in the
Java programming language. If the value was SQL NULL, the value
null is returned.
java.sql.SQLException - if a database access error occurs
public java.sql.Blob getBlob(int parameterIndex)
throws java.sql.SQLException
BLOB parameter as a
Blob object in the Java programming language.
getBlob in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2, and so on
Blob object in the
Java programming language. If the value was SQL NULL, the value
null is returned.
java.sql.SQLException - if a database access error occurs
public java.sql.Clob getClob(int parameterIndex)
throws java.sql.SQLException
CLOB parameter as a
Clob object in the Java programming language.
getClob in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2, and
so on
Clob object in the
Java programming language. If the value was SQL NULL, the
value null is returned.
java.sql.SQLException - if a database access error occurs
public java.sql.Array getArray(int parameterIndex)
throws java.sql.SQLException
ARRAY parameter as an
Array object in the Java programming language.
getArray in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2, and
so on
Array object in
the Java programming language. If the value was SQL NULL, the
value null is returned.
java.sql.SQLException - if a database access error occurs
public java.sql.Date getDate(int parameterIndex,
java.util.Calendar cal)
throws java.sql.SQLException
DATE parameter as a
java.sql.Date object, using
the given Calendar object
to construct the date.
With a Calendar object, the driver
can calculate the date taking into account a custom timezone and locale.
If no Calendar object is specified, the driver uses the
default timezone and locale.
getDate in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so oncal - the Calendar object the driver will use
to construct the date
NULL, the result is
null.
java.sql.SQLException - if a database access error occurs
public java.sql.Time getTime(int parameterIndex,
java.util.Calendar cal)
throws java.sql.SQLException
TIME parameter as a
java.sql.Time object, using
the given Calendar object
to construct the time.
With a Calendar object, the driver
can calculate the time taking into account a custom timezone and locale.
If no Calendar object is specified, the driver uses the
default timezone and locale.
getTime in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so oncal - the Calendar object the driver will use
to construct the time
NULL, the result is
null.
java.sql.SQLException - if a database access error occurs
public java.sql.Timestamp getTimestamp(int parameterIndex,
java.util.Calendar cal)
throws java.sql.SQLException
TIMESTAMP parameter as a
java.sql.Timestamp object, using
the given Calendar object to construct
the Timestamp object.
With a Calendar object, the driver
can calculate the timestamp taking into account a custom timezone and locale.
If no Calendar object is specified, the driver uses the
default timezone and locale.
getTimestamp in interface java.sql.CallableStatementparameterIndex - the first parameter is 1, the second is 2,
and so oncal - the Calendar object the driver will use
to construct the timestamp
NULL, the result is
null.
java.sql.SQLException - if a database access error occurs
protected void assertHasData(java.sql.ResultSet rs)
throws java.sql.SQLException
rs - result set to test
java.sql.SQLException - when the result set has no data.
public java.sql.ResultSet getCurrentResultSet()
throws java.sql.SQLException
FirebirdStatementStatement.getResultSet(), except that this method
can be called as much as you like.
getCurrentResultSet in interface FirebirdStatementgetCurrentResultSet in class AbstractStatementjava.sql.SQLException
protected void cacheResultSet()
throws java.sql.SQLException
java.sql.SQLException
public java.sql.ResultSet getResultSet()
throws java.sql.SQLException
AbstractStatementResultSet object.
This method should be called only once per result.
Calling this method twice with autocommit on and used will probably
throw an inappropriate or uninformative exception.
getResultSet in interface java.sql.StatementgetResultSet in class AbstractStatementResultSet object;
null if the result is an update count or there are no more results
java.sql.SQLException - if a database access error occursAbstractStatement.execute(java.lang.String)
public void setArray(int i,
java.sql.Array x)
throws java.sql.SQLException
AbstractPreparedStatementArray object.
Sets an Array parameter.
setArray in interface java.sql.PreparedStatementsetArray in class AbstractPreparedStatementi - the first parameter is 1, the second is 2, ...x - an Array object that maps an SQL ARRAY value
java.sql.SQLException - if a database access error occurs
public void setAsciiStream(int parameterIndex,
java.io.InputStream x,
int length)
throws java.sql.SQLException
AbstractPreparedStatementLONGVARCHAR
parameter, it may be more practical to send it via a
java.io.InputStream. Data will be read from the stream
as needed until end-of-file is reached. The JDBC driver will
do any necessary conversion from ASCII to the database char format.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setAsciiStream in interface java.sql.PreparedStatementsetAsciiStream in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the Java input stream that contains the ASCII parameter valuelength - the number of bytes in the stream
java.sql.SQLException - if a database access error occurs
public void setBigDecimal(int parameterIndex,
java.math.BigDecimal x)
throws java.sql.SQLException
setBigDecimal in interface java.sql.PreparedStatementsetBigDecimal in class AbstractPreparedStatementjava.sql.SQLException
public void setBinaryStream(int parameterIndex,
java.io.InputStream inputStream,
int length)
throws java.sql.SQLException
setBinaryStream in interface java.sql.PreparedStatementsetBinaryStream in class AbstractPreparedStatementjava.sql.SQLException
public void setBlob(int parameterIndex,
java.sql.Blob blob)
throws java.sql.SQLException
AbstractPreparedStatementBlob object.
setBlob in interface java.sql.PreparedStatementsetBlob in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...blob - a Blob object that maps an SQL BLOB value
java.sql.SQLException - if a database access error occurs
public void setBoolean(int parameterIndex,
boolean x)
throws java.sql.SQLException
setBoolean in interface java.sql.PreparedStatementsetBoolean in class AbstractPreparedStatementjava.sql.SQLException
public void setByte(int parameterIndex,
byte x)
throws java.sql.SQLException
setByte in interface java.sql.PreparedStatementsetByte in class AbstractPreparedStatementjava.sql.SQLException
public void setBytes(int parameterIndex,
byte[] x)
throws java.sql.SQLException
setBytes in interface java.sql.PreparedStatementsetBytes in class AbstractPreparedStatementjava.sql.SQLException
public void setCharacterStream(int parameterIndex,
java.io.Reader reader,
int length)
throws java.sql.SQLException
AbstractPreparedStatementReader
object, which is the given number of characters long.
When a very large UNICODE value is input to a LONGVARCHAR
parameter, it may be more practical to send it via a
java.io.Reader object. The data will be read from the stream
as needed until end-of-file is reached. The JDBC driver will
do any necessary conversion from UNICODE to the database char format.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setCharacterStream in interface java.sql.PreparedStatementsetCharacterStream in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...reader - the java reader which contains the UNICODE datalength - the number of characters in the stream
java.sql.SQLException - if a database access error occurs
public void setClob(int parameterIndex,
java.sql.Clob x)
throws java.sql.SQLException
AbstractPreparedStatementClob object.
setClob in interface java.sql.PreparedStatementsetClob in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - a Clob object that maps an SQL CLOB value
java.sql.SQLException - if a database access error occurs
public void setDate(int parameterIndex,
java.sql.Date x,
java.util.Calendar cal)
throws java.sql.SQLException
AbstractPreparedStatementjava.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
a Calendar object, the driver can calculate the date
taking into account a custom timezone. If no
Calendar object is specified, the driver uses the default
timezone, which is that of the virtual machine running the application.
setDate in interface java.sql.PreparedStatementsetDate in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter valuecal - the Calendar object the driver will use
to construct the date
java.sql.SQLException - if a database access error occurs
public void setDate(int parameterIndex,
java.sql.Date x)
throws java.sql.SQLException
setDate in interface java.sql.PreparedStatementsetDate in class AbstractPreparedStatementjava.sql.SQLException
public void setDouble(int parameterIndex,
double x)
throws java.sql.SQLException
setDouble in interface java.sql.PreparedStatementsetDouble in class AbstractPreparedStatementjava.sql.SQLException
public void setFloat(int parameterIndex,
float x)
throws java.sql.SQLException
setFloat in interface java.sql.PreparedStatementsetFloat in class AbstractPreparedStatementjava.sql.SQLException
public void setInt(int parameterIndex,
int x)
throws java.sql.SQLException
setInt in interface java.sql.PreparedStatementsetInt in class AbstractPreparedStatementjava.sql.SQLException
public void setLong(int parameterIndex,
long x)
throws java.sql.SQLException
setLong in interface java.sql.PreparedStatementsetLong in class AbstractPreparedStatementjava.sql.SQLException
public void setNull(int parameterIndex,
int sqlType,
java.lang.String typeName)
throws java.sql.SQLException
AbstractPreparedStatementNULL.
This version of the method setNull should
be used for user-defined types and REF type parameters. Examples
of user-defined types include: STRUCT, DISTINCT, JAVA_OBJECT, and
named array types.
Note: To be portable, applications must give the SQL type code and the fully-qualified SQL type name when specifying a NULL user-defined or REF parameter. In the case of a user-defined type the name is the type name of the parameter itself. For a REF parameter, the name is the type name of the referenced type. If a JDBC driver does not need the type code or type name information, it may ignore it. Although it is intended for user-defined and Ref parameters, this method may be used to set a null parameter of any JDBC type. If the parameter does not have a user-defined or REF type, the given typeName is ignored.
setNull in interface java.sql.PreparedStatementsetNull in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...sqlType - a value from java.sql.TypestypeName - the fully-qualified name of an SQL user-defined type;
ignored if the parameter is not a user-defined type or REF
java.sql.SQLException - if a database access error occurs
public void setNull(int parameterIndex,
int sqlType)
throws java.sql.SQLException
AbstractPreparedStatementNULL.
Note: You must specify the parameter's SQL type.
setNull in interface java.sql.PreparedStatementsetNull in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...sqlType - the SQL type code defined in java.sql.Types
java.sql.SQLException - if a database access error occurs
public void setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType,
int scale)
throws java.sql.SQLException
AbstractPreparedStatementSets 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 datatabase- specific abstract data types.
setObject in interface java.sql.PreparedStatementsetObject in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the object containing the input parameter valuetargetSqlType - the SQL type (as defined in java.sql.Types) to be
sent to the database. The scale argument may further qualify this type.scale - for java.sql.Types.DECIMAL or java.sql.Types.NUMERIC types,
this is the number of digits after the decimal point. For all other
types, this value will be ignored.
java.sql.SQLException - if a database access error occursTypes
public void setObject(int parameterIndex,
java.lang.Object x,
int targetSqlType)
throws java.sql.SQLException
AbstractPreparedStatementsetObject
above, except that it assumes a scale of zero.
setObject in interface java.sql.PreparedStatementsetObject in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the object containing the input parameter valuetargetSqlType - the SQL type (as defined in java.sql.Types) to be
sent to the database
java.sql.SQLException - if a database access error occurs
public void setObject(int parameterIndex,
java.lang.Object x)
throws java.sql.SQLException
setObject in interface java.sql.PreparedStatementsetObject in class AbstractPreparedStatementjava.sql.SQLException
public void setRef(int parameterIndex,
java.sql.Ref x)
throws java.sql.SQLException
AbstractPreparedStatementREF(<structured-type>) value.
setRef in interface java.sql.PreparedStatementsetRef in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - an SQL REF value
java.sql.SQLException - if a database access error occurs
public void setShort(int parameterIndex,
short x)
throws java.sql.SQLException
setShort in interface java.sql.PreparedStatementsetShort in class AbstractPreparedStatementjava.sql.SQLException
public void setString(int parameterIndex,
java.lang.String x)
throws java.sql.SQLException
setString in interface java.sql.PreparedStatementsetString in class AbstractPreparedStatementjava.sql.SQLException
public void setTime(int parameterIndex,
java.sql.Time x,
java.util.Calendar cal)
throws java.sql.SQLException
AbstractPreparedStatementjava.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
a Calendar object, the driver can calculate the time
taking into account a custom timezone. If no
Calendar object is specified, the driver uses the default
timezone, which is that of the virtual machine running the application.
setTime in interface java.sql.PreparedStatementsetTime in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter valuecal - the Calendar object the driver will use
to construct the time
java.sql.SQLException - if a database access error occurs
public void setTime(int parameterIndex,
java.sql.Time x)
throws java.sql.SQLException
setTime in interface java.sql.PreparedStatementsetTime in class AbstractPreparedStatementjava.sql.SQLException
public void setTimestamp(int parameterIndex,
java.sql.Timestamp x,
java.util.Calendar cal)
throws java.sql.SQLException
AbstractPreparedStatementjava.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
a Calendar object, the driver can calculate the timestamp
taking into account a custom timezone. If no
Calendar object is specified, the driver uses the default
timezone, which is that of the virtual machine running the application.
setTimestamp in interface java.sql.PreparedStatementsetTimestamp in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the parameter valuecal - the Calendar object the driver will use
to construct the timestamp
java.sql.SQLException - if a database access error occurs
public void setTimestamp(int parameterIndex,
java.sql.Timestamp x)
throws java.sql.SQLException
setTimestamp in interface java.sql.PreparedStatementsetTimestamp in class AbstractPreparedStatementjava.sql.SQLException
public void setUnicodeStream(int parameterIndex,
java.io.InputStream x,
int length)
throws java.sql.SQLException
AbstractPreparedStatementLONGVARCHAR
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.
The byte format of the Unicode stream must be Java UTF-8, as
defined in the Java Virtual Machine Specification.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
setUnicodeStream in interface java.sql.PreparedStatementsetUnicodeStream in class AbstractPreparedStatementparameterIndex - the first parameter is 1, the second is 2, ...x - the java input stream which contains the
UNICODE parameter valuelength - the number of bytes in the stream
java.sql.SQLException - if a database access error occurs
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||