# Class CallableFunctionStatement

java.lang.Object
org.mariadb.jdbc.MariaDbStatement
org.mariadb.jdbc.BasePrepareStatement
org.mariadb.jdbc.ClientSidePreparedStatement
org.mariadb.jdbc.CallableFunctionStatement

All Implemented Interfaces:
  `AutoCloseable, Cloneable, CallableStatement, PreparedStatement, Statement, Wrapper`

Direct Known Subclasses:
  `MariaDbFunctionStatement`

public abstract class CallableFunctionStatement extends ClientSidePreparedStatement implements CallableStatement

## Field Summary

Fields
Modifier and Type
Field
Description
`protected CallableParameterMetaData`
`parameterMetadata`

### Fields inherited from class BasePrepareStatement

`autoGeneratedKeys, SPEC_ISO_ZONED_DATE_TIME`

### Fields inherited from class MariaDbStatement

`canUseServerTimeout, closed, connection, exceptionFactory, executing, fetchSize, lock, maxRows, options, protocol, queryTimeout, results, resultSetConcurrency, resultSetScrollType`

### Fields inherited from interface Statement

`CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO`

## Constructor Summary

Constructors
Constructor
Description
`CallableFunctionStatement(MariaDbConnection connection, String sql, int resultSetType, int resultSetConcurrency, ExceptionFactory exceptionFactory, String databaseName, String functionName)`
Constructor for getter/setter of callableStatement.

## Method Summary

