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, java.sql.Wrapper

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 parameterIndex, java.io.InputStream x)
           
 void setAsciiStream(int columnIndex, java.io.InputStream value, int length)
           
 void setAsciiStream(int parameterIndex, java.io.InputStream x, long length)
           
 void setBigDecimal(int columnIndex, java.math.BigDecimal value)
           
 void setBinaryStream(int parameterIndex, java.io.InputStream x)
           
 void setBinaryStream(int columnIndex, java.io.InputStream value, int length)
           
 void setBinaryStream(int parameterIndex, java.io.InputStream x, long length)
           
 void setBlob(int columnIndex, java.sql.Blob value)
           
 void setBlob(int parameterIndex, java.io.InputStream inputStream)
           
 void setBlob(int parameterIndex, java.io.InputStream inputStream, long length)
           
 void setBoolean(int columnIndex, boolean value)
           
 void setByte(int columnIndex, byte value)
           
 void setBytes(int columnIndex, byte[] value)
           
 void setCharacterStream(int parameterIndex, java.io.Reader reader)
           
 void setCharacterStream(int columnIndex, java.io.Reader value, int length)
           
 void setCharacterStream(int parameterIndex, java.io.Reader reader, long lenght)
           
 void setClob(int columnIndex, java.sql.Clob value)
           
 void setClob(int parameterIndex, java.io.Reader reader)
           
 void setClob(int parameterIndex, java.io.Reader reader, long length)
           
 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 setNCharacterStream(int parameterIndex, java.io.Reader value)
           
 void setNCharacterStream(int parameterIndex, java.io.Reader value, long length)
           
 void setNClob(int parameterIndex, java.sql.NClob value)
           
 void setNClob(int parameterIndex, java.io.Reader reader)
           
 void setNClob(int parameterIndex, java.io.Reader reader, long length)
           
 void setNString(int parameterIndex, java.lang.String 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 setRowId(int parameterIndex, java.sql.RowId x)
           
 void setShort(int columnIndex, short value)
           
 void setSQLXML(int parameterIndex, java.sql.SQLXML xmlObject)
           
 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, isClosed, isPoolable, isWrapperFor, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout, unwrap
 
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, isClosed, isPoolable, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout
 
Methods inherited from interface java.sql.Wrapper
isWrapperFor, unwrap
 

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

setNClob

public void setNClob(int parameterIndex,
                     java.io.Reader reader)
              throws java.sql.SQLException
Specified by:
setNClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNClob

public void setNClob(int parameterIndex,
                     java.sql.NClob value)
              throws java.sql.SQLException
Specified by:
setNClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNClob

public void setNClob(int parameterIndex,
                     java.io.Reader reader,
                     long length)
              throws java.sql.SQLException
Specified by:
setNClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBlob

public void setBlob(int parameterIndex,
                    java.io.InputStream inputStream)
             throws java.sql.SQLException
Specified by:
setBlob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBlob

public void setBlob(int parameterIndex,
                    java.io.InputStream inputStream,
                    long length)
             throws java.sql.SQLException
Specified by:
setBlob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setClob

public void setClob(int parameterIndex,
                    java.io.Reader reader)
             throws java.sql.SQLException
Specified by:
setClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setClob

public void setClob(int parameterIndex,
                    java.io.Reader reader,
                    long length)
             throws java.sql.SQLException
Specified by:
setClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNCharacterStream

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

setNCharacterStream

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

setCharacterStream

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

setCharacterStream

public void setCharacterStream(int parameterIndex,
                               java.io.Reader reader,
                               long lenght)
                        throws java.sql.SQLException
Specified by:
setCharacterStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBinaryStream

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

setBinaryStream

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

setAsciiStream

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

setAsciiStream

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

setSQLXML

public void setSQLXML(int parameterIndex,
                      java.sql.SQLXML xmlObject)
               throws java.sql.SQLException
Specified by:
setSQLXML in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNString

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

setRowId

public void setRowId(int parameterIndex,
                     java.sql.RowId x)
              throws java.sql.SQLException
Specified by:
setRowId in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException


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