Package oracle.jdbc

Interface OracleCallableStatement

All Superinterfaces:
AutoCloseable, CallableStatement, OracleCommonPreparedStatement, OracleCommonStatement, OraclePreparedStatement, OracleStatement, PreparedStatement, Statement, Wrapper

public interface OracleCallableStatement extends CallableStatement, OraclePreparedStatement
This interface extends the OraclePreparedStatement (which extends the OracleStatement interface) and incorporates standard JDBC callable statement functionality. It is used to execute SQL stored procedure.

Oracle JDBC drivers support execution of PL/SQL stored procedures and anonymous blocks. They support both SQL92 escape syntax and Oracle PL/SQL block syntax. The following PL/SQL calls would work with any Oracle JDBC driver:

  // SQL92 syntax
  CallableStatement cs1 = conn.prepareCall
  ( "{call proc (?,?)}" ) ; // stored proc
  CallableStatement cs2 = conn.prepareCall
  ( "{? = call func (?,?)}" ) ; // stored func
  // Oracle PL/SQL block syntax
  CallableStatement cs3 = conn.prepareCall
  ( "begin proc (?,?); end;" ) ; // stored proc
  CallableStatement cs4 = conn.prepareCall
  ( "begin ? := func(?,?); end;" ) ; // stored func
  

As an example of using Oracle syntax, here is a PL/SQL code snippet that creates a stored function. The PL/SQL function gets a character sequence and concatenates a suffix to it:

  create or replace function foo (val1 char)
  return char as
  begin
  return val1 || 'suffix';
  end;
  

Your invocation call in your JDBC program should look like:

  Connection conn = DriverManager.getConnection
  ("jdbc:oracle:oci8:@", "scott", "tiger");
  CallableStatement cs = conn.prepareCall ("begin ? := foo(?); end;");
  cs.registerOutParameter(1,Types.CHAR);
  cs.setString(2, "aa");
  cs.executeUpdate();
  String result = cs.getString(1);
  