Modifier and Type
Method
Description
`CallableFunctionStatement`
`clone(MariaDbConnection connection)`
Clone data.
`Array`
`getArray(int parameterIndex)`
`Array`
`getArray(String parameterName)`
`BigDecimal`
`getBigDecimal(int parameterIndex)`
`BigDecimal`
`getBigDecimal(int parameterIndex, int scale)`
Deprecated.
`BigDecimal`
`getBigDecimal(String parameterName)`
`Blob`
`getBlob(int parameterIndex)`
`Blob`
`getBlob(String parameterName)`
`boolean`
`getBoolean(int parameterIndex)`
`boolean`
`getBoolean(String parameterName)`
`byte`
`getByte(int parameterIndex)`
`byte`
`getByte(String parameterName)`
`byte[]`
`getBytes(int parameterIndex)`
`byte[]`
`getBytes(String parameterName)`
`Reader`
`getCharacterStream(int parameterIndex)`
`Reader`
`getCharacterStream(String parameterName)`
`Clob`
`getClob(int parameterIndex)`
`Clob`
`getClob(String parameterName)`
`Date`
`getDate(int parameterIndex)`
`Date`
`getDate(int parameterIndex, Calendar cal)`
`Date`
`getDate(String parameterName)`
`Date`
`getDate(String parameterName, Calendar cal)`
`double`
`getDouble(int parameterIndex)`
`double`
`getDouble(String parameterName)`
`float`
`getFloat(int parameterIndex)`
`float`
`getFloat(String parameterName)`
`int`
`getInt(int parameterIndex)`
`int`
`getInt(String parameterName)`
`long`
`getLong(int parameterIndex)`
`long`
`getLong(String parameterName)`
`Reader`
`getNCharacterStream(int parameterIndex)`
`Reader`
`getNCharacterStream(String parameterName)`
`NClob`
`getNClob(int parameterIndex)`
`NClob`
`getNClob(String parameterName)`
`String`
`getNString(int parameterIndex)`
`String`
`getNString(String parameterName)`
`Object`
`getObject(int parameterIndex)`
`<T> T`
`getObject(int parameterIndex, Class<T> type)`
`Object`
`getObject(int parameterIndex, Map<String,Class<?>> map)`
`Object`
`getObject(String parameterName)`
`<T> T`
`getObject(String parameterName, Class<T> type)`
`Object`
`getObject(String parameterName, Map<String,Class<?>> map)`
`ParameterMetaData`
`getParameterMetaData()`
Retrieves the number, types and properties of this `PreparedStatement` object's parameters.
`Ref`
`getRef(int parameterIndex)`
`Ref`
`getRef(String parameterName)`
`protected abstract SelectResultSet`
`getResult()`
`RowId`
`getRowId(int parameterIndex)`
`RowId`
`getRowId(String parameterName)`
`short`
`getShort(int parameterIndex)`
`short`
`getShort(String parameterName)`
`SQLXML`
`getSQLXML(int parameterIndex)`
`SQLXML`
`getSQLXML(String parameterName)`
`String`
`getString(int parameterIndex)`
`String`
`getString(String parameterName)`
`Time`
`getTime(int parameterIndex)`
`Time`
`getTime(int parameterIndex, Calendar cal)`
`Time`
`getTime(String parameterName)`
`Time`
`getTime(String parameterName, Calendar cal)`
`Timestamp`
`getTimestamp(int parameterIndex)`
`Timestamp`
`getTimestamp(int parameterIndex, Calendar cal)`
`Timestamp`
`getTimestamp(String parameterName)`
`Timestamp`
`getTimestamp(String parameterName, Calendar cal)`
`URL`
`getURL(int parameterIndex)`
`URL`
`getURL(String parameterName)`
`void`
`initFunctionData(int parametersCount)`
Data initialisation when parameterCount is defined.
`void`
`registerOutParameter(int parameterIndex, int sqlType)`
`void`
`registerOutParameter(int parameterIndex, int sqlType, int scale)`
Registers the parameter in ordinal position `parameterIndex` to be of JDBC type `sqlType`.
`void`
`registerOutParameter(int parameterIndex, int sqlType, String typeName)`
Registers the designated output parameter.
`void`
`registerOutParameter(int parameterIndex, SQLType sqlType)`
`void`
`registerOutParameter(int parameterIndex, SQLType sqlType, int scale)`
`void`
`registerOutParameter(int parameterIndex, SQLType sqlType, String typeName)`
`void`
`registerOutParameter(String parameterName, int sqlType)`
`void`
`registerOutParameter(String parameterName, int sqlType, int scale)`
`void`
`registerOutParameter(String parameterName, int sqlType, String typeName)`
`void`
`registerOutParameter(String parameterName, SQLType sqlType)`
`void`
`registerOutParameter(String parameterName, SQLType sqlType, int scale)`
`void`
`registerOutParameter(String parameterName, SQLType sqlType, String typeName)`
`void`
`setAsciiStream(String parameterName, InputStream inputStream)`
`void`
`setAsciiStream(String parameterName, InputStream inputStream, int length)`
`void`
`setAsciiStream(String parameterName, InputStream inputStream, long length)`
`void`
`setBigDecimal(String parameterName, BigDecimal bigDecimal)`
`void`
`setBinaryStream(String parameterName, InputStream inputStream)`
`void`
`setBinaryStream(String parameterName, InputStream inputStream, int length)`
`void`
`setBinaryStream(String parameterName, InputStream inputStream, long length)`
`void`
`setBlob(String parameterName, InputStream inputStream)`
`void`
`setBlob(String parameterName, InputStream inputStream, long length)`
`void`
`setBlob(String parameterName, Blob blob)`
`void`
`setBoolean(String parameterName, boolean booleanValue)`
`void`
`setByte(String parameterName, byte byteValue)`
`void`
`setBytes(String parameterName, byte[] bytes)`
`void`
`setCharacterStream(String parameterName, Reader reader)`
`void`
`setCharacterStream(String parameterName, Reader reader, int length)`
`void`
`setCharacterStream(String parameterName, Reader reader, long length)`
`void`
`setClob(String parameterName, Reader reader)`
`void`
`setClob(String parameterName, Reader reader, long length)`
`void`
`setClob(String parameterName, Clob clob)`
`void`
`setDate(String parameterName, Date date)`
`void`
`setDate(String parameterName, Date date, Calendar cal)`
`void`
`setDouble(String parameterName, double doubleValue)`
`void`
`setFloat(String parameterName, float floatValue)`
`void`
`setInt(String parameterName, int intValue)`
`void`
`setLong(String parameterName, long longValue)`
`void`
`setNCharacterStream(String parameterName, Reader reader)`
`void`
`setNCharacterStream(String parameterName, Reader reader, long length)`
`void`
`setNClob(String parameterName, Reader reader)`
`void`
`setNClob(String parameterName, Reader reader, long length)`
`void`
`setNClob(String parameterName, NClob value)`
`void`
`setNString(String parameterName, String value)`
`void`
`setNull(String parameterName, int sqlType)`
`void`
`setNull(String parameterName, int sqlType, String typeName)`
`void`
`setObject(String parameterName, Object obj)`
`void`
`setObject(String parameterName, Object obj, int targetSqlType)`
`void`
`setObject(String parameterName, Object obj, int targetSqlType, int scale)`
`void`
`setObject(String parameterName, Object obj, SQLType targetSqlType)`
`void`
`setObject(String parameterName, Object obj, SQLType targetSqlType, int scaleOrLength)`
`void`
`setRowId(String parameterName, RowId rowid)`
`void`
`setShort(String parameterName, short shortValue)`
`void`
`setSQLXML(String parameterName, SQLXML xmlObject)`
`void`
`setString(String parameterName, String stringValue)`
`void`
`setTime(String parameterName, Time time)`
`void`
`setTime(String parameterName, Time time, Calendar cal)`
`void`
`setTimestamp(String parameterName, Timestamp timestamp)`
`void`
`setTimestamp(String parameterName, Timestamp timestamp, Calendar cal)`
`void`
`setURL(String parameterName, URL url)`
`boolean`
`wasNull()`

