FileDocCategorySizeDatePackage
CallableStatementWrapper40.javaAPI DocGlassfish v2 API72501Fri May 04 22:36:06 BST 2007com.sun.gjc.spi.jdbc40

CallableStatementWrapper40

public class CallableStatementWrapper40 extends com.sun.gjc.spi.base.CallableStatementWrapper
Wrapper for JDBC 4.0 CallableStatement

Fields Summary
Constructors Summary
public CallableStatementWrapper40(Connection con, CallableStatement statement)
Creates a new instance of CallableStatement wrapper for JDBC 3.0

param
con ConnectionWrapper
param
statement CallableStatement that is wrapped

        super(con, statement);
    
Methods Summary
public java.sql.ResultSetexecuteQuery()
Executes the SQL query in this PreparedStatement object and returns the ResultSet object generated by the query.

return
a ResultSet object that contains the data produced by the query; never null
exception
SQLException if a database access error occurs; this method is called on a closed PreparedStatement or the SQL statement does not return a ResultSet object

        ResultSet rs = callableStatement.executeQuery();
        if (rs == null)
            return null;
        return new ResultSetWrapper40(this, rs);
    
public java.sql.ResultSetexecuteQuery(java.lang.String sql)
Executes the given SQL statement, which returns a single ResultSet object.

param
sql an SQL statement to be sent to the database, typically a static SQL SELECT statement
return
a ResultSet object that contains the data produced by the given query; never null
exception
SQLException if a database access error occurs, this method is called on a closed Statement or the given SQL statement produces anything other than a single ResultSet object

        ResultSet rs = callableStatement.executeQuery(sql);
        if (rs == null)
            return null;
        return new ResultSetWrapper40(this, rs);
    
public java.io.ReadergetCharacterStream(int parameterIndex)
Retrieves the value of the designated parameter as a java.io.Reader object in the Java programming language.

return
a java.io.Reader object that contains the parameter value; if the value is SQL NULL, the value returned is null in the Java programming language.
param
parameterIndex the first parameter is 1, the second is 2, ...
exception
SQLException if the parameterIndex is not valid; if a database access error occurs or this method is called on a closed CallableStatement
since
1.6

        return callableStatement.getCharacterStream(parameterIndex);
    
public java.io.ReadergetCharacterStream(java.lang.String parameterName)
Retrieves the value of the designated parameter as a java.io.Reader object in the Java programming language.

param
parameterName the name of the parameter
return
a java.io.Reader object that contains the parameter value; if the value is SQL NULL, the value returned is null in the Java programming language
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        return callableStatement.getCharacterStream(parameterName);
    
public java.sql.ResultSetgetGeneratedKeys()
Retrieves any auto-generated keys created as a result of executing this Statement object. If this Statement object did not generate any keys, an empty ResultSet object is returned.

Note:If the columns which represent the auto-generated keys were not specified, the JDBC driver implementation will determine the columns which best represent the auto-generated keys.

return
a ResultSet object containing the auto-generated key(s) generated by the execution of this Statement object
exception
SQLException if a database access error occurs or this method is called on a closed Statement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.4

        ResultSet rs = callableStatement.getGeneratedKeys();
        if (rs == null)
            return null;
        return new ResultSetWrapper40(this, rs);
    
public java.io.ReadergetNCharacterStream(int parameterIndex)
Retrieves the value of the designated parameter as a java.io.Reader object in the Java programming language. It is intended for use when accessing NCHAR,NVARCHAR and LONGNVARCHAR parameters.

return
a java.io.Reader object that contains the parameter value; if the value is SQL NULL, the value returned is null in the Java programming language.
param
parameterIndex the first parameter is 1, the second is 2, ...
exception
SQLException if the parameterIndex is not valid; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        return callableStatement.getNCharacterStream(parameterIndex);
    
public java.io.ReadergetNCharacterStream(java.lang.String parameterName)
Retrieves the value of the designated parameter as a java.io.Reader object in the Java programming language. It is intended for use when accessing NCHAR,NVARCHAR and LONGNVARCHAR parameters.

param
parameterName the name of the parameter
return
a java.io.Reader object that contains the parameter value; if the value is SQL NULL, the value returned is null in the Java programming language
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        return callableStatement.getNCharacterStream(parameterName);
    
