com.sas.rio
Class MVAPreparedStatement

com.sas.rio.MVAPreparedStatement
All Implemented Interfaces:
com.sas.rio.RIOStatementInterface, java.sql.PreparedStatement, java.sql.Statement, java.sql.Wrapper
Direct Known Subclasses:
MVACallableStatement

public class MVAPreparedStatement
implements java.sql.PreparedStatement


Field Summary
 
Fields inherited from class com.sas.rio.MVAStatement
libref
 
Constructor Summary
MVAPreparedStatement(MVAConnection inconnection, java.lang.String sql, java.util.Properties props)
           
 
Method Summary
 void addBatch()
          JDBC 2.0 Adds a set of parameters to the batch.
 void clearParameters()
          Clears all the parameters.
 boolean execute()
          Executes a query.
 java.sql.ResultSet executeQuery()
          Executes a prepared SQL query and returns the ResultSet.
 int executeUpdate()
          Executes an SQL INSERT, UPDATE or DELETE statement.
 java.sql.ResultSetMetaData getMetaData()
          JDBC 2.0 Retrieves a ResultSetMetaData object that contains information about the columns of the ResultSet object that will be returned when this PreparedStatement object is executed.
 java.sql.ParameterMetaData getParameterMetaData()
          Retrieves the number, types and properties of this PreparedStatement object's parameters.
 void registerOutParameter(int parameterIndex, int sqlType, java.lang.String x)
          JDBC 2.0 This method is not yet supported.
 void setArray(int parameterIndex, java.sql.Array x)
          JDBC 2.0 Sets a parameter to an Array object.
 void setAsciiStream(int parameterIndex, java.io.InputStream x, int length)
          Sets a parameter to a Java java.io.InputStream.
 void setBigDecimal(int parameterIndex, java.math.BigDecimal x)
          Sets a parameter to a Java BigDecimal value.
 void setBinaryStream(int parameterIndex, java.io.InputStream x, int length)
          Sets a parameter to a Java java.io.InputStream.
 void setBlob(int parameterIndex, java.sql.Blob x)
          JDBC 2.0 Sets a parameter to a BLOB object.
 void setBoolean(int parameterIndex, boolean x)
          Sets the designated parameter to the given Java boolean value.
 void setByte(int parameterIndex, byte x)
          Sets the designated parameter to the given Java byte value.
 void setBytes(int parameterIndex, byte[] x)
          Sets a parameter to a Java byte array value.
 void setCharacterStream(int parameterIndex, java.io.Reader reader, int length)
          JDBC 2.0 Sets a parameter to java.io.Reader object.
 void setClob(int parameterIndex, java.sql.Clob x)
          JDBC 2.0 Sets a parameter to a CLOB object.
 void setDate(int parameterIndex, java.sql.Date x)
          Sets a parameter to a Java java.sql.Date value.
 void setDate(int parameterIndex, java.sql.Date x, java.util.Calendar cal)
          JDBC 2.0 Sets a parameter to a java.sql.Date value.
 void setDouble(int parameterIndex, double x)
          Sets a parameter to a Java double value.
 void setFloat(int parameterIndex, float x)
          Sets a parameter to a Java float value.
 void setInt(int parameterIndex, int x)
          Sets a parameter to a Java int value.
 void setLong(int parameterIndex, long x)
          Sets a parameter to a Java long value.
 void setNull(int parameterIndex, int sqlType)
          Sets a parameter to SQL NULL.
 void setNull(int parameterIndex, int sqlType, java.lang.String x)
          JDBC 2.0 Sets a parameter to SQL NULL.
 void setObject(int parameterIndex, java.lang.Object x)
          Sets a parameter to the default type.
 void setObject(int parameterIndex, java.lang.Object x, int sqlType)
          Sets a parameter to the input type.
 void setObject(int parameterIndex, java.lang.Object x, int sqlType, int scale)
          Sets a parameter to the input type.
 void setRef(int parameterIndex, java.sql.Ref x)
          JDBC 2.0 Sets a parameter to a REF(<structured-type>) object.
 void setShort(int parameterIndex, short x)
          Sets the designated parameter to the given Java short value.
 void setString(int parameterIndex, java.lang.String x)
          Sets a parameter to a Java string value.
 void setTime(int parameterIndex, java.sql.Time x)
          Sets a parameter to a Java java.sql.Time value.
 void setTime(int parameterIndex, java.sql.Time x, java.util.Calendar cal)
          JDBC 2.0 Sets a parameter to a java.sql.Time value.
 void setTimestamp(int parameterIndex, java.sql.Timestamp x)
          Sets a parameter to a Java java.sql.Timestamp value.
 void setTimestamp(int parameterIndex, java.sql.Timestamp x, java.util.Calendar cal)
          JDBC 2.0 Sets a parameter to a java.sql.Timestamp value.
 void setUnicodeStream(int parameterIndex, java.io.InputStream x, int length)
          Deprecated.  
 void setURL(int parameterIndex, java.net.URL x)
          Sets the designated parameter to the given java.net.URL value.
 