### Methods inherited from class ClientSidePreparedStatement

`addBatch, addBatch, clearBatch, clearParameters, close, execute, executeBatch, executeInternal, executeLargeBatch, executeQuery, executeUpdate, getMetaData, getParameterCount, getPrepareResult, getServerUpdateCounts, setParameter, toString`

### Methods inherited from class BasePrepareStatement

`executeLargeUpdate, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setNull, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setRef, setRowId, setShort, setSQLXML, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURL`

### Methods inherited from class MariaDbStatement

`cancel, checkClose, checkCloseOnCompletion, clearWarnings, closeOnCompletion, enquoteIdentifier, enquoteLiteral, enquoteNCharLiteral, execute, execute, execute, execute, executeBatchEpilogue, executeBatchExceptionEpilogue, executeEpilogue, executeExceptionEpilogue, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeQuery, executeQueryPrologue, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getTimeoutSql, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, isSimpleIdentifier, isWrapperFor, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setLocalInfileInputStream, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout, setTimerTask, skipMoreResults, testExecute, unwrap`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface PreparedStatement

`addBatch, clearParameters, execute, executeLargeUpdate, executeQuery, executeUpdate, getMetaData, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setRef, setRowId, setShort, setSQLXML, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURL`

### Methods inherited from interface Statement

`addBatch, cancel, clearBatch, clearWarnings, close, closeOnCompletion, enquoteIdentifier, enquoteLiteral, enquoteNCharLiteral, execute, execute, execute, execute, executeBatch, executeLargeBatch, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, isSimpleIdentifier, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout`

### Methods inherited from interface Wrapper

`isWrapperFor, unwrap`

## Field Details

### parameterMetadata

protected CallableParameterMetaData parameterMetadata

## Constructor Details

### CallableFunctionStatement

public CallableFunctionStatement(MariaDbConnection connection, String sql, int resultSetType, int resultSetConcurrency, ExceptionFactory exceptionFactory, String databaseName, String functionName) throws SQLException
Constructor for getter/setter of callableStatement.

Parameters:
  `connection` - current connection
  `sql` - query
  `resultSetType` - a result set type; one of `ResultSet.TYPE_FORWARD_ONLY`, `ResultSet.TYPE_SCROLL_INSENSITIVE`, or `ResultSet.TYPE_SCROLL_SENSITIVE`
  `resultSetConcurrency` - a concurrency type; one of `ResultSet.CONCUR_READ_ONLY` or `ResultSet.CONCUR_UPDATABLE`
  `exceptionFactory` - Exception factory
  `databaseName` - database name
  `functionName` - function name
Throws:
  `SQLException` - if clientPrepareStatement creation throw an exception

## Method Details

### clone

public CallableFunctionStatement clone(MariaDbConnection connection) throws CloneNotSupportedException
Clone data.

Overrides:
  `clone` in class `ClientSidePreparedStatement`
Parameters:
  `connection` - connection
Returns:
  Cloned .
Throws:
  `CloneNotSupportedException` - if any error occur.

### initFunctionData

public void initFunctionData(int parametersCount)
Data initialisation when parameterCount is defined.

Parameters:
  `parametersCount` - number of parameters

### getResult

protected abstract SelectResultSet getResult() throws SQLException

Throws:
  `SQLException`

### getParameterMetaData

public ParameterMetaData getParameterMetaData() throws SQLException
Description copied from class: `ClientSidePreparedStatement`
Retrieves the number, types and properties of this `PreparedStatement` object's parameters.