public java.sql.NClobgetNClob(int parameterIndex)
Retrieves the value of the designated JDBC NCLOB parameter as a java.sql.NClob object in the Java programming language.

param
parameterIndex the first parameter is 1, the second is 2, and so on
return
the parameter value as a NClob object in the Java programming language. If the value was SQL NULL, the value null is returned.
exception
SQLException if the parameterIndex is not valid; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        return callableStatement.getNClob(parameterIndex);
    
public java.sql.NClobgetNClob(java.lang.String parameterName)
Retrieves the value of a JDBC NCLOB parameter as a java.sql.NClob object in the Java programming language.

param
parameterName the name of the parameter
return
the parameter value as a NClob object in the Java programming language. If the value was SQL NULL, the value null is returned.
exception
SQLException if parameterName does not correspond to a named parameter; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        return callableStatement.getNClob(parameterName);
    
public java.lang.StringgetNString(int parameterIndex)
Retrieves the value of the designated NCHAR, NVARCHAR or LONGNVARCHAR parameter as a String in the Java programming language.

For the fixed-length type JDBC NCHAR, the String object returned has exactly the same value the SQL NCHAR value had in the database, including any padding added by the database.

param
parameterIndex index of the first parameter is 1, the second is 2, ...
return
a String object that maps an NCHAR, NVARCHAR or LONGNVARCHAR value
exception
SQLException if the parameterIndex is not valid; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6
see
#setNString

        return callableStatement.getNString(parameterIndex);
    
public java.lang.StringgetNString(java.lang.String parameterName)
Retrieves the value of the designated NCHAR, NVARCHAR or LONGNVARCHAR parameter as a String in the Java programming language.

For the fixed-length type JDBC NCHAR, the String object returned has exactly the same value the SQL NCHAR value had in the database, including any padding added by the database.

param
parameterName the name of the parameter
return
a String object that maps an NCHAR, NVARCHAR or LONGNVARCHAR value
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6
see
#setNString

        return callableStatement.getNString(parameterName);
    
public java.sql.ResultSetgetResultSet()
Retrieves the current result as a ResultSet object. This method should be called only once per result.

return
the current result as a ResultSet object or null if the result is an update count or there are no more results
exception
SQLException if a database access error occurs or this method is called on a closed Statement
see
#execute

        ResultSet rs = callableStatement.getResultSet();
        if (rs == null)
            return null;
        return new ResultSetWrapper40(this, rs);
    
public java.sql.RowIdgetRowId(int parameterIndex)
Retrieves the value of the designated JDBC ROWID parameter as a java.sql.RowId object.

param
parameterIndex the first parameter is 1, the second is 2,...
return
a RowId object that represents the JDBC ROWID value is used as the designated parameter. If the parameter contains a SQL NULL, then a null value is returned.
throws
SQLException if the parameterIndex is not valid; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        return callableStatement.getRowId(parameterIndex);
    
public java.sql.RowIdgetRowId(java.lang.String parameterName)
Retrieves the value of the designated JDBC ROWID parameter as a java.sql.RowId object.

param
parameterName the name of the parameter
return
a RowId object that represents the JDBC ROWID value is used as the designated parameter. If the parameter contains a SQL NULL, then a null value is returned.
throws
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        return callableStatement.getRowId(parameterName);
    
public java.sql.SQLXMLgetSQLXML(int parameterIndex)
Retrieves the value of the designated SQL XML parameter as a java.sql.SQLXML object in the Java programming language.

param
parameterIndex index of the first parameter is 1, the second is 2, ...
return
a SQLXML object that maps an SQL XML value
throws
SQLException if the parameterIndex is not valid; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        return callableStatement.getSQLXML(parameterIndex);
    
public java.sql.SQLXMLgetSQLXML(java.lang.String parameterName)
Retrieves the value of the designated SQL XML parameter as a java.sql.SQLXML object in the Java programming language.

param
parameterName the name of the parameter
return
a SQLXML object that maps an SQL XML value
throws
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        return callableStatement.getSQLXML(parameterName);
    
public booleanisClosed()
Retrieves whether this Statement object has been closed. A Statement is closed if the method close has been called on it, or if it is automatically closed.

return
true if this Statement object is closed; false if it is still open
throws
SQLException if a database access error occurs
since
1.6

        return callableStatement.isClosed();
    
public booleanisPoolable()
Returns a value indicating whether the Statement is poolable or not.

return
true if the Statement is poolable; false otherwise

throws
SQLException if this method is called on a closed Statement

since
1.6

see
java.sql.Statement#setPoolable(boolean) setPoolable(boolean)

        return callableStatement.isPoolable();
    
public booleanisWrapperFor(java.lang.Class iface)
Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does. Returns false otherwise. If this implements the interface then return true, else if this is a wrapper then return the result of recursively calling isWrapperFor on the wrapped object. If this does not implement the interface and is not a wrapper, return false. This method should be implemented as a low-cost operation compared to unwrap so that callers can use this method to avoid expensive unwrap calls that may fail. If this method returns true then calling unwrap with the same argument should succeed.

param
iface a Class defining an interface.
return
true if this implements the interface or directly or indirectly wraps an object that does.
throws
java.sql.SQLException if an error occurs while determining whether this is a wrapper for an object with the given interface.
since
1.6

       boolean result ;
        if (iface.isInstance(this)) {
            result = true;
        }else{
            result = callableStatement.isWrapperFor(iface);
        }
        return result;
    
public voidsetAsciiStream(java.lang.String parameterName, java.io.InputStream x)
Sets the designated parameter to the given input stream. 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.

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setAsciiStream which takes a length parameter.

param
parameterName the name of the parameter
param
x the Java input stream that contains the ASCII parameter value
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setAsciiStream(parameterName, x);
    
public voidsetAsciiStream(java.lang.String parameterName, java.io.InputStream x, long length)
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.

param
parameterName the name of the parameter
param
x the Java input stream that contains the ASCII parameter value
param
length the number of bytes in the stream
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setAsciiStream(parameterName, x, length);
    
public voidsetAsciiStream(int parameterIndex, java.io.InputStream x)
Sets the designated parameter to the given input stream. 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.

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setAsciiStream which takes a length parameter.

param
parameterIndex the first parameter is 1, the second is 2, ...
param
x the Java input stream that contains the ASCII parameter value
exception
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setAsciiStream(parameterIndex, x);
    
public voidsetAsciiStream(int parameterIndex, java.io.InputStream x, long length)
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.

param
parameterIndex the first parameter is 1, the second is 2, ...
param
x the Java input stream that contains the ASCII parameter value
param
length the number of bytes in the stream
exception
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs or this method is called on a closed PreparedStatement
since
1.6

        callableStatement.setAsciiStream(parameterIndex, x, length);
    
public voidsetBinaryStream(java.lang.String parameterName, java.io.InputStream x)
Sets the designated parameter to the given input stream. 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.

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setBinaryStream which takes a length parameter.

param
parameterName the name of the parameter
param
x the java input stream which contains the binary parameter value
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setBinaryStream(parameterName, x);
    
public voidsetBinaryStream(java.lang.String parameterName, java.io.InputStream x, long length)
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.

param
parameterName the name of the parameter
param
x the java input stream which contains the binary parameter value
param
length the number of bytes in the stream
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setBinaryStream(parameterName, x, length);
    
public voidsetBinaryStream(int parameterIndex, java.io.InputStream x)
Sets the designated parameter to the given input stream. 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.

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setBinaryStream which takes a length parameter.

param
parameterIndex the first parameter is 1, the second is 2, ...
param
x the java input stream which contains the binary parameter value
exception
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setBinaryStream(parameterIndex, x);
    
public voidsetBinaryStream(int parameterIndex, java.io.InputStream x, long length)
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.

param
parameterIndex the first parameter is 1, the second is 2, ...
param
x the java input stream which contains the binary parameter value
param
length the number of bytes in the stream
exception
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs or this method is called on a closed PreparedStatement
since
1.6

        callableStatement.setBinaryStream(parameterIndex, x, length);
    
public voidsetBlob(java.lang.String parameterName, java.sql.Blob x)
Sets the designated parameter to the given java.sql.Blob object. The driver converts this to an SQL BLOB value when it sends it to the database.

param
parameterName the name of the parameter
param
x a Blob object that maps an SQL BLOB value
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setBlob(parameterName, x);
    
public voidsetBlob(java.lang.String parameterName, java.io.InputStream inputStream)
Sets the designated parameter to a InputStream object. This method differs from the setBinaryStream (int, InputStream) method because it informs the driver that the parameter value should be sent to the server as a BLOB. When the setBinaryStream method is used, the driver may have to do extra work to determine whether the parameter data should be send to the server as a LONGVARBINARY or a BLOB

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setBlob which takes a length parameter.

param
parameterName the name of the parameter
param
inputStream An object that contains the data to set the parameter value to.
throws
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setBlob(parameterName, inputStream);
    
public voidsetBlob(java.lang.String parameterName, java.io.InputStream inputStream, long length)
Sets the designated parameter to a InputStream object. The inputstream must contain the number of characters specified by length, otherwise a SQLException will be generated when the CallableStatement is executed. This method differs from the setBinaryStream (int, InputStream, int) method because it informs the driver that the parameter value should be sent to the server as a BLOB. When the setBinaryStream method is used, the driver may have to do extra work to determine whether the parameter data should be sent to the server as a LONGVARBINARY or a BLOB

param
parameterName the name of the parameter to be set the second is 2, ...
param
inputStream An object that contains the data to set the parameter value to.
param
length the number of bytes in the parameter data.
throws
SQLException if parameterName does not correspond to a named parameter; if the length specified is less than zero; if the number of bytes in the inputstream does not match the specfied length; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setBlob(parameterName, inputStream, length);
    
public voidsetBlob(int parameterIndex, java.io.InputStream inputStream)
Sets the designated parameter to a InputStream object. This method differs from the setBinaryStream (int, InputStream) method because it informs the driver that the parameter value should be sent to the server as a BLOB. When the setBinaryStream method is used, the driver may have to do extra work to determine whether the parameter data should be sent to the server as a LONGVARBINARY or a BLOB

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setBlob which takes a length parameter.

param
parameterIndex index of the first parameter is 1, the second is 2, ...
param
inputStream An object that contains the data to set the parameter value to.
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs; this method is called on a closed PreparedStatement or if parameterIndex does not correspond to a parameter marker in the SQL statement,
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setBlob(parameterIndex, inputStream);
    
public voidsetBlob(int parameterIndex, java.io.InputStream inputStream, long length)
Sets the designated parameter to a InputStream object. The inputstream must contain the number of characters specified by length otherwise a SQLException will be generated when the PreparedStatement is executed. This method differs from the setBinaryStream (int, InputStream, int) method because it informs the driver that the parameter value should be sent to the server as a BLOB. When the setBinaryStream method is used, the driver may have to do extra work to determine whether the parameter data should be sent to the server as a LONGVARBINARY or a BLOB

param
parameterIndex index of the first parameter is 1, the second is 2, ...
param
inputStream An object that contains the data to set the parameter value to.
param
length the number of bytes in the parameter data.
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs; this method is called on a closed PreparedStatement; if the length specified is less than zero or if the number of bytes in the inputstream does not match the specfied length.
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setBlob(parameterIndex, inputStream, length);
    
public voidsetCharacterStream(java.lang.String parameterName, java.io.Reader reader)
Sets the designated parameter to the given Reader object. 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.

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setCharacterStream which takes a length parameter.

param
parameterName the name of the parameter
param
reader the java.io.Reader object that contains the Unicode data
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setCharacterStream(parameterName, reader);
    
public voidsetCharacterStream(java.lang.String parameterName, java.io.Reader reader, long length)
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.

param
parameterName the name of the parameter
param
reader the java.io.Reader object that contains the UNICODE data used as the designated parameter
param
length the number of characters in the stream
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setCharacterStream(parameterName, reader, length);
    
public voidsetCharacterStream(int parameterIndex, java.io.Reader reader)
Sets the designated parameter to the given Reader object. 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.

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setCharacterStream which takes a length parameter.

param
parameterIndex the first parameter is 1, the second is 2, ...
param
reader the java.io.Reader object that contains the Unicode data
exception
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setCharacterStream(parameterIndex, reader);
    
public voidsetCharacterStream(int parameterIndex, java.io.Reader reader, long length)
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.

param
parameterIndex the first parameter is 1, the second is 2, ...
param
reader the java.io.Reader object that contains the Unicode data
param
length the number of characters in the stream
exception
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs or this method is called on a closed PreparedStatement
since
1.6

        callableStatement.setCharacterStream(parameterIndex, reader, length);
    
public voidsetClob(java.lang.String parameterName, java.sql.Clob x)
Sets the designated parameter to the given java.sql.Clob object. The driver converts this to an SQL CLOB value when it sends it to the database.

param
parameterName the name of the parameter
param
x a Clob object that maps an SQL CLOB value
exception
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setClob(parameterName, x);
    
public voidsetClob(java.lang.String parameterName, java.io.Reader reader)
Sets the designated parameter to a Reader object. This method differs from the setCharacterStream (int, Reader) method because it informs the driver that the parameter value should be sent to the server as a CLOB. When the setCharacterStream method is used, the driver may have to do extra work to determine whether the parameter data should be send to the server as a LONGVARCHAR or a CLOB

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setClob which takes a length parameter.

param
parameterName the name of the parameter
param
reader An object that contains the data to set the parameter value to.
throws
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setClob(parameterName, reader);
    
public voidsetClob(java.lang.String parameterName, java.io.Reader reader, long length)
Sets the designated parameter to a Reader object. The reader must contain the number of characters specified by length otherwise a SQLException will be generated when the CallableStatement is executed. This method differs from the setCharacterStream (int, Reader, int) method because it informs the driver that the parameter value should be sent to the server as a CLOB. When the setCharacterStream method is used, the driver may have to do extra work to determine whether the parameter data should be send to the server as a LONGVARCHAR or a CLOB

param
parameterName the name of the parameter to be set
param
reader An object that contains the data to set the parameter value to.
param
length the number of characters in the parameter data.
throws
SQLException if parameterName does not correspond to a named parameter; if the length specified is less than zero; a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setClob(parameterName, reader, length);
    
public voidsetClob(int parameterIndex, java.io.Reader reader)
Sets the designated parameter to a Reader object. This method differs from the setCharacterStream (int, Reader) method because it informs the driver that the parameter value should be sent to the server as a CLOB. When the setCharacterStream method is used, the driver may have to do extra work to determine whether the parameter data should be sent to the server as a LONGVARCHAR or a CLOB

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setClob which takes a length parameter.

param
parameterIndex index of the first parameter is 1, the second is 2, ...
param
reader An object that contains the data to set the parameter value to.
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs; this method is called on a closed PreparedStatementor if parameterIndex does not correspond to a parameter marker in the SQL statement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setClob(parameterIndex, reader);
    
public voidsetClob(int parameterIndex, java.io.Reader reader, long length)
Sets the designated parameter to a Reader object. The reader must contain the number of characters specified by length otherwise a SQLException will be generated when the PreparedStatement is executed. This method differs from the setCharacterStream (int, Reader, int) method because it informs the driver that the parameter value should be sent to the server as a CLOB. When the setCharacterStream method is used, the driver may have to do extra work to determine whether the parameter data should be sent to the server as a LONGVARCHAR or a CLOB

param
parameterIndex index of the first parameter is 1, the second is 2, ...
param
reader An object that contains the data to set the parameter value to.
param
length the number of characters in the parameter data.
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs; this method is called on a closed PreparedStatement or if the length specified is less than zero.
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setClob(parameterIndex, reader, length);
    
public voidsetNCharacterStream(java.lang.String parameterName, java.io.Reader value)
Sets the designated parameter to a Reader object. The Reader reads the data till end-of-file is reached. The driver does the necessary conversion from Java character format to the national character set in the database.

Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setNCharacterStream which takes a length parameter.

param
parameterName the name of the parameter
param
value the parameter value
throws
SQLException if parameterName does not correspond to a named parameter; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs; or this method is called on a closed CallableStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNCharacterStream(parameterName, value);
    
public voidsetNCharacterStream(java.lang.String parameterName, java.io.Reader value, long length)
Sets the designated parameter to a Reader object. The Reader reads the data till end-of-file is reached. The driver does the necessary conversion from Java character format to the national character set in the database.

param
parameterName the name of the parameter to be set
param
value the parameter value
param
length the number of characters in the parameter data.
throws
SQLException if parameterName does not correspond to a named parameter; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNCharacterStream(parameterName, value, length);
    
public voidsetNCharacterStream(int parameterIndex, java.io.Reader value)
Sets the designated parameter to a Reader object. The Reader reads the data till end-of-file is reached. The driver does the necessary conversion from Java character format to the national character set in the database.

Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setNCharacterStream which takes a length parameter.

param
parameterIndex of the first parameter is 1, the second is 2, ...
param
value the parameter value
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs; or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNCharacterStream(parameterIndex, value);
    
public voidsetNCharacterStream(int parameterIndex, java.io.Reader value, long length)
Sets the designated parameter to a Reader object. The Reader reads the data till end-of-file is reached. The driver does the necessary conversion from Java character format to the national character set in the database.

param
parameterIndex of the first parameter is 1, the second is 2, ...
param
value the parameter value
param
length the number of characters in the parameter data.
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs; or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNCharacterStream(parameterIndex, value, length);
    
public voidsetNClob(java.lang.String parameterName, java.sql.NClob reader)
Sets the designated parameter to a Reader object. This method differs from the setCharacterStream (int, Reader) method because it informs the driver that the parameter value should be sent to the server as a NCLOB. When the setCharacterStream method is used, the driver may have to do extra work to determine whether the parameter data should be send to the server as a LONGNVARCHAR or a NCLOB

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setNClob which takes a length parameter.

param
parameterName the name of the parameter
param
reader An object that contains the data to set the parameter value to.
throws
SQLException if parameterName does not correspond to a named parameter; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed CallableStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNClob(parameterName, reader);
    
public voidsetNClob(java.lang.String parameterName, java.io.Reader reader)
Sets the designated parameter to a Reader object. This method differs from the setCharacterStream (int, Reader) method because it informs the driver that the parameter value should be sent to the server as a NCLOB. When the setCharacterStream method is used, the driver may have to do extra work to determine whether the parameter data should be send to the server as a LONGNVARCHAR or a NCLOB

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setNClob which takes a length parameter.

param
parameterName the name of the parameter
param
reader An object that contains the data to set the parameter value to.
throws
SQLException if parameterName does not correspond to a named parameter; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed CallableStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNClob(parameterName, reader);
    
public voidsetNClob(java.lang.String parameterName, java.io.Reader reader, long length)
Sets the designated parameter to a Reader object. The reader must contain the number of characters specified by length otherwise a SQLException will be generated when the CallableStatement is executed. This method differs from the setCharacterStream (int, Reader, int) method because it informs the driver that the parameter value should be sent to the server as a NCLOB. When the setCharacterStream method is used, the driver may have to do extra work to determine whether the parameter data should be send to the server as a LONGNVARCHAR or a NCLOB

param
parameterName the name of the parameter to be set
param
reader An object that contains the data to set the parameter value to.
param
length the number of characters in the parameter data.
throws
SQLException if parameterName does not correspond to a named parameter; if the length specified is less than zero; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNClob(parameterName, reader, length);
    
public voidsetNClob(int parameterIndex, java.sql.NClob value)
Sets the designated parameter to a java.sql.NClob object. The driver converts this to a SQL NCLOB value when it sends it to the database.

param
parameterIndex of the first parameter is 1, the second is 2, ...
param
value the parameter value
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs; or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNClob(parameterIndex, value);
    
public voidsetNClob(int parameterIndex, java.io.Reader reader)
Sets the designated parameter to a Reader object. This method differs from the setCharacterStream (int, Reader) method because it informs the driver that the parameter value should be sent to the server as a NCLOB. When the setCharacterStream method is used, the driver may have to do extra work to determine whether the parameter data should be sent to the server as a LONGNVARCHAR or a NCLOB

Note: Consult your JDBC driver documentation to determine if it might be more efficient to use a version of setNClob which takes a length parameter.

param
parameterIndex index of the first parameter is 1, the second is 2, ...
param
reader An object that contains the data to set the parameter value to.
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNClob(parameterIndex, reader);
    
public voidsetNClob(int parameterIndex, java.io.Reader reader, long length)
Sets the designated parameter to a Reader object. The reader must contain the number of characters specified by length otherwise a SQLException will be generated when the PreparedStatement is executed. This method differs from the setCharacterStream (int, Reader, int) method because it informs the driver that the parameter value should be sent to the server as a NCLOB. When the setCharacterStream method is used, the driver may have to do extra work to determine whether the parameter data should be sent to the server as a LONGNVARCHAR or a NCLOB

param
parameterIndex index of the first parameter is 1, the second is 2, ...
param
reader An object that contains the data to set the parameter value to.
param
length the number of characters in the parameter data.
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if the length specified is less than zero; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNClob(parameterIndex, reader, length);
    
public voidsetNString(java.lang.String parameterName, java.lang.String value)
Sets the designated parameter to the given String object. The driver converts this to a SQL NCHAR or NVARCHAR or LONGNVARCHAR

param
parameterName the name of the parameter to be set
param
value the parameter value
throws
SQLException if parameterName does not correspond to a named parameter; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNString(parameterName, value);
    
public voidsetNString(int parameterIndex, java.lang.String value)
Sets the designated paramter to the given String object. The driver converts this to a SQL NCHAR or NVARCHAR or LONGNVARCHAR value (depending on the argument's size relative to the driver's limits on NVARCHAR values) when it sends it to the database.

param
parameterIndex of the first parameter is 1, the second is 2, ...
param
value the parameter value
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if the driver does not support national character sets; if the driver can detect that a data conversion error could occur; if a database access error occurs; or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setNString(parameterIndex, value);
    
public voidsetPoolable(boolean poolable)
Requests that a Statement be pooled or not pooled. The value specified is a hint to the statement pool implementation indicating whether the applicaiton wants the statement to be pooled. It is up to the statement pool manager as to whether the hint is used.

The poolable value of a statement is applicable to both internal statement caches implemented by the driver and external statement caches implemented by application servers and other applications.

By default, a Statement is not poolable when created, and a PreparedStatement and CallableStatement are poolable when created.

param
poolable requests that the statement be pooled if true and that the statement not be pooled if false

throws
SQLException if this method is called on a closed Statement

since
1.6

        callableStatement.setPoolable(poolable);
    
public voidsetRowId(java.lang.String parameterName, java.sql.RowId x)
Sets the designated parameter to the given java.sql.RowId object. The driver converts this to a SQL ROWID when it sends it to the database.

param
parameterName the name of the parameter
param
x the parameter value
throws
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs or this method is called on a closed CallableStatement
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setRowId(parameterName, x);
    
public voidsetRowId(int parameterIndex, java.sql.RowId x)
Sets the designated parameter to the given java.sql.RowId object. The driver converts this to a SQL ROWID value when it sends it to the database

param
parameterIndex the first parameter is 1, the second is 2, ...
param
x the parameter value
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs or this method is called on a closed PreparedStatement
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setRowId(parameterIndex, x);
    
public voidsetSQLXML(java.lang.String parameterName, java.sql.SQLXML xmlObject)
Sets the designated parameter to the given java.sql.SQLXML object. The driver converts this to an SQL XML value when it sends it to the database.

param
parameterName the name of the parameter
param
xmlObject a SQLXML object that maps an SQL XML value
throws
SQLException if parameterName does not correspond to a named parameter; if a database access error occurs; this method is called on a closed CallableStatement or the java.xml.transform.Result, Writer or OutputStream has not been closed for the SQLXML object
exception
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setSQLXML(parameterName, xmlObject);
    
public voidsetSQLXML(int parameterIndex, java.sql.SQLXML xmlObject)
Sets the designated parameter to the given java.sql.SQLXML object. The driver converts this to an SQL XML value when it sends it to the database.

param
parameterIndex index of the first parameter is 1, the second is 2, ...
param
xmlObject a SQLXML object that maps an SQL XML value
throws
SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement; if a database access error occurs; this method is called on a closed PreparedStatement or the java.xml.transform.Result, Writer or OutputStream has not been closed for the SQLXML object
throws
SQLFeatureNotSupportedException if the JDBC driver does not support this method
since
1.6

        callableStatement.setSQLXML(parameterIndex, xmlObject);
    
public Tunwrap(java.lang.Class iface)
Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy. If the receiver implements the interface then the result is the receiver or a proxy for the receiver. If the receiver is a wrapper and the wrapped object implements the interface then the result is the wrapped object or a proxy for the wrapped object. Otherwise return the the result of calling unwrap recursively on the wrapped object or a proxy for that result. If the receiver is not a wrapper and does not implement the interface, then an SQLException is thrown.

param
iface A Class defining an interface that the result must implement.
return
an object that implements the interface. May be a proxy for the actual implementing object.
throws
java.sql.SQLException If no object found that implements the interface
since
1.6

        T result = null;
        if (iface.isInstance(this)) {
            result = iface.cast(this);
        } else {
            result = callableStatement.unwrap(iface);
        }
        return result;