org.postgresql.pljava.jdbc
Class SPIPreparedStatement

java.lang.Object
  extended by org.postgresql.pljava.jdbc.SPIStatement
      extended by org.postgresql.pljava.jdbc.SPIPreparedStatement
All Implemented Interfaces:
java.sql.PreparedStatement, java.sql.Statement

public class SPIPreparedStatement
extends SPIStatement
implements java.sql.PreparedStatement


Field Summary
 
Fields inherited from interface java.sql.Statement
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO
 
Constructor Summary
SPIPreparedStatement(SPIConnection conn, java.lang.String statement, int paramCount)
           
 
Method Summary
 void addBatch()
           
 void addBatch(java.lang.String statement)
          The prepared statement cannot have other statements added too it.
 void clearParameters()
           
 void close()
           
 boolean execute()
           
 boolean execute(java.lang.String statement)
          The prepared statement cannot be used for executing oter statements.
protected  int executeBatchEntry(java.lang.Object batchEntry)
           
 java.sql.ResultSet executeQuery()
           
 int executeUpdate()
           
 java.sql.ResultSetMetaData getMetaData()
          ResultSetMetaData is not yet supported.
 java.sql.ParameterMetaData getParameterMetaData()
          Due to the design of the SPI_prepare, it is currently impossible to obtain the correct parameter meta data before all the parameters have been set, hence a ParameterMetaData obtained prior to setting the paramteres will have all parameters set to the default type Types.VARCHAR.
 void setArray(int columnIndex, java.sql.Array value)
           
 void setAsciiStream(int columnIndex, java.io.InputStream value, int length)
           
 void setBigDecimal(int columnIndex, java.math.BigDecimal value)
           
 void setBinaryStream(int columnIndex, java.io.InputStream value, int length)
           
 void setBlob(int columnIndex, java.sql.Blob value)
           
 void setBoolean(int columnIndex, boolean value)
           
 void setByte(int columnIndex, byte value)
           
 void setBytes(int columnIndex, byte[] value)
           
 void setCharacterStream(int columnIndex, java.io.Reader value, int length)
           
 void setClob(int columnIndex, java.sql.Clob value)
           
 void setDate(int columnIndex, java.sql.Date value)
           
 void setDate(int columnIndex, java.sql.Date value, java.util.Calendar cal)
           
 void setDouble(int columnIndex, double value)
           
 void setFloat(int columnIndex, float value)
           
 void setInt(int columnIndex, int value)
           
 void setLong(int columnIndex, long value)
           
 void setNull(int columnIndex, int sqlType)
           
 void setNull(int columnIndex, int sqlType, java.lang.String typeName)
           
 void setObject(int columnIndex, java.lang.Object value)
           
 void setObject(int columnIndex, java.lang.Object value, int sqlType)
           
 void setObject(int columnIndex, java.lang.Object value, int sqlType, int scale)
           
 void setRef(int columnIndex, java.sql.Ref value)
           
 void setShort(int columnIndex, short value)
           
 void setString(int columnIndex, java.lang.String value)
           
 void setTime(int columnIndex, java.sql.Time value)
           
 void setTime(int columnIndex, java.sql.Time value, java.util.Calendar cal)
           
 void setTimestamp(int columnIndex, java.sql.Timestamp value)
           
 void setTimestamp(int columnIndex, java.sql.Timestamp value, java.util.Calendar cal)
           
 void setUnicodeStream(int columnIndex, java.io.InputStream value, int arg2)
          Deprecated.  
 void setURL(int columnIndex, java.net.URL value)
           
 java.lang.String toString()
           
 
Methods inherited from class org.postgresql.pljava.jdbc.SPIStatement
cancel, clearBatch, clearWarnings, execute, execute, execute, executeBatch, executePlan, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, internalAddBatch, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.sql.Statement
cancel, clearBatch, clearWarnings, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setQueryTimeout
 

Constructor Detail

SPIPreparedStatement

public SPIPreparedStatement(SPIConnection conn,
                            java.lang.String statement,
                            int paramCount)
Method Detail

close

public void close()
           throws java.sql.SQLException
Specified by:
close in interface java.sql.Statement
Overrides:
close in class SPIStatement
Throws:
java.sql.SQLException

executeQuery

public java.sql.ResultSet executeQuery()
                                throws java.sql.SQLException
Specified by:
executeQuery in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

executeUpdate

public int executeUpdate()
                  throws java.sql.SQLException
Specified by:
executeUpdate in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNull

public void setNull(int columnIndex,
                    int sqlType)
             throws java.sql.SQLException
Specified by:
setNull in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBoolean

public void setBoolean(int columnIndex,
                       boolean value)
                throws java.sql.SQLException
Specified by:
setBoolean in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setByte

public void setByte(int columnIndex,
                    byte value)
             throws java.sql.SQLException
Specified by:
setByte in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setShort

public void setShort(int columnIndex,
                     short value)
              throws java.sql.SQLException
Specified by:
setShort in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setInt

public void setInt(int columnIndex,
                   int value)
            throws java.sql.SQLException
Specified by:
setInt in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setLong

public void setLong(int columnIndex,
                    long value)
             throws java.sql.SQLException
Specified by:
setLong in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setFloat

public void setFloat(int columnIndex,
                     float value)
              throws java.sql.SQLException
Specified by:
setFloat in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setDouble

public void setDouble(int columnIndex,
                      double value)
               throws java.sql.SQLException
Specified by:
setDouble in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBigDecimal

public void setBigDecimal(int columnIndex,
                          java.math.BigDecimal value)
                   throws java.sql.SQLException
Specified by:
setBigDecimal in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setString

public void setString(int columnIndex,
                      java.lang.String value)
               throws java.sql.SQLException
Specified by:
setString in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBytes

public void setBytes(int columnIndex,
                     byte[] value)
              throws java.sql.SQLException
Specified by:
setBytes in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setDate

public void setDate(int columnIndex,
                    java.sql.Date value)
             throws java.sql.SQLException
Specified by:
setDate in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setTime

public void setTime(int columnIndex,
                    java.sql.Time value)
             throws java.sql.SQLException
Specified by:
setTime in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setTimestamp

public void setTimestamp(int columnIndex,
                         java.sql.Timestamp value)
                  throws java.sql.SQLException
Specified by:
setTimestamp in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setAsciiStream

public void setAsciiStream(int columnIndex,
                           java.io.InputStream value,
                           int length)
                    throws java.sql.SQLException
Specified by:
setAsciiStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setUnicodeStream

public void setUnicodeStream(int columnIndex,
                             java.io.InputStream value,
                             int arg2)
                      throws java.sql.SQLException
Deprecated. 

Specified by:
setUnicodeStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBinaryStream

public void setBinaryStream(int columnIndex,
                            java.io.InputStream value,
                            int length)
                     throws java.sql.SQLException
Specified by:
setBinaryStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

clearParameters

public void clearParameters()
                     throws java.sql.SQLException
Specified by:
clearParameters in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setObject

public void setObject(int columnIndex,
                      java.lang.Object value,
                      int sqlType,
                      int scale)
               throws java.sql.SQLException
Specified by:
setObject in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setObject

public void setObject(int columnIndex,
                      java.lang.Object value,
                      int sqlType)
               throws java.sql.SQLException
Specified by:
setObject in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setObject

public void setObject(int columnIndex,
                      java.lang.Object value)
               throws java.sql.SQLException
Specified by:
setObject in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

execute

public boolean execute()
                throws java.sql.SQLException
Specified by:
execute in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

execute

public boolean execute(java.lang.String statement)
                throws java.sql.SQLException
The prepared statement cannot be used for executing oter statements.

Specified by:
execute in interface java.sql.Statement
Overrides:
execute in class SPIStatement
Throws:
java.sql.SQLException - indicating that this feature is not supported.

addBatch

public void addBatch()
              throws java.sql.SQLException
Specified by:
addBatch in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

addBatch

public void addBatch(java.lang.String statement)
              throws java.sql.SQLException
The prepared statement cannot have other statements added too it.

Specified by:
addBatch in interface java.sql.Statement
Overrides:
addBatch in class SPIStatement
Throws:
java.sql.SQLException - indicating that this feature is not supported.

setCharacterStream

public void setCharacterStream(int columnIndex,
                               java.io.Reader value,
                               int length)
                        throws java.sql.SQLException
Specified by:
setCharacterStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setRef

public void setRef(int columnIndex,
                   java.sql.Ref value)
            throws java.sql.SQLException
Specified by:
setRef in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBlob

public void setBlob(int columnIndex,
                    java.sql.Blob value)
             throws java.sql.SQLException
Specified by:
setBlob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setClob

public void setClob(int columnIndex,
                    java.sql.Clob value)
             throws java.sql.SQLException
Specified by:
setClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setArray

public void setArray(int columnIndex,
                     java.sql.Array value)
              throws java.sql.SQLException
Specified by:
setArray in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

getMetaData

public java.sql.ResultSetMetaData getMetaData()
                                       throws java.sql.SQLException
ResultSetMetaData is not yet supported.

Specified by:
getMetaData in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException - indicating that this feature is not supported.

setDate

public void setDate(int columnIndex,
                    java.sql.Date value,
                    java.util.Calendar cal)
             throws java.sql.SQLException
Specified by:
setDate in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setTime

public void setTime(int columnIndex,
                    java.sql.Time value,
                    java.util.Calendar cal)
             throws java.sql.SQLException
Specified by:
setTime in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setTimestamp

public void setTimestamp(int columnIndex,
                         java.sql.Timestamp value,
                         java.util.Calendar cal)
                  throws java.sql.SQLException
Specified by:
setTimestamp in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNull

public void setNull(int columnIndex,
                    int sqlType,
                    java.lang.String typeName)
             throws java.sql.SQLException
Specified by:
setNull in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setURL

public void setURL(int columnIndex,
                   java.net.URL value)
            throws java.sql.SQLException
Specified by:
setURL in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getParameterMetaData

public java.sql.ParameterMetaData getParameterMetaData()
                                                throws java.sql.SQLException
Due to the design of the SPI_prepare, it is currently impossible to obtain the correct parameter meta data before all the parameters have been set, hence a ParameterMetaData obtained prior to setting the paramteres will have all parameters set to the default type Types.VARCHAR. Once the parameters have been set, a fair attempt is made to generate this object based on the supplied values.

Specified by:
getParameterMetaData in interface java.sql.PreparedStatement
Returns:
The meta data for parameter values.
Throws:
java.sql.SQLException

executeBatchEntry

protected int executeBatchEntry(java.lang.Object batchEntry)
                         throws java.sql.SQLException
Overrides:
executeBatchEntry in class SPIStatement
Throws:
java.sql.SQLException


Copyright (c) 2003, 2004 TADA AB - Taby Sweden. Distributed under the terms shown in COPYRIGHT