Methods inherited from class com.sas.rio.MVAStatement
addBatch, cancel, clearBatch, clearWarnings, close, createTable, deleteTable, deleteTable, execute, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getTable, getTable, getUpdateCount, getWarnings, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout
 

Constructor Detail

MVAPreparedStatement

public MVAPreparedStatement(MVAConnection inconnection,
                            java.lang.String sql,
                            java.util.Properties props)
Method Detail

executeQuery

public java.sql.ResultSet executeQuery()
                                throws java.sql.SQLException
Executes a prepared SQL query and returns the ResultSet.

Specified by:
executeQuery in interface java.sql.PreparedStatement
Returns:
An MVAResultSet object that contains the data that is produced by the query.
Throws:
java.sql.SQLException - This exception is thrown if an error condition is detected.

executeUpdate

public int executeUpdate()
                  throws java.sql.SQLException
Executes an SQL INSERT, UPDATE or DELETE statement.

Specified by:
executeUpdate in interface java.sql.PreparedStatement
Returns:
An int that contains the number of rows affected.
Throws:
java.sql.SQLException - This exception is thrown if an error condition is detected.

setNull

public void setNull(int parameterIndex,
                    int sqlType)
             throws java.sql.SQLException
Sets a parameter to SQL NULL.

Specified by:
setNull in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
sqlType - An SQL type code that is defined by java.sql.Types.
Throws:
java.sql.SQLException - This exception is thrown if a database error is detected or if the sqlType is not FLOAT, DOUBLE, INTEGER, TIME, DATE or TIMESTAMP. If the sqlType is CHAR, VARCHAR or LONGVARCHAR, an exception will not be thrown, and the value in the database will be set to a blank. SAS software does not allow other types to be NULL.

setBoolean

public void setBoolean(int parameterIndex,
                       boolean x)
                throws java.sql.SQLException
Sets the designated parameter to the given Java boolean value. The driver converts this to an SQL BIT value when it sends it to the database.

The IOM JDBC driver supports this method for NUM columns, but does not support it for CHAR columns.

Specified by:
setBoolean in interface java.sql.PreparedStatement
Parameters:
parameterIndex - the first parameter is 1, the second is 2, ...
x - the parameter value
Throws:
java.sql.SQLException - if a database access error occurs

setByte

public void setByte(int parameterIndex,
                    byte x)
             throws java.sql.SQLException
Sets the designated parameter to the given Java byte value. The driver converts this to an SQL TINYINT value when it sends it to the database.

Specified by:
setByte in interface java.sql.PreparedStatement
Parameters:
parameterIndex - the first parameter is 1, the second is 2, ...
x - the parameter value
Throws:
java.sql.SQLException - if a database access error occurs

setShort