Since:
8.1.7
See Also:
  • Method Details

    • getARRAY

      ARRAY getARRAY(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.ARRAY object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an ARRAY
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getAsciiStream

      InputStream getAsciiStream(int parameterIndex) throws SQLException
      Retrieves data into an java.io.InputStream object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an java.io.InputStream
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getBFILE

      BFILE getBFILE(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.BFILE object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.BFILE
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getBfile

      BFILE getBfile(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.BFILE object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.BFILE
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getBinaryStream

      InputStream getBinaryStream(int parameterIndex) throws SQLException
      Retrieves data into an java.io.InputStream object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an java.io.InputStream
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getBinaryStream

      InputStream getBinaryStream(String parameterName) throws SQLException
      Retrieves data into an java.io.InputStream object.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      Returns:
      data into an java.io.InputStream
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getBLOB

      BLOB getBLOB(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.BLOB object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.BLOB
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getCHAR

      CHAR getCHAR(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.CHAR object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.CHAR
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getCharacterStream

      Reader getCharacterStream(int parameterIndex) throws SQLException
      Retrieves data into an java.io.Reader object.
      Specified by:
      getCharacterStream in interface CallableStatement
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an java.io.Reader
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getCLOB

      CLOB getCLOB(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.CLOB object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.CLOB
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getCursor

      ResultSet getCursor(int parameterIndex) throws SQLException
      Retrieves data into an java.sql.ResultSet object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an java.sql.ResultSet
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getCustomDatum

      Object getCustomDatum(int parameterIndex, CustomDatumFactory factory) throws SQLException
      Deprecated.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      factory -
      Returns:
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getORAData

      Object getORAData(int parameterIndex, ORADataFactory factory) throws SQLException
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      factory -
      Returns:
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getObject

      Object getObject(int parameterIndex, OracleDataFactory factory) throws SQLException
      Returns an instance of OracleData, which is returned by the factory's "create" method
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      factory -
      Returns:
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getAnyDataEmbeddedObject

      Object getAnyDataEmbeddedObject(int parameterIndex) throws SQLException
      Deprecated.
      As of Oracle 11R1 there is full support for ANYTYPE and ANYDATA. Please use oracle.sql.ANYDATA for new code and plan on replacing any use of this method by the next major release. Note that in 11R1 this method is reimplemented using the ANYDATA support and will now also function in all the drivers, not just oci. In the previous implementation it was possible to call registerOutParameter with a sqlType of either oracle.jdbc.OracleTypes.OPAQUE or oracle.jdbc.OracleTypes.STRUCT The new implementation requires the correct type which is OPAQUE.
      Retrieves data of an embedded object within AnyData
      Parameters:
      parameterIndex - the first parameter is 1
      Returns:
      data depending on the embedded type in AnyData
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getDATE

      DATE getDATE(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.DATE object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.DATE
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getNUMBER

      NUMBER getNUMBER(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.NUMBER object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.NUMBER
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getOPAQUE

      OPAQUE getOPAQUE(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.OPAQUE object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.OPAQUE
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getOracleObject

      Datum getOracleObject(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.Datum object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.Datum
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getRAW

      RAW getRAW(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.RAW object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.RAW
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getREF

      REF getREF(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.REF object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.REF
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getROWID

      ROWID getROWID(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.ROWID object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.ROWID
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getSTRUCT

      STRUCT getSTRUCT(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.STRUCT object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.STRUCT
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getINTERVALYM

      INTERVALYM getINTERVALYM(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.INTERVALYM object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.INTERVALYM
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
      Since:
      9i
    • getINTERVALDS

      INTERVALDS getINTERVALDS(int parameterIndex) throws SQLException
      Retrieves data into an oracle.sql.INTERVALDS object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.INTERVALDS
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
      Since:
      10i
    • getTIMESTAMP

      TIMESTAMP getTIMESTAMP(int paramIdx) throws SQLException
      Retrieves data into an oracle.sql.TIMESTAMP object.
      Parameters:
      paramIdx - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.TIMESTAMP
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
      Since:
      9i
    • getTIMESTAMPTZ

      TIMESTAMPTZ getTIMESTAMPTZ(int paramIdx) throws SQLException
      Retrieves data into an oracle.sql.TIMESTAMPTZ object.
      Parameters:
      paramIdx - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.TIMESTAMPTZ
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
      Since:
      9i
    • getTIMESTAMPLTZ

      TIMESTAMPLTZ getTIMESTAMPLTZ(int paramIdx) throws SQLException
      Retrieves data into an oracle.sql.TIMESTAMPLTZ object.
      Parameters:
      paramIdx - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an oracle.sql.TIMESTAMPLTZ
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
      Since:
      9i
    • getUnicodeStream

      InputStream getUnicodeStream(int parameterIndex) throws SQLException
      Retrieves data into an java.io.InputStream object.
      Parameters:
      parameterIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      data into an java.io.InputStream
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getUnicodeStream

      InputStream getUnicodeStream(String parameterName) throws SQLException
      Retrieves data into an java.io.InputStream object.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      Returns:
      data into an java.io.InputStream
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • registerOutParameter

      void registerOutParameter(int paramIndex, int sqlType, int scale, int maxLength) throws SQLException
      Special Oracle version of registerOutParameter for registering CHAR, VARCHAR, LONG, RAW and LONG RAW columns. Depending on the value of OracleConnection.getDataSizeUnits(), maxLength will be measured in bytes or characters.
      Parameters:
      paramIndex - parameter index (the first parameter is 1).
      sqlType - type of the bind parameter
      scale - not used
      maxLength - maximum length of the column, specified in bytes or characters.
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • registerOutParameterBytes

      void registerOutParameterBytes(int paramIndex, int sqlType, int scale, int maxLength) throws SQLException
      Deprecated.
      As of Oracle 10g Release 1 all character values are measured in Java chars so this method is no longer supported. It now is the equivalent of calling registerOutParameter with the same args. Since the number of bytes is at least as large as the number of characters this will always work although it may waste memory. Use registerOutParameter with the number of Java chars instead.
      Special Oracle version of registerOutParameter for registering CHAR, VARCHAR, LONG, RAW and LONG RAW columns. This version accepts a maxLength parameter measured in bytes.

      Parameters:
      paramIndex - parameter index (the first parameter is 1).
      sqlType - type of the bind parameter
      scale - not used
      maxLength - maximum length of the column, specified in bytes. If not specified, maximum length allowed for that type is used.
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • registerOutParameterChars

      void registerOutParameterChars(int paramIndex, int sqlType, int scale, int maxLength) throws SQLException
      Deprecated.
      As of Oracle 10g Release 1 all character values are measured in Java chars so this method is no longer needed. Call registerOutParameter with the same args instead.
      Special Oracle version of registerOutParameter for registering CHAR, VARCHAR, LONG, RAW and LONG RAW columns. This version accepts a maxLength parameter measured in characters.

      Parameters:
      paramIndex - parameter index (the first parameter is 1).
      sqlType - type of the bind parameter
      scale - not used
      maxLength - maximum length of the column, specified in characters. If not specified, maximum length allowed for that type is used.
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
    • getPlsqlIndexTable

      @Deprecated Object getPlsqlIndexTable(int paramIndex) throws SQLException
      Deprecated.
      since 18.1. Use java.sql.CallableStatement.getObject(int parameterIndex) method.
      Get the value of a PLSQL Associative Array ( formerly known as index-by-table ) parameter as a Java array. The type of the Java array will be the default Java object type corresponding to the element's SQL type, following the mapping for built-in types specified in the JDBC spec.
      Parameters:
      paramIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      A java.lang.Object holding the parameter value.
      Throws:
      SQLException - if a database-access error occurs.
      SQLException - if an error occurs (conversion or database-access error)
      See Also:
    • getPlsqlIndexTable

      @Deprecated Object getPlsqlIndexTable(int paramIndex, Class<?> primitiveType) throws SQLException
      Deprecated.
      since 18.1. Use java.sql.CallableStatement.getObject(int parameterIndex, Class type) method.
      Get the value of a PLSQL Associative Array ( formerly known as index-by-table ) parameter as a primitive array. 'primitiveType' specifies the return array type.
      Parameters:
      paramIndex - the first parameter is 1, the second is 2, and so on
      primitiveType - is a primitive type class. For example,java.lang.Double.Type
      Returns:
      A java.lang.Object holding the parameter value.
      Throws:
      SQLException - if a database-access error occurs.
      SQLException - if an error occurs (conversion or database-access error)
      See Also:
    • getOraclePlsqlIndexTable

      @Deprecated Datum[] getOraclePlsqlIndexTable(int paramIndex) throws SQLException
      Deprecated.
      since 18.1 Use java.sql.CallableStatement.getObject(int parameterIndex) method.
      Get the value of a PLSQL Associative Array ( formerly known as index-by-table ) parameter as an oracle.sql.Datum array.
      Parameters:
      paramIndex - the first parameter is 1, the second is 2, and so on
      Returns:
      A Datum array holding the parameter value.
      Throws:
      SQLException - if a database-access error occurs.
      SQLException - if an error occurs (conversion or database-access error)
      See Also:
    • registerIndexTableOutParameter

      @Deprecated void registerIndexTableOutParameter(int paramIndex, int maxLen, int elemSqlType, int elemMaxLen) throws SQLException
      Deprecated.
      since 18.1. Use java.sql.CallableStatement.registerOutParameter (int parameterIndex, int sqlType, String typeName).
      Special Oracle version of registerOutParameter for registering a limited form of PL/SQL Associative Array parameters. Associative Arrays were formerly called index-by-tables. In PL/SQL they are arrays of key-value pairs where the keys may be numeric or string types and the values may be any scalar type. The keys may be sparse. See the PL/SQL manual. The database only exports a limited form of this to the client where the keys must be numeric, positive and dense and the values can be only numeric or string. This API is supported by the oci and thin driver It is also supported by the server side internal driver with a limitation on the element length for string of 1999 characters. For oci and thin this is the same as the database limitation of 32767 characters.
      Parameters:
      paramIndex - the first parameter is 1, the second is 2, and so on
      maxLen - the maximum possible number of elements.
      elemSqlType - index table element SQL type (as defined in java.sql.Types or OracleTypes).
      elemMaxLen - maximum length of the element. If not specified, maximum length allowed for that type is used.
      Throws:
      SQLException - if sqlType is invalid, or an error occurred.
      Since:
      8.1.7
    • setBinaryFloat

      void setBinaryFloat(String parameterName, BINARY_FLOAT x) throws SQLException
      Sets the designated parameter to the given oracle.sql.BINARY_FLOAT value.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      10.0
      See Also:
    • setBinaryDouble

      void setBinaryDouble(String parameterName, BINARY_DOUBLE x) throws SQLException
      Sets the designated parameter to the given oracle.sql.BINARY_FLOAT value.
      Parameters:
      parameterName - name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      10.0
      See Also:
    • setStringForClob

      void setStringForClob(String parameterName, String x) throws SQLException
      Sets the designated parameter to the given Java 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. If the string is larger than 32765 it is converted to a temporary clob and that is sent to the database. This clob conversion produces data truncation for columns of type VARCHAR and LONGVARCHAR. This is wrong.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      10i Release 1
      See Also:
    • setBytesForBlob

      void setBytesForBlob(String parameterName, byte[] x) throws SQLException
      Sets the designated parameter to the given Java byte[] value. The driver converts this to an SQL BINARY or LONGBINARY CHECK THIS value (depending on the argument's size relative to the driver's limits on VARCHAR values) when it sends it to the database. If the byte array is larger than 32765 it is converted to a temporary blob and that is sent to the database. This blob conversion produces data truncation for columns of type BINARY..
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      10i Release 1
      See Also:
    • registerOutParameter

      void registerOutParameter(String parameterName, int sqlType, int scale, int maxLength) throws SQLException
      Special Oracle version of registerOutParameter for registering CHAR, VARCHAR, LONG, RAW and LONG RAW columns. Depending on the value of OracleConnection.getDataSizeUnits(), maxLength will be measured in bytes or characters.
      Parameters:
      parameterName - the name of the parameter
      sqlType - 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.
      maxLength - maximum length of the column, specified in bytes or characters.
      Throws:
      SQLException - if an error occurs (conversion or database-access error)
      Since:
      10i Release 1
    • setNull

      void setNull(String parameterName, int sqlType, String typeName) throws SQLException
      Sets the designated parameter to SQL 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.

      Specified by:
      setNull in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      sqlType - a value from java.sql.Types
      typeName - the fully-qualified name of an SQL user-defined type; ignored if the parameter is not a user-defined type or SQL REF value
      Throws:
      SQLException - if a database access error occurs
      Since:
      10i Release 1
    • setNull

      void setNull(String parameterName, int sqlType) throws SQLException
      Sets the designated parameter to SQL NULL.

      Note: You must specify the parameter's SQL type.

      Specified by:
      setNull in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      sqlType - the SQL type code defined in java.sql.Types
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
    • setBoolean

      void setBoolean(String parameterName, boolean x) throws SQLException
      Sets the designated parameter to the given Java boolean value. The driver converts this to an SQL BIT value when it sends it to the database.
      Specified by:
      setBoolean in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setByte

      void setByte(String parameterName, byte x) throws SQLException
      Sets the designated parameter to the given Java byte value. The driver converts this to an SQL TINYINT value when it sends it to the database.
      Specified by:
      setByte in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setShort

      void setShort(String parameterName, short x) throws SQLException
      Sets the designated parameter to the given Java short value. The driver converts this to an SQL SMALLINT value when it sends it to the database.
      Specified by:
      setShort in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setInt

      void setInt(String parameterName, int x) throws SQLException
      Sets the designated parameter to the given Java int value. The driver converts this to an SQL INTEGER value when it sends it to the database.
      Specified by:
      setInt in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setLong

      void setLong(String parameterName, long x) throws SQLException
      Sets the designated parameter to the given Java long value. The driver converts this to an SQL BIGINT value when it sends it to the database.
      Specified by:
      setLong in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setFloat

      void setFloat(String parameterName, float x) throws SQLException
      Sets the designated parameter to the given Java float value. The driver converts this to an SQL FLOAT value when it sends it to the database.
      Specified by:
      setFloat in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setBinaryFloat

      void setBinaryFloat(String parameterName, float x) throws SQLException
      Sets the designated parameter to the given Java float value. The driver converts this to an SQL BINARY_FLOAT value when it sends it to the database.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      10.0
      See Also:
    • setBinaryDouble

      void setBinaryDouble(String parameterName, double x) throws SQLException
      Sets the designated parameter to the given oracle.sql.BINARY_FLOAT value.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      10.0
      See Also:
    • setDouble

      void setDouble(String parameterName, double x) throws SQLException
      Sets the designated parameter to the given Java double value. The driver converts this to an SQL DOUBLE value when it sends it to the database.
      Specified by:
      setDouble in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setBigDecimal

      void setBigDecimal(String parameterName, BigDecimal x) throws SQLException
      Sets the designated parameter to the given java.math.BigDecimal value. The driver converts this to an SQL NUMERIC value when it sends it to the database.
      Specified by:
      setBigDecimal in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setString

      void setString(String parameterName, String x) throws SQLException
      Sets the designated parameter to the given Java 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.
      Specified by:
      setString in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setFixedCHAR

      void setFixedCHAR(String parameterName, String x) throws SQLException
      Sets the designated parameter to a String See the javadoc for the setFixedChar(int, String) method in OraclePreparedStatement. Note that PL/SQL comparison operators do provide blank padding.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setCursor

      void setCursor(String parameterName, ResultSet x) throws SQLException
      Sets the designated parameter to a Java Cursor value.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setROWID

      void setROWID(String parameterName, ROWID x) throws SQLException
      Sets the designated parameter to an oracle.sql.ROWIDvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setRAW

      void setRAW(String parameterName, RAW x) throws SQLException
      Sets the designated parameter to an oracle.sql.RAWvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setCHAR

      void setCHAR(String parameterName, CHAR x) throws SQLException
      Sets the designated parameter to an oracle.sql.CHARvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setDATE

      void setDATE(String parameterName, DATE x) throws SQLException
      Sets the designated parameter to an oracle.sql.DATEvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setNUMBER

      void setNUMBER(String parameterName, NUMBER x) throws SQLException
      Sets the designated parameter to an oracle.sql.NUMBERvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setBLOB

      void setBLOB(String parameterName, BLOB x) throws SQLException
      Sets the designated parameter to an oracle.sql.BLOBvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setBlob

      void setBlob(String parameterName, Blob x) throws SQLException
      Sets the designated parameter to an java.sql.Blobvalue.
      Specified by:
      setBlob in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setCLOB

      void setCLOB(String parameterName, CLOB x) throws SQLException
      Sets the designated parameter to an oracle.sql.CLOBvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setClob

      void setClob(String parameterName, Clob x) throws SQLException
      Sets the designated parameter to an java.sql.Clobvalue.
      Specified by:
      setClob in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setBFILE

      void setBFILE(String parameterName, BFILE x) throws SQLException
      Sets the designated parameter to an oracle.sql.BFILEvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setBfile

      void setBfile(String parameterName, BFILE x) throws SQLException
      Sets the designated parameter to an oracle.sql.BFILEvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setBytes

      void setBytes(String parameterName, byte[] x) throws SQLException
      Sets the designated parameter to the given Java array of bytes. The driver converts this to an SQL 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.
      Specified by:
      setBytes in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setDate

      void setDate(String parameterName, Date x) throws SQLException
      Sets the designated parameter to the given java.sql.Date value. The driver converts this to an SQL DATE value when it sends it to the database.
      Specified by:
      setDate in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setTime

      void setTime(String parameterName, Time x) throws SQLException
      Sets the designated parameter to the given java.sql.Time value. The driver converts this to an SQL TIME value when it sends it to the database.
      Specified by:
      setTime in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setTimestamp

      void setTimestamp(String parameterName, Timestamp x) throws SQLException
      Sets the designated parameter to the given java.sql.Timestamp value. The driver converts this to an SQL TIMESTAMP value when it sends it to the database.
      Specified by:
      setTimestamp in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setINTERVALYM

      void setINTERVALYM(String parameterName, INTERVALYM x) throws SQLException
      Sets the designated parameter to an oracle.sql.INTERVALYMvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setINTERVALDS

      void setINTERVALDS(String parameterName, INTERVALDS x) throws SQLException
      Sets the designated parameter to an oracle.sql.INTERVALDSvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setTIMESTAMP

      void setTIMESTAMP(String parameterName, TIMESTAMP x) throws SQLException
      Sets the designated parameter to an oracle.sql.TIMESTAMPvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setTIMESTAMPTZ

      void setTIMESTAMPTZ(String parameterName, TIMESTAMPTZ x) throws SQLException
      Sets the designated parameter to an oracle.sql.TIMESTAMPTZvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setTIMESTAMPLTZ

      void setTIMESTAMPLTZ(String parameterName, TIMESTAMPLTZ x) throws SQLException
      Sets the designated parameter to an oracle.sql.TIMESTAMPLTZvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setAsciiStream

      void setAsciiStream(String parameterName, InputStream x, int y) throws SQLException
      Sets the designated parameter to the given input stream, which will have the specified number of bytes. When a very large ASCII value is input to a 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.

      Specified by:
      setAsciiStream in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the Java input stream that contains the ASCII parameter value
      y - the number of bytes in the stream
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
    • setBinaryStream

      void setBinaryStream(String parameterName, InputStream x, int y) throws SQLException
      Sets the designated parameter to the given input stream, which will have the specified number of bytes. When a very large binary value is input to a 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.

      Specified by:
      setBinaryStream in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the java input stream which contains the binary parameter value
      y - the number of bytes in the stream
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
    • setUnicodeStream

      void setUnicodeStream(String parameterName, InputStream x, int y) throws SQLException
      Sets the designated parameter to a Java UnicodeStream value.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the java input stream which contains the binary parameter value
      y - the number of bytes in the stream
      Throws:
      SQLException - if a database access error occurs
    • setCharacterStream

      void setCharacterStream(String parameterName, Reader x, int y) throws SQLException
      Sets the designated parameter to the given 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.

      Specified by:
      setCharacterStream in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the java.io.Reader object that contains the UNICODE data used as the designated parameter
      y - the number of characters in the stream
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
    • setDate

      void setDate(String parameterName, Date x, Calendar cal) throws SQLException
      Sets the designated parameter to the given 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 a Calendar object, the driver can calculate the date taking into account a custom time zone. If no Calendar object is specified, the driver uses the default time zone, which is that of the virtual machine running the application.
      Specified by:
      setDate in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      cal - the Calendar object the driver will use to construct the date
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setTime

      void setTime(String parameterName, Time x, Calendar cal) throws SQLException
      Sets the designated parameter to the given 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 a Calendar object, the driver can calculate the time taking into account a custom time zone. If no Calendar object is specified, the driver uses the default time zone, which is that of the virtual machine running the application.
      Specified by:
      setTime in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      cal - the Calendar object the driver will use to construct the time
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setTimestamp

      void setTimestamp(String parameterName, Timestamp x, Calendar cal) throws SQLException
      Sets the designated parameter to the given 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 a Calendar object, the driver can calculate the timestamp taking into account a custom time zone. If no Calendar object is specified, the driver uses the default time zone, which is that of the virtual machine running the application.
      Specified by:
      setTimestamp in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      cal - the Calendar object the driver will use to construct the timestamp
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setURL

      void setURL(String parameterName, URL x) throws SQLException
      Sets the designated parameter to the given java.net.URL object. The driver converts this to an SQL DATALINK value when it sends it to the database.
      Specified by:
      setURL in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs, or if a URL is malformed
      Since:
      9.0.2
      See Also:
    • setArray

      void setArray(String parameterName, Array x) throws SQLException
      Sets the designated parameter to an java.sql.Arrayvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setARRAY

      void setARRAY(String parameterName, ARRAY x) throws SQLException
      Sets the designated parameter to an oracle.sql.ARRAYvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setOPAQUE

      void setOPAQUE(String parameterName, OPAQUE x) throws SQLException
      Sets the designated parameter to an oracle.sql.OPAQUEvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setStructDescriptor

      void setStructDescriptor(String parameterName, StructDescriptor x) throws SQLException
      Throws:
      SQLException
    • setSTRUCT

      void setSTRUCT(String parameterName, STRUCT x) throws SQLException
      Sets the designated parameter to an oracle.sql.STRUCTvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setCustomDatum

      void setCustomDatum(String parameterName, CustomDatum x) throws SQLException
      Sets the designated parameter to an oracle.sql.CustomDatumvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setORAData

      void setORAData(String parameterName, ORAData x) throws SQLException
      Sets the designated parameter to an oracle.sql.ORADatavalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setObject

      void setObject(String parameterName, 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.

      Specified by:
      setObject in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the object containing the input parameter value
      targetSqlType - 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.
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setObject

      void setObject(String parameterName, Object x, int y) throws SQLException
      Sets the value of the designated parameter with the given object. This method is like the method setObject above, except that it assumes a scale of zero.
      Specified by:
      setObject in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the object containing the input parameter value
      y - the SQL type (as defined in java.sql.Types) to be sent to the database
      Throws:
      SQLException - if a database access error occurs
      Since:
      9.0.2
      See Also:
    • setRefType

      void setRefType(String parameterName, REF x) throws SQLException
      Sets the designated parameter to an oracle.sql.REFvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setRef

      void setRef(String parameterName, Ref x) throws SQLException
      Sets the designated parameter to an jdbc.sql.Refvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setREF

      void setREF(String parameterName, REF x) throws SQLException
      Sets the designated parameter to an oracle.sql.REFvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • setObject

      void setObject(String parameterName, Object x) throws SQLException
      Sets the value of the designated parameter with 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 database- 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.

      Specified by:
      setObject in interface CallableStatement
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the object containing the input parameter value
      Throws:
      SQLException - if a database access error occurs or if the given Object parameter is ambiguous
      Since:
      9.0.2
      See Also:
    • setOracleObject

      void setOracleObject(String parameterName, Datum x) throws SQLException
      Sets the designated parameter to an oracle.sql.Datumvalue.
      Parameters:
      parameterName - the name of the stored procedure formal parameter
      x - the parameter value
      Throws:
      SQLException - if a database access error occurs
    • registerOutParameterAtName

      void registerOutParameterAtName(String parameterMarkerName, int sqlType) throws SQLException
      Special Oracle method to registerOutParameter by the parameterMarkerName of oracle style parameter markers instead of parameterIndex. Please note that it takes the name of the parameter marker and not the name of the parameter.
      Parameters:
      parameterMarkerName - The name of the oracle style parameter marker
      sqlType - a value from Types
      Throws:
      SQLException
    • registerOutParameterAtName

      void registerOutParameterAtName(String parameterMarkerName, int sqlType, int scale) throws SQLException
      Special Oracle method to registerOutParameter by the parameterMarkerName of oracle style parameter markers instead of parameterIndex. Please note that it takes the name of the parameter marker and not the name of the parameter.
      Parameters:
      parameterMarkerName - The name of the oracle style parameter marker
      sqlType - a value from Types
      scale - the desired number of digits to the right of the decimal point. It must be greater than or equal to zero.
      Throws:
      SQLException
    • registerOutParameterAtName

      void registerOutParameterAtName(String parameterMarkerName, int sqlType, String typeName) throws SQLException
      Special Oracle method to registerOutParameter by the parameterMarkerName of oracle style parameter markers instead of parameterIndex. Please note that it takes the name of the parameter marker and not the name of the parameter.
      Parameters:
      parameterMarkerName - The name of the oracle style parameter marker
      sqlType - a value from Types
      typeName - the fully-qualified name of an SQL structured type
      Throws:
      SQLException