    All Packages  Class Hierarchy  This Package  Previous  Next  Index

# Interface java.sql.CallableStatement

public interface CallableStatement
extends PreparedStatement

CallableStatement is used to execute SQL stored procedures.

JDBC provides a stored procedure SQL escape that allows stored procedures to be called in a standard way for all RDBMS's. 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 may be used for input, output or both. Parameters are refered to sequentially, by number. The first parameter is 1.

`{?= call [,, ...]}
{call [,, ...]}`

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 Callable statement may return a ResultSet or multiple ResultSets. Multiple ResultSets are handled using operations inherited from Statement.

For maximum portability, a call's ResultSets and update counts should be processed prior to getting the values of output parameters.

See Also:
  prepareCall, ResultSet

##

getBigDecimal(int, int)
  Get the value of a NUMERIC parameter as a java.math.BigDecimal object.
getBoolean(int)
  Get the value of a BIT parameter as a Java boolean.
getByte(int)
  Get the value of a TINYINT parameter as a Java byte.
getBytes(int)
  Get the value of a SQL BINARY or VARBINARY parameter as a Java byte[]
getDate(int)
  Get the value of a SQL DATE parameter as a java.sql.Date object
getDouble(int)
  Get the value of a DOUBLE parameter as a Java double.
getFloat(int)
  Get the value of a FLOAT parameter as a Java float.
getInt(int)
  Get the value of an INTEGER parameter as a Java int.
getLong(int)
  Get the value of a BIGINT parameter as a Java long.
getObject(int)
  Get the value of a parameter as a Java object.
getShort(int)
  Get the value of a SMALLINT parameter as a Java short.
getString(int)
  Get the value of a CHAR, VARCHAR, or LONGVARCHAR parameter as a Java String.
getTime(int)
  Get the value of a SQL TIME parameter as a java.sql.Time object.
getTimestamp(int)
  Get the value of a SQL TIMESTAMP parameter as a java.sql.Timestamp object.
registerOutParameter(int, int)
  Before executing a stored procedure call, you must explicitly call registerOutParameter to register the java.sql.Type of each out parameter.
registerOutParameter(int, int, int)
  Use this version of registerOutParameter for registering Numeric or Decimal out parameters.
wasNull()
  An OUT parameter may have the value of SQL NULL; wasNull reports whether the last value read has this special value.

##

registerOutParameter

     public abstract void registerOutParameter(int parameterIndex,
                                               int sqlType) throws SQLException

  Before executing a stored procedure call, you must explicitly call registerOutParameter to register the java.sql.Type of each out parameter.

  Note: When reading the value of an out parameter, you must use the getXXX method whose Java type XXX corresponds to the parameter's registered SQL type.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2,...
    sqlType - SQL type code defined by java.sql.Types; for parameters of type Numeric or Decimal use the version of registerOutParameter that accepts a scale value
  Throws: SQLException
    if a database-access error occurs.
  See Also:
    Type

registerOutParameter

     public abstract void registerOutParameter(int parameterIndex,
                                               int sqlType,
                                               int scale) throws SQLException

  Use this version of registerOutParameter for registering Numeric or Decimal out parameters.

  Note: When reading the value of an out parameter, you must use the getXXX method whose Java type XXX corresponds to the parameter's registered SQL type.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
    sqlType - use either java.sql.Type.NUMERIC or java.sql.Type.DECIMAL
    scale - a value greater than or equal to zero representing the desired number of digits to the right of the decimal point
  Throws: SQLException
    if a database-access error occurs.
  See Also:
    Type

wasNull

     public abstract boolean wasNull() throws SQLException

  An OUT parameter may have the value of SQL NULL; wasNull reports whether the last value read has this special value.

  Note: You must first call getXXX on a parameter to read its value and then call wasNull() to see if the value was SQL NULL.

  Returns:
    true if the last parameter read was SQL NULL
  Throws: SQLException
    if a database-access error occurs.