public void setShort(int parameterIndex,
                     short x)
              throws java.sql.SQLException
Sets the designated parameter to the given Java short value. The driver converts this to an SQL SMALLINT value when it sends it to the database.

Specified by:
setShort in interface java.sql.PreparedStatement
Parameters:
parameterIndex - the first parameter is 1, the second is 2, ...
x - the parameter value
Throws:
java.sql.SQLException - if a database access error occurs

setInt

public void setInt(int parameterIndex,
                   int x)
            throws java.sql.SQLException
Sets a parameter to a Java int value.

Specified by:
setInt in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
x - An int value.
Throws:
java.sql.SQLException - This exception is thrown if parameterIndex is not valid.

setLong

public void setLong(int parameterIndex,
                    long x)
             throws java.sql.SQLException
Sets a parameter to a Java long value. This method is not supported.

Specified by:
setLong in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - This exception is always thrown because SAS software does not support SQL type BIGINT.

setFloat

public void setFloat(int parameterIndex,
                     float x)
              throws java.sql.SQLException
Sets a parameter to a Java float value.

Specified by:
setFloat in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
x - float value.
Throws:
java.sql.SQLException - This exception is thrown if parameter index is not valid.

setDouble

public void setDouble(int parameterIndex,
                      double x)
               throws java.sql.SQLException
Sets a parameter to a Java double value.

Specified by:
setDouble in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
x - double value.
Throws:
java.sql.SQLException - This exception is thrown if parameter index is not valid.

setBigDecimal

public void setBigDecimal(int parameterIndex,
                          java.math.BigDecimal x)
                   throws java.sql.SQLException
Sets a parameter to a Java BigDecimal value. This method is not supported.

Specified by:
setBigDecimal in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - This exception is always thrown because SAS software does not support SQL type Numeric.

setString

public void setString(int parameterIndex,
                      java.lang.String x)
               throws java.sql.SQLException
Sets a parameter to a Java string value.

Specified by:
setString in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
x - String value.
Throws:
java.sql.SQLException - This exception is thrown if parameter index is not valid.

setBytes

public void setBytes(int parameterIndex,
                     byte[] x)
              throws java.sql.SQLException
Sets a parameter to a Java byte array value. This method is not supported.

Specified by:
setBytes in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - This exception is always thrown because SAS software does not support SQL type BINARY.

setDate

public void setDate(int parameterIndex,
                    java.sql.Date x)
             throws java.sql.SQLException
Sets a parameter to a Java java.sql.Date value.

Specified by:
setDate in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
x - java.sql.Date value.
Throws:
java.sql.SQLException - This exception is thrown if parameter index is not valid.

setTime

public void setTime(int parameterIndex,
                    java.sql.Time x)
             throws java.sql.SQLException
Sets a parameter to a Java java.sql.Time value.

Specified by:
setTime in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
x - java.sql.Time value.
Throws:
java.sql.SQLException - This exception is thrown if parameter index is not valid.

setTimestamp

public void setTimestamp(int parameterIndex,
                         java.sql.Timestamp x)
                  throws java.sql.SQLException
Sets a parameter to a Java java.sql.Timestamp value.

Specified by:
setTimestamp in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
x - java.sql.Timestamp value.
Throws:
java.sql.SQLException - This exception is thrown if parameter index is not valid.

setAsciiStream

public void setAsciiStream(int parameterIndex,
                           java.io.InputStream x,
                           int length)
                    throws java.sql.SQLException
Sets a parameter to a Java java.io.InputStream.

Specified by:
setAsciiStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - This exception is always thrown because SAS software does not support SQL type LONGVARCHAR.

setUnicodeStream

public void setUnicodeStream(int parameterIndex,
                             java.io.InputStream x,
                             int length)
                      throws java.sql.SQLException
Deprecated. 

Sets a parameter to a Java java.io.InputStream. This method is not supported.