Specified by:
  `getParameterMetaData` in interface `PreparedStatement`
Overrides:
  `getParameterMetaData` in class `ClientSidePreparedStatement`
Returns:
  a `ParameterMetaData` object that contains information about the number, types and properties for each parameter marker of this `PreparedStatement` object
Throws:
  `SQLException` - if a database access error occurs or this method is called on a closed `PreparedStatement`
See Also:
  - `ParameterMetaData`

### wasNull

public boolean wasNull() throws SQLException

Specified by:
  `wasNull` in interface `CallableStatement`
Throws:
  `SQLException`

### getString

public String getString(int parameterIndex) throws SQLException

Specified by:
  `getString` in interface `CallableStatement`
Throws:
  `SQLException`

### getString

public String getString(String parameterName) throws SQLException

Specified by:
  `getString` in interface `CallableStatement`
Throws:
  `SQLException`

### getBoolean

public boolean getBoolean(int parameterIndex) throws SQLException

Specified by:
  `getBoolean` in interface `CallableStatement`
Throws:
  `SQLException`

### getBoolean

public boolean getBoolean(String parameterName) throws SQLException

Specified by:
  `getBoolean` in interface `CallableStatement`
Throws:
  `SQLException`

### getByte

public byte getByte(int parameterIndex) throws SQLException

Specified by:
  `getByte` in interface `CallableStatement`
Throws:
  `SQLException`

### getByte

public byte getByte(String parameterName) throws SQLException

Specified by:
  `getByte` in interface `CallableStatement`
Throws:
  `SQLException`

### getShort

public short getShort(int parameterIndex) throws SQLException

Specified by:
  `getShort` in interface `CallableStatement`
Throws:
  `SQLException`

### getShort

public short getShort(String parameterName) throws SQLException

Specified by:
  `getShort` in interface `CallableStatement`
Throws:
  `SQLException`

### getInt

public int getInt(String parameterName) throws SQLException

Specified by:
  `getInt` in interface `CallableStatement`
Throws:
  `SQLException`

### getInt

public int getInt(int parameterIndex) throws SQLException

Specified by:
  `getInt` in interface `CallableStatement`
Throws:
  `SQLException`

### getLong

public long getLong(String parameterName) throws SQLException

Specified by:
  `getLong` in interface `CallableStatement`
Throws:
  `SQLException`

### getLong

public long getLong(int parameterIndex) throws SQLException

Specified by:
  `getLong` in interface `CallableStatement`
Throws:
  `SQLException`

### getFloat

public float getFloat(String parameterName) throws SQLException

Specified by:
  `getFloat` in interface `CallableStatement`
Throws:
  `SQLException`

### getFloat

public float getFloat(int parameterIndex) throws SQLException

Specified by:
  `getFloat` in interface `CallableStatement`
Throws:
  `SQLException`

### getDouble

public double getDouble(int parameterIndex) throws SQLException

Specified by:
  `getDouble` in interface `CallableStatement`
Throws:
  `SQLException`

### getDouble

public double getDouble(String parameterName) throws SQLException

Specified by:
  `getDouble` in interface `CallableStatement`
Throws:
  `SQLException`

### getBigDecimal

@Deprecated public BigDecimal getBigDecimal(int parameterIndex, int scale) throws SQLException
Deprecated.

Specified by:
  `getBigDecimal` in interface `CallableStatement`
Throws:
  `SQLException`

### getBigDecimal

public BigDecimal getBigDecimal(int parameterIndex) throws SQLException

Specified by:
  `getBigDecimal` in interface `CallableStatement`
Throws:
  `SQLException`

### getBigDecimal

public BigDecimal getBigDecimal(String parameterName) throws SQLException

Specified by:
  `getBigDecimal` in interface `CallableStatement`
Throws:
  `SQLException`

### getBytes

public byte[] getBytes(String parameterName) throws SQLException

Specified by:
  `getBytes` in interface `CallableStatement`
Throws:
  `SQLException`

### getBytes

public byte[] getBytes(int parameterIndex) throws SQLException

Specified by:
  `getBytes` in interface `CallableStatement`
Throws:
  `SQLException`

### getDate

public Date getDate(int parameterIndex) throws SQLException

Specified by:
  `getDate` in interface `CallableStatement`
Throws:
  `SQLException`