getString

     public abstract String getString(int parameterIndex) throws SQLException

  Get the value of a CHAR, VARCHAR, or LONGVARCHAR parameter as a Java String.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is null
  Throws: SQLException
    if a database-access error occurs.

getBoolean

     public abstract boolean getBoolean(int parameterIndex) throws SQLException

  Get the value of a BIT parameter as a Java boolean.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is false
  Throws: SQLException
    if a database-access error occurs.

getByte

     public abstract byte getByte(int parameterIndex) throws SQLException

  Get the value of a TINYINT parameter as a Java byte.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is 0
  Throws: SQLException
    if a database-access error occurs.

getShort

     public abstract short getShort(int parameterIndex) throws SQLException

  Get the value of a SMALLINT parameter as a Java short.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is 0
  Throws: SQLException
    if a database-access error occurs.

getInt

     public abstract int getInt(int parameterIndex) throws SQLException

  Get the value of an INTEGER parameter as a Java int.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is 0
  Throws: SQLException
    if a database-access error occurs.

getLong

     public abstract long getLong(int parameterIndex) throws SQLException

  Get the value of a BIGINT parameter as a Java long.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is 0
  Throws: SQLException
    if a database-access error occurs.

getFloat

     public abstract float getFloat(int parameterIndex) throws SQLException

  Get the value of a FLOAT parameter as a Java float.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is 0
  Throws: SQLException
    if a database-access error occurs.

getDouble

     public abstract double getDouble(int parameterIndex) throws SQLException

  Get the value of a DOUBLE parameter as a Java double.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is 0
  Throws: SQLException
    if a database-access error occurs.

getBigDecimal

     public abstract BigDecimal getBigDecimal(int parameterIndex,
                                              int scale) throws SQLException

  Get the value of a NUMERIC parameter as a java.math.BigDecimal object.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
    scale - a value greater than or equal to zero representing the desired number of digits to the right of the decimal point
  Returns:
    the parameter value; if the value is SQL NULL, the result is null
  Throws: SQLException
    if a database-access error occurs.

getBytes

     public abstract byte[] getBytes(int parameterIndex) throws SQLException

  Get the value of a SQL BINARY or VARBINARY parameter as a Java byte[]

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is null
  Throws: SQLException
    if a database-access error occurs.

getDate

     public abstract Date getDate(int parameterIndex) throws SQLException

  Get the value of a SQL DATE parameter as a java.sql.Date object

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is null
  Throws: SQLException
    if a database-access error occurs.

getTime

     public abstract Time getTime(int parameterIndex) throws SQLException

  Get the value of a SQL TIME parameter as a java.sql.Time object.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is null
  Throws: SQLException
    if a database-access error occurs.

getTimestamp

     public abstract Timestamp getTimestamp(int parameterIndex) throws SQLException

  Get the value of a SQL TIMESTAMP parameter as a java.sql.Timestamp object.

  Parameters:
    parameterIndex - the first parameter is 1, the second is 2, ...
  Returns:
    the parameter value; if the value is SQL NULL, the result is null
  Throws: SQLException
    if a database-access error occurs.

getObject

     public abstract Object getObject(int parameterIndex) throws SQLException

  Get the value of a parameter as a Java object.

  This method returns a Java object whose type coresponds to the SQL type that was registered for this parameter using registerOutParameter.

  Note that this method may be used to read datatabase-specific, abstract data types. This is done by specifying a targetSqlType of java.sql.types.OTHER, which allows the driver to return a database-specific Java type.

  Parameters:
    parameterIndex - The first parameter is 1, the second is 2, ...
  Returns:
    A java.lang.Object holding the OUT parameter value.
  Throws: SQLException
    if a database-access error occurs.
  See Also:
    Types

    All Packages  Class Hierarchy  This Package  Previous  Next  Index

Submit a bug or feature - Version 1.1.8 of Java Platform API Specification
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1995-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.