Specified by:
setUnicodeStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - This exception is always thrown because SAS software does not support SQL type LONGVARCHAR.

setBinaryStream

public void setBinaryStream(int parameterIndex,
                            java.io.InputStream x,
                            int length)
                     throws java.sql.SQLException
Sets a parameter to a Java java.io.InputStream. This method is not supported.

Specified by:
setBinaryStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - This exception is always thrown because SAS software does not support SQL type LONGVARBINARY.

clearParameters

public void clearParameters()
                     throws java.sql.SQLException
Clears all the parameters.

Specified by:
clearParameters in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - This exception is required by the interface, but it is never thrown.

setObject

public void setObject(int parameterIndex,
                      java.lang.Object x,
                      int sqlType,
                      int scale)
               throws java.sql.SQLException
Sets a parameter to the input type.

Specified by:
setObject in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
x - An input object.
sqlType - The target SQL type for the object.
scale - This parameter is ignored. SAS software does not support Decimal or Numeric data types.
Throws:
java.sql.SQLException - This exception may be thrown.

setObject

public void setObject(int parameterIndex,
                      java.lang.Object x)
               throws java.sql.SQLException
Sets a parameter to the default type.

Specified by:
setObject in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second parameter is 2, and so on.
x - An input object.
Throws:
java.sql.SQLException - This exception may be thrown.

setObject

public void setObject(int parameterIndex,
                      java.lang.Object x,
                      int sqlType)
               throws java.sql.SQLException
Sets a parameter to the input type.

Specified by:
setObject in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The first parameter is 1, the second is 2, and so on.
x - An input object.
sqlType - The target SQL type for the object.
Throws:
java.sql.SQLException - This exception may be thrown.

execute

public boolean execute()
                throws java.sql.SQLException
Executes a query.

Specified by:
execute in interface java.sql.PreparedStatement
Returns:
True if the result is a ResultSet; False if it is an integer.
Throws:
java.sql.SQLException - This exception may be thrown.
See Also:
MVAStatement.execute(java.lang.String)

addBatch

public void addBatch()
              throws java.sql.SQLException
JDBC 2.0 Adds a set of parameters to the batch. This method is not yet supported.

Specified by:
addBatch in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - This exception is always thrown.
See Also:
MVAStatement.addBatch(java.lang.String)

setCharacterStream

public void setCharacterStream(int parameterIndex,
                               java.io.Reader reader,
                               int length)
                        throws java.sql.SQLException
JDBC 2.0 Sets a parameter to java.io.Reader object. This method is not yet supported.

Specified by:
setCharacterStream in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second is 2, and so on.
x - The java reader object which contains the UNICODE data.
length - The number of characters in the stream.
Throws:
java.sql.SQLException - This exception is always thrown

setRef

public void setRef(int parameterIndex,
                   java.sql.Ref x)
            throws java.sql.SQLException
JDBC 2.0 Sets a parameter to a REF(<structured-type>) object. This method is not supported.

Specified by:
setRef in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second is 2, and so on.
x - An object representing data of an SQL REF Type .
Throws:
java.sql.SQLException - This exception is always thrown as SAS software does not support REF SQL type.

setBlob

public void setBlob(int parameterIndex,
                    java.sql.Blob x)
             throws java.sql.SQLException
JDBC 2.0 Sets a parameter to a BLOB object. This method is not supported.

Specified by:
setBlob in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second is 2, and so on.
x - An object representing a BLOB.
Throws:
java.sql.SQLException - This exception is always thrown as SAS software does not support BLOB SQL type.

setClob

public void setClob(int parameterIndex,
                    java.sql.Clob x)
             throws java.sql.SQLException
JDBC 2.0 Sets a parameter to a CLOB object. This method is not supported.

Specified by:
setClob in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second is 2, and so on.
x - An object representing a CLOB.
Throws:
java.sql.SQLException - This exception is always thrown as SAS software does not support CLOB SQL type.

setArray

public void setArray(int parameterIndex,
                     java.sql.Array x)
              throws java.sql.SQLException
JDBC 2.0 Sets a parameter to an Array object. This method is not supported.

Specified by:
setArray in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second is 2, and so on.
x - An object representing an SQL array.
Throws:
java.sql.SQLException - This exception is always thrown as SAS software does not support Array SQL type.

getMetaData

public java.sql.ResultSetMetaData getMetaData()
                                       throws java.sql.SQLException
JDBC 2.0 Retrieves a ResultSetMetaData object that contains information about the columns of the ResultSet object that will be returned when this PreparedStatement object is executed.

Specified by:
getMetaData in interface java.sql.PreparedStatement
Returns:
The description of a ResultSet's columns as a ResultSetMetaData object.
Throws:
java.sql.SQLException - This exception is thrown if a database error occurs or if the result set is NULL.

setDate

public void setDate(int parameterIndex,
                    java.sql.Date x,
                    java.util.Calendar cal)
             throws java.sql.SQLException
JDBC 2.0 Sets a parameter to a java.sql.Date value.

Specified by:
setDate in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second is 2, and so on.
x - The parameter value, a java.sql.Date object.
cal - A Calendar object. Ignored if cal is NULL.
Throws:
java.sql.SQLException - This exception is thrown if parameter index is not valid.

setTime

public void setTime(int parameterIndex,
                    java.sql.Time x,
                    java.util.Calendar cal)
             throws java.sql.SQLException
JDBC 2.0 Sets a parameter to a java.sql.Time value.

Specified by:
setTime in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second is 2, and so on.
x - The parameter value, a java.sql.Time object.
cal - A Calendar object. Ignored if cal is NULL.
Throws:
java.sql.SQLException - This exception is thrown if parameter index is not valid.

setTimestamp

public void setTimestamp(int parameterIndex,
                         java.sql.Timestamp x,
                         java.util.Calendar cal)
                  throws java.sql.SQLException
JDBC 2.0 Sets a parameter to a java.sql.Timestamp value.

Specified by:
setTimestamp in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second is 2, and so on.
x - The parameter value, a java.sql.Timestamp value.
cal - A Calendar object. Ignored if cal is NULL.
Throws:
java.sql.SQLException - This exception is thrown if parameter index is not valid.

setNull

public void setNull(int parameterIndex,
                    int sqlType,
                    java.lang.String x)
             throws java.sql.SQLException
JDBC 2.0 Sets a parameter to SQL NULL. This method is not yet supported.

Specified by:
setNull in interface java.sql.PreparedStatement
Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second parameter is 2, and so on.
sqlType - An SQL type code that is defined by java.sql.Types.
x - An input String.
Throws:
java.sql.SQLException - This exception is always thrown.

registerOutParameter

public void registerOutParameter(int parameterIndex,
                                 int sqlType,
                                 java.lang.String x)
                          throws java.sql.SQLException
JDBC 2.0 This method is not yet supported.

Parameters:
parameterIndex - The parameter index. The first parameter is 1, the second parameter is 2, and so on.
sqlType - An SQL type code that is defined by java.sql.Types.
x - An input String.
Throws:
java.sql.SQLException - This exception is always thrown.

getParameterMetaData

public java.sql.ParameterMetaData getParameterMetaData()
                                                throws java.sql.SQLException
Retrieves the number, types and properties of this PreparedStatement object's parameters. Empty method implementation for JDK1.4 compliance.

Specified by:
getParameterMetaData in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - Always thrown to indicate that this method is not implemented.

setURL

public void setURL(int parameterIndex,
                   java.net.URL x)
            throws java.sql.SQLException
Sets the designated parameter to the given java.net.URL value. Empty method implementation for JDK1.4 compliance.

Specified by:
setURL in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - Always thrown to indicate that this method is not implemented.



Copyright © 2009 SAS Institute Inc. All Rights Reserved.