### getDate

public Date getDate(String parameterName) throws SQLException

Specified by:
  `getDate` in interface `CallableStatement`
Throws:
  `SQLException`

### getDate

public Date getDate(String parameterName, Calendar cal) throws SQLException

Specified by:
  `getDate` in interface `CallableStatement`
Throws:
  `SQLException`

### getDate

public Date getDate(int parameterIndex, Calendar cal) throws SQLException

Specified by:
  `getDate` in interface `CallableStatement`
Throws:
  `SQLException`

### getTime

public Time getTime(int parameterIndex, Calendar cal) throws SQLException

Specified by:
  `getTime` in interface `CallableStatement`
Throws:
  `SQLException`

### getTime

public Time getTime(String parameterName) throws SQLException

Specified by:
  `getTime` in interface `CallableStatement`
Throws:
  `SQLException`

### getTime

public Time getTime(String parameterName, Calendar cal) throws SQLException

Specified by:
  `getTime` in interface `CallableStatement`
Throws:
  `SQLException`

### getTime

public Time getTime(int parameterIndex) throws SQLException

Specified by:
  `getTime` in interface `CallableStatement`
Throws:
  `SQLException`

### getTimestamp

public Timestamp getTimestamp(int parameterIndex) throws SQLException

Specified by:
  `getTimestamp` in interface `CallableStatement`
Throws:
  `SQLException`

### getTimestamp

public Timestamp getTimestamp(int parameterIndex, Calendar cal) throws SQLException

Specified by:
  `getTimestamp` in interface `CallableStatement`
Throws:
  `SQLException`

### getTimestamp

public Timestamp getTimestamp(String parameterName) throws SQLException

Specified by:
  `getTimestamp` in interface `CallableStatement`
Throws:
  `SQLException`

### getTimestamp

public Timestamp getTimestamp(String parameterName, Calendar cal) throws SQLException

Specified by:
  `getTimestamp` in interface `CallableStatement`
Throws:
  `SQLException`

### getObject

public Object getObject(int parameterIndex) throws SQLException

Specified by:
  `getObject` in interface `CallableStatement`
Throws:
  `SQLException`

### getObject

public Object getObject(String parameterName) throws SQLException

Specified by:
  `getObject` in interface `CallableStatement`
Throws:
  `SQLException`

### getObject

public Object getObject(int parameterIndex, Map<String,Class<?>> map) throws SQLException

Specified by:
  `getObject` in interface `CallableStatement`
Throws:
  `SQLException`

### getObject

public Object getObject(String parameterName, Map<String,Class<?>> map) throws SQLException

Specified by:
  `getObject` in interface `CallableStatement`
Throws:
  `SQLException`

### getObject

public <T> T getObject(int parameterIndex, Class<T> type) throws SQLException

Specified by:
  `getObject` in interface `CallableStatement`
Throws:
  `SQLException`

### getObject

public <T> T getObject(String parameterName, Class<T> type) throws SQLException

Specified by:
  `getObject` in interface `CallableStatement`
Throws:
  `SQLException`

### getRef

public Ref getRef(int parameterIndex) throws SQLException

Specified by:
  `getRef` in interface `CallableStatement`
Throws:
  `SQLException`

### getRef

public Ref getRef(String parameterName) throws SQLException

Specified by:
  `getRef` in interface `CallableStatement`
Throws:
  `SQLException`

### getBlob

public Blob getBlob(int parameterIndex) throws SQLException

Specified by:
  `getBlob` in interface `CallableStatement`
Throws:
  `SQLException`

### getBlob

public Blob getBlob(String parameterName) throws SQLException

Specified by:
  `getBlob` in interface `CallableStatement`
Throws:
  `SQLException`

### getClob

public Clob getClob(String parameterName) throws SQLException

Specified by:
  `getClob` in interface `CallableStatement`
Throws:
  `SQLException`

### getClob

public Clob getClob(int parameterIndex) throws SQLException

Specified by:
  `getClob` in interface `CallableStatement`
Throws:
  `SQLException`

### getArray

public Array getArray(String parameterName) throws SQLException

Specified by:
  `getArray` in interface `CallableStatement`
Throws:
  `SQLException`

### getArray

public Array getArray(int parameterIndex) throws SQLException

Specified by:
  `getArray` in interface `CallableStatement`
Throws:
  `SQLException`

### getURL

public URL getURL(int parameterIndex) throws SQLException

Specified by:
  `getURL` in interface `CallableStatement`
Throws:
  `SQLException`

### getURL

public URL getURL(String parameterName) throws SQLException

Specified by:
  `getURL` in interface `CallableStatement`
Throws:
  `SQLException`

### getRowId

public RowId getRowId(int parameterIndex) throws SQLException

Specified by:
  `getRowId` in interface `CallableStatement`
Throws:
  `SQLException`

### getRowId

public RowId getRowId(String parameterName) throws SQLException

Specified by:
  `getRowId` in interface `CallableStatement`
Throws:
  `SQLException`

### getNClob

public NClob getNClob(int parameterIndex) throws SQLException

Specified by:
  `getNClob` in interface `CallableStatement`
Throws:
  `SQLException`

### getNClob

public NClob getNClob(String parameterName) throws SQLException

Specified by:
  `getNClob` in interface `CallableStatement`
Throws:
  `SQLException`

### getSQLXML

public SQLXML getSQLXML(int parameterIndex) throws SQLException

Specified by:
  `getSQLXML` in interface `CallableStatement`
Throws:
  `SQLException`

### getSQLXML

public SQLXML getSQLXML(String parameterName) throws SQLException

Specified by:
  `getSQLXML` in interface `CallableStatement`
Throws:
  `SQLException`

### getNString

public String getNString(int parameterIndex) throws SQLException

Specified by:
  `getNString` in interface `CallableStatement`
Throws:
  `SQLException`

### getNString

public String getNString(String parameterName) throws SQLException

Specified by:
  `getNString` in interface `CallableStatement`
Throws:
  `SQLException`

### getNCharacterStream

public Reader getNCharacterStream(int parameterIndex) throws SQLException

Specified by:
  `getNCharacterStream` in interface `CallableStatement`
Throws:
  `SQLException`

### getNCharacterStream

public Reader getNCharacterStream(String parameterName) throws SQLException

Specified by:
  `getNCharacterStream` in interface `CallableStatement`
Throws:
  `SQLException`

### getCharacterStream

public Reader getCharacterStream(int parameterIndex) throws SQLException

Specified by:
  `getCharacterStream` in interface `CallableStatement`
Throws:
  `SQLException`

### getCharacterStream

public Reader getCharacterStream(String parameterName) throws SQLException

Specified by:
  `getCharacterStream` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

public void registerOutParameter(int parameterIndex, int sqlType, String typeName) throws SQLException
Registers the designated output parameter. This version of the method `registerOutParameter` should be used for a user-defined or `REF` output parameter. Examples of user-defined types include: `STRUCT`, `DISTINCT`, `JAVA_OBJECT`, and named array types.

All OUT parameters must be registered before a stored procedure is executed.

For a user-defined parameter, the fully-qualified SQL type name of the parameter should also be given, while a `REF` parameter requires that the fully-qualified type name of the referenced type be given. A JDBC driver that does not need the type code and type name information may ignore it. To be portable, however, applications should always provide these values for user-defined and `REF` parameters.

Although it is intended for user-defined and `REF` parameters, this method may be used to register a parameter of any JDBC type. If the parameter does not have a user-defined or `REF` type, the typeName parameter is ignored.

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

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Parameters:
  `parameterIndex` - the first parameter is 1, the second is 2,...
  `sqlType` - a value from `Types`
  `typeName` - the fully-qualified name of an SQL structured type
Throws:
  `SQLException` - if the parameterIndex is not valid; if a database access error occurs or this method is called on a closed `CallableStatement`
See Also:
  - `Types`

### registerOutParameter

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

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

public void registerOutParameter(int parameterIndex, int sqlType, int scale) throws SQLException
Registers the parameter in ordinal position `parameterIndex` to be of 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.

This version of `registerOutParameter` should be used when the parameter is of JDBC type `NUMERIC` or `DECIMAL`.

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Parameters:
  `parameterIndex` - the first parameter is 1, the second is 2, and so on
  `sqlType` - the 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.
Throws:
  `SQLException` - if the parameterIndex is not valid; if a database access error occurs or this method is called on a closed `CallableStatement`
See Also:
  - `Types`

### registerOutParameter

public void registerOutParameter(String parameterName, int sqlType) throws SQLException

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

public void registerOutParameter(String parameterName, int sqlType, int scale) throws SQLException

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

public void registerOutParameter(String parameterName, int sqlType, String typeName) throws SQLException

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

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

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

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

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

public void registerOutParameter(int parameterIndex, SQLType sqlType, String typeName) throws SQLException

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

public void registerOutParameter(String parameterName, SQLType sqlType) throws SQLException

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

public void registerOutParameter(String parameterName, SQLType sqlType, int scale) throws SQLException

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### registerOutParameter

public void registerOutParameter(String parameterName, SQLType sqlType, String typeName) throws SQLException

Specified by:
  `registerOutParameter` in interface `CallableStatement`
Throws:
  `SQLException`

### setSQLXML

public void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException

Specified by:
  `setSQLXML` in interface `CallableStatement`
Throws:
  `SQLException`

### setRowId

public void setRowId(String parameterName, RowId rowid) throws SQLException

Specified by:
  `setRowId` in interface `CallableStatement`
Throws:
  `SQLException`

### setNString

public void setNString(String parameterName, String value) throws SQLException

Specified by:
  `setNString` in interface `CallableStatement`
Throws:
  `SQLException`

### setNCharacterStream

public void setNCharacterStream(String parameterName, Reader reader, long length) throws SQLException

Specified by:
  `setNCharacterStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setNCharacterStream

public void setNCharacterStream(String parameterName, Reader reader) throws SQLException

Specified by:
  `setNCharacterStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setNClob

public void setNClob(String parameterName, NClob value) throws SQLException

Specified by:
  `setNClob` in interface `CallableStatement`
Throws:
  `SQLException`

### setNClob

public void setNClob(String parameterName, Reader reader, long length) throws SQLException

Specified by:
  `setNClob` in interface `CallableStatement`
Throws:
  `SQLException`

### setNClob

public void setNClob(String parameterName, Reader reader) throws SQLException

Specified by:
  `setNClob` in interface `CallableStatement`
Throws:
  `SQLException`

### setClob

public void setClob(String parameterName, Reader reader, long length) throws SQLException

Specified by:
  `setClob` in interface `CallableStatement`
Throws:
  `SQLException`

### setClob

public void setClob(String parameterName, Clob clob) throws SQLException

Specified by:
  `setClob` in interface `CallableStatement`
Throws:
  `SQLException`

### setClob

public void setClob(String parameterName, Reader reader) throws SQLException

Specified by:
  `setClob` in interface `CallableStatement`
Throws:
  `SQLException`

### setBlob

public void setBlob(String parameterName, InputStream inputStream, long length) throws SQLException

Specified by:
  `setBlob` in interface `CallableStatement`
Throws:
  `SQLException`

### setBlob

public void setBlob(String parameterName, Blob blob) throws SQLException

Specified by:
  `setBlob` in interface `CallableStatement`
Throws:
  `SQLException`

### setBlob

public void setBlob(String parameterName, InputStream inputStream) throws SQLException

Specified by:
  `setBlob` in interface `CallableStatement`
Throws:
  `SQLException`

### setAsciiStream

public void setAsciiStream(String parameterName, InputStream inputStream, long length) throws SQLException

Specified by:
  `setAsciiStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setAsciiStream

public void setAsciiStream(String parameterName, InputStream inputStream, int length) throws SQLException

Specified by:
  `setAsciiStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setAsciiStream

public void setAsciiStream(String parameterName, InputStream inputStream) throws SQLException

Specified by:
  `setAsciiStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setBinaryStream

public void setBinaryStream(String parameterName, InputStream inputStream, long length) throws SQLException

Specified by:
  `setBinaryStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setBinaryStream

public void setBinaryStream(String parameterName, InputStream inputStream) throws SQLException

Specified by:
  `setBinaryStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setBinaryStream

public void setBinaryStream(String parameterName, InputStream inputStream, int length) throws SQLException

Specified by:
  `setBinaryStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setCharacterStream

public void setCharacterStream(String parameterName, Reader reader, long length) throws SQLException

Specified by:
  `setCharacterStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setCharacterStream

public void setCharacterStream(String parameterName, Reader reader) throws SQLException

Specified by:
  `setCharacterStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setCharacterStream

public void setCharacterStream(String parameterName, Reader reader, int length) throws SQLException

Specified by:
  `setCharacterStream` in interface `CallableStatement`
Throws:
  `SQLException`

### setURL

public void setURL(String parameterName, URL url) throws SQLException

Specified by:
  `setURL` in interface `CallableStatement`
Throws:
  `SQLException`

### setNull

public void setNull(String parameterName, int sqlType) throws SQLException

Specified by:
  `setNull` in interface `CallableStatement`
Throws:
  `SQLException`

### setNull

public void setNull(String parameterName, int sqlType, String typeName) throws SQLException

Specified by:
  `setNull` in interface `CallableStatement`
Throws:
  `SQLException`

### setBoolean

public void setBoolean(String parameterName, boolean booleanValue) throws SQLException

Specified by:
  `setBoolean` in interface `CallableStatement`
Throws:
  `SQLException`

### setByte

public void setByte(String parameterName, byte byteValue) throws SQLException

Specified by:
  `setByte` in interface `CallableStatement`
Throws:
  `SQLException`

### setShort

public void setShort(String parameterName, short shortValue) throws SQLException

Specified by:
  `setShort` in interface `CallableStatement`
Throws:
  `SQLException`

### setInt

public void setInt(String parameterName, int intValue) throws SQLException

Specified by:
  `setInt` in interface `CallableStatement`
Throws:
  `SQLException`

### setLong

public void setLong(String parameterName, long longValue) throws SQLException

Specified by:
  `setLong` in interface `CallableStatement`
Throws:
  `SQLException`

### setFloat

public void setFloat(String parameterName, float floatValue) throws SQLException

Specified by:
  `setFloat` in interface `CallableStatement`
Throws:
  `SQLException`

### setDouble

public void setDouble(String parameterName, double doubleValue) throws SQLException

Specified by:
  `setDouble` in interface `CallableStatement`
Throws:
  `SQLException`

### setBigDecimal

public void setBigDecimal(String parameterName, BigDecimal bigDecimal) throws SQLException

Specified by:
  `setBigDecimal` in interface `CallableStatement`
Throws:
  `SQLException`

### setString

public void setString(String parameterName, String stringValue) throws SQLException

Specified by:
  `setString` in interface `CallableStatement`
Throws:
  `SQLException`

### setBytes

public void setBytes(String parameterName, byte[] bytes) throws SQLException

Specified by:
  `setBytes` in interface `CallableStatement`
Throws:
  `SQLException`

### setDate

public void setDate(String parameterName, Date date) throws SQLException

Specified by:
  `setDate` in interface `CallableStatement`
Throws:
  `SQLException`

### setDate

public void setDate(String parameterName, Date date, Calendar cal) throws SQLException

Specified by:
  `setDate` in interface `CallableStatement`
Throws:
  `SQLException`

### setTime

public void setTime(String parameterName, Time time) throws SQLException

Specified by:
  `setTime` in interface `CallableStatement`
Throws:
  `SQLException`

### setTime

public void setTime(String parameterName, Time time, Calendar cal) throws SQLException

Specified by:
  `setTime` in interface `CallableStatement`
Throws:
  `SQLException`

### setTimestamp

public void setTimestamp(String parameterName, Timestamp timestamp) throws SQLException

Specified by:
  `setTimestamp` in interface `CallableStatement`
Throws:
  `SQLException`

### setTimestamp

public void setTimestamp(String parameterName, Timestamp timestamp, Calendar cal) throws SQLException

Specified by:
  `setTimestamp` in interface `CallableStatement`
Throws:
  `SQLException`

### setObject

public void setObject(String parameterName, Object obj, int targetSqlType, int scale) throws SQLException

Specified by:
  `setObject` in interface `CallableStatement`
Throws:
  `SQLException`

### setObject

public void setObject(String parameterName, Object obj, int targetSqlType) throws SQLException

Specified by:
  `setObject` in interface `CallableStatement`
Throws:
  `SQLException`

### setObject

public void setObject(String parameterName, Object obj) throws SQLException

Specified by:
  `setObject` in interface `CallableStatement`
Throws:
  `SQLException`

### setObject

public void setObject(String parameterName, Object obj, SQLType targetSqlType, int scaleOrLength) throws SQLException

Specified by:
  `setObject` in interface `CallableStatement`
Throws:
  `SQLException`

### setObject

public void setObject(String parameterName, Object obj, SQLType targetSqlType) throws SQLException

Specified by:
  `setObject` in interface `CallableStatement`
Throws:
  `SQLException`