Class ClientPreparedStatement

    • Field Detail

      • sql_

        java.lang.String sql_
      • outputRegistered_

        boolean outputRegistered_
      • parameters_

        java.lang.Object[] parameters_
      • parameterSet_

        private boolean[] parameterSet_
      • parameterRegistered_

        boolean[] parameterRegistered_
      • parameterTypeList

        private java.util.ArrayList<int[]> parameterTypeList
      • positionedUpdateCursorName_

        private java.lang.String positionedUpdateCursorName_
      • listenToUnitOfWork_

        private boolean listenToUnitOfWork_
    • Constructor Detail

      • ClientPreparedStatement

        public ClientPreparedStatement​(Agent agent,
                                       ClientConnection connection,
                                       java.lang.String sql,
                                       Section section,
                                       ClientPooledConnection cpc)
                                throws SqlException
        The PreparedStatement constructor used for JDBC 2 positioned update statements. Called by material statement constructors. It has the ClientPooledConnection as one of its parameters this is used to raise the Statement Events when the prepared statement is closed
        Parameters:
        agent - The instance of NetAgent associated with this CallableStatement object.
        connection - The connection object associated with this PreparedStatement Object.
        sql - A String object that is the SQL statement to be sent to the database.
        section - Section
        cpc - The ClientPooledConnection wraps the underlying physical connection associated with this prepared statement. It is used to pass the Statement closed and the Statement error occurred events that occur back to the ClientPooledConnection.
        Throws:
        SqlException
      • ClientPreparedStatement

        public ClientPreparedStatement​(Agent agent,
                                       ClientConnection connection,
                                       java.lang.String sql,
                                       int type,
                                       int concurrency,
                                       int holdability,
                                       int autoGeneratedKeys,
                                       java.lang.String[] columnNames,
                                       int[] columnIndexes,
                                       ClientPooledConnection cpc)
                                throws SqlException
        The PreparedStatementConstructor used for jdbc 2 prepared statements with scroll attributes. Called by material statement constructors. It has the ClientPooledConnection as one of its parameters this is used to raise the Statement Events when the prepared statement is closed
        Parameters:
        agent - The instance of NetAgent associated with this CallableStatement object.
        connection - The connection object associated with this PreparedStatement Object.
        sql - A String object that is the SQL statement to be sent to the database.
        type - One of the ResultSet type constants.
        concurrency - One of the ResultSet concurrency constants.
        holdability - One of the ResultSet holdability constants.
        autoGeneratedKeys - a flag indicating whether auto-generated keys should be returned.
        columnNames - an array of column names indicating the columns that should be returned from the inserted row or rows.
        columnIndexes - an array of column names indicating the columns that should be returned from the inserted row.
        cpc - The ClientPooledConnection wraps the underlying physical connection associated with this prepared statement it is used to pass the Statement closed and the Statement error occurred events that occur back to the ClientPooledConnection.
        Throws:
        SqlException
    • Method Detail

      • setInput

        void setInput​(int parameterIndex,
                      java.lang.Object input)
      • initPreparedStatement

        private void initPreparedStatement()
      • resetParameters

        private void resetParameters()
      • resetPreparedStatement

        public void resetPreparedStatement​(Agent agent,
                                           ClientConnection connection,
                                           java.lang.String sql,
                                           int type,
                                           int concurrency,
                                           int holdability,
                                           int autoGeneratedKeys,
                                           java.lang.String[] columnNames,
                                           int[] columnIndexes)
                                    throws SqlException
        Throws:
        SqlException
      • initPreparedStatement

        private void initPreparedStatement​(java.lang.String sql)
                                    throws SqlException
        Throws:
        SqlException
      • addBatch

        public void addBatch​(java.lang.String sql)
                      throws java.sql.SQLException
        Specified by:
        addBatch in interface java.sql.Statement
        Overrides:
        addBatch in class ClientStatement
        Throws:
        java.sql.SQLException
      • execute

        public boolean execute​(java.lang.String sql)
                        throws java.sql.SQLException
        Specified by:
        execute in interface java.sql.Statement
        Overrides:
        execute in class ClientStatement
        Throws:
        java.sql.SQLException
      • executeQuery

        public java.sql.ResultSet executeQuery​(java.lang.String sql)
                                        throws java.sql.SQLException
        Specified by:
        executeQuery in interface java.sql.Statement
        Overrides:
        executeQuery in class ClientStatement
        Throws:
        java.sql.SQLException
      • executeUpdate

        public int executeUpdate​(java.lang.String sql)
                          throws java.sql.SQLException
        Specified by:
        executeUpdate in interface java.sql.Statement
        Overrides:
        executeUpdate in class ClientStatement
        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 parameterIndex,
                            int jdbcType)
                     throws java.sql.SQLException
        Specified by:
        setNull in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setNull

        public void setNull​(int parameterIndex,
                            int jdbcType,
                            java.lang.String typeName)
                     throws java.sql.SQLException
        Specified by:
        setNull in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setBoolean

        public void setBoolean​(int parameterIndex,
                               boolean x)
                        throws java.sql.SQLException
        Specified by:
        setBoolean in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setByte

        public void setByte​(int parameterIndex,
                            byte x)
                     throws java.sql.SQLException
        Specified by:
        setByte in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setShort

        public void setShort​(int parameterIndex,
                             short x)
                      throws java.sql.SQLException
        Specified by:
        setShort in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setInt

        public void setInt​(int parameterIndex,
                           int x)
                    throws java.sql.SQLException
        Specified by:
        setInt in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setLong

        public void setLong​(int parameterIndex,
                            long x)
                     throws java.sql.SQLException
        Specified by:
        setLong in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setLongX

        void setLongX​(int parameterIndex,
                      long x)
      • setFloat

        public void setFloat​(int parameterIndex,
                             float x)
                      throws java.sql.SQLException
        Specified by:
        setFloat in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setDouble

        public void setDouble​(int parameterIndex,
                              double x)
                       throws java.sql.SQLException
        Specified by:
        setDouble in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setBigDecimal

        public void setBigDecimal​(int parameterIndex,
                                  java.math.BigDecimal x)
                           throws java.sql.SQLException
        Specified by:
        setBigDecimal in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setDate

        public void setDate​(int parameterIndex,
                            java.sql.Date x,
                            java.util.Calendar calendar)
                     throws java.sql.SQLException
        Specified by:
        setDate in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setDate

        public void setDate​(int parameterIndex,
                            java.sql.Date x)
                     throws java.sql.SQLException
        Specified by:
        setDate in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setTime

        public void setTime​(int parameterIndex,
                            java.sql.Time x,
                            java.util.Calendar calendar)
                     throws java.sql.SQLException
        Specified by:
        setTime in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setTime

        public void setTime​(int parameterIndex,
                            java.sql.Time x)
                     throws java.sql.SQLException
        Specified by:
        setTime in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setTimestamp

        public void setTimestamp​(int parameterIndex,
                                 java.sql.Timestamp x,
                                 java.util.Calendar calendar)
                          throws java.sql.SQLException
        Specified by:
        setTimestamp in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setTimestamp

        public void setTimestamp​(int parameterIndex,
                                 java.sql.Timestamp x)
                          throws java.sql.SQLException
        Specified by:
        setTimestamp in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setString

        public void setString​(int parameterIndex,
                              java.lang.String x)
                       throws java.sql.SQLException
        Specified by:
        setString in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setBytes

        public void setBytes​(int parameterIndex,
                             byte[] x)
                      throws java.sql.SQLException
        Specified by:
        setBytes 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
        sets the parameter to the Binary Stream object
        Specified by:
        setBinaryStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the first parameter is 1, the second is 2, ...
        x - the java input stream which contains the binary parameter value
        length - the number of bytes in the stream
        Throws:
        java.sql.SQLException - thrown on failure.
      • setBinaryStream

        public void setBinaryStream​(int parameterIndex,
                                    java.io.InputStream x,
                                    int length)
                             throws java.sql.SQLException
        sets the parameter to the Binary Stream object
        Specified by:
        setBinaryStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the first parameter is 1, the second is 2, ...
        x - the java input stream which contains the binary parameter value
        length - the number of bytes in the stream
        Throws:
        java.sql.SQLException - thrown on failure.
      • setBinaryStreamX

        private void setBinaryStreamX​(int parameterIndex,
                                      java.io.InputStream x,
                                      int length)
                               throws SqlException
        Throws:
        SqlException
      • setAsciiStream

        public void setAsciiStream​(int parameterIndex,
                                   java.io.InputStream x,
                                   long length)
                            throws java.sql.SQLException
        We do this inefficiently and read it all in here. The target type is assumed to be a String.
        Specified by:
        setAsciiStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the first parameter is 1, the second is 2, ...
        x - the java input stream which contains the ASCII parameter value
        length - the number of bytes in the stream
        Throws:
        java.sql.SQLException - thrown on failure.
      • setAsciiStream

        public void setAsciiStream​(int parameterIndex,
                                   java.io.InputStream x,
                                   int length)
                            throws java.sql.SQLException
        We do this inefficiently and read it all in here. The target type is assumed to be a String.
        Specified by:
        setAsciiStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the first parameter is 1, the second is 2, ...
        x - the java input stream which contains the ASCII parameter value
        length - the number of bytes in the stream
        Throws:
        java.sql.SQLException - thrown on failure.
      • checkStreamLength

        private void checkStreamLength​(long length)
                                throws java.sql.SQLException
        Check the length passed in for the stream that is to be set. If length is larger than Integer.MAX_VALUE or smaller that 0, we fail by throwing an SQLException.
        Parameters:
        length - The length of the stream being set
        Throws:
        java.sql.SQLException - Thrown for a negative or too large length.
      • checkTypeForSetAsciiStream

        private void checkTypeForSetAsciiStream​(int parameterIndex)
                                         throws SqlException,
                                                java.sql.SQLException
        Throws:
        SqlException
        java.sql.SQLException
      • checkTypeForSetBinaryStream

        private void checkTypeForSetBinaryStream​(int parameterIndex)
                                          throws SqlException,
                                                 java.sql.SQLException
        Throws:
        SqlException
        java.sql.SQLException
      • checkTypeForSetCharacterStream

        private void checkTypeForSetCharacterStream​(int parameterIndex)
                                             throws SqlException,
                                                    java.sql.SQLException
        Throws:
        SqlException
        java.sql.SQLException
      • checkTypeForSetBlob

        private void checkTypeForSetBlob​(int parameterIndex)
                                  throws SqlException,
                                         java.sql.SQLException
        Throws:
        SqlException
        java.sql.SQLException
      • checkTypeForSetClob

        private void checkTypeForSetClob​(int parameterIndex)
                                  throws SqlException,
                                         java.sql.SQLException
        Throws:
        SqlException
        java.sql.SQLException
      • setUnicodeStream

        public void setUnicodeStream​(int parameterIndex,
                                     java.io.InputStream x,
                                     int length)
                              throws java.sql.SQLException
        Deprecated.
        Sets the specified parameter to the given input stream. Deprecated in JDBC 3.0 and this method will always just throw a feature not implemented exception.
        Specified by:
        setUnicodeStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the first parameter is 1, the second is 2, ...
        x - the java input stream which contains the UNICODE parameter value
        length - the number of bytes in the stream
        Throws:
        java.sql.SQLException - throws feature not implemented.
      • setCharacterStream

        public void setCharacterStream​(int parameterIndex,
                                       java.io.Reader x)
                                throws java.sql.SQLException
        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.
        Specified by:
        setCharacterStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the first parameter is 1, the second is 2, ...
        x - the java.io.Reader object that contains the Unicode data
        Throws:
        java.sql.SQLException - if a database access error occurs or this method is called on a closed PreparedStatement
      • setCharacterStream

        public void setCharacterStream​(int parameterIndex,
                                       java.io.Reader x,
                                       long length)
                                throws java.sql.SQLException
        Sets the designated parameter to the given Reader, which will have the specified number of bytes.
        Specified by:
        setCharacterStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the index of the parameter to which this set method is applied
        x - the java Reader which contains the UNICODE value
        length - the number of bytes in the stream
        Throws:
        java.sql.SQLException - thrown on failure.
      • setCharacterStream

        public void setCharacterStream​(int parameterIndex,
                                       java.io.Reader x,
                                       int length)
                                throws java.sql.SQLException
        Sets the designated parameter to the given Reader, which will have the specified number of bytes.
        Specified by:
        setCharacterStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the index of the parameter to which this set method is applied
        x - the java Reader which contains the UNICODE value
        length - the number of bytes in the stream
        Throws:
        java.sql.SQLException - thrown on failure.
      • setBlob

        public void setBlob​(int parameterIndex,
                            java.sql.Blob x)
                     throws java.sql.SQLException
        Specified by:
        setBlob in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setClob

        public void setClob​(int parameterIndex,
                            java.sql.Clob x)
                     throws java.sql.SQLException
        Specified by:
        setClob in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setArray

        public void setArray​(int parameterIndex,
                             java.sql.Array x)
                      throws java.sql.SQLException
        Specified by:
        setArray in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setRef

        public void setRef​(int parameterIndex,
                           java.sql.Ref x)
                    throws java.sql.SQLException
        Specified by:
        setRef in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setObject

        public void setObject​(int parameterIndex,
                              java.lang.Object x)
                       throws java.sql.SQLException
        Specified by:
        setObject in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setUDTX

        private void setUDTX​(int parameterIndex,
                             java.lang.Object x)
                      throws SqlException,
                             java.sql.SQLException
        Set a UDT parameter to an object value.
        Throws:
        SqlException
        java.sql.SQLException
      • setObject

        public void setObject​(int parameterIndex,
                              java.lang.Object x,
                              int targetJdbcType)
                       throws java.sql.SQLException
        Specified by:
        setObject in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setObject

        public void setObject​(int parameterIndex,
                              java.lang.Object x,
                              int targetJdbcType,
                              int scale)
                       throws java.sql.SQLException
        Specified by:
        setObject in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • setObjectX

        private void setObjectX​(int parameterIndex,
                                java.lang.Object x,
                                int targetJdbcType,
                                int scale)
                         throws SqlException
        Throws:
        SqlException
      • clearParameters

        public void clearParameters()
                             throws java.sql.SQLException
        Specified by:
        clearParameters 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
      • addBatch

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

        public int[] executeBatch()
                           throws java.sql.SQLException
        Specified by:
        executeBatch in interface java.sql.Statement
        Overrides:
        executeBatch in class ClientStatement
        Throws:
        java.sql.SQLException
      • getMetaData

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

        public boolean execute​(java.lang.String sql,
                               int autoGeneratedKeys)
                        throws java.sql.SQLException
        Specified by:
        execute in interface java.sql.Statement
        Overrides:
        execute in class ClientStatement
        Throws:
        java.sql.SQLException
      • execute

        public boolean execute​(java.lang.String sql,
                               java.lang.String[] columnNames)
                        throws java.sql.SQLException
        Specified by:
        execute in interface java.sql.Statement
        Overrides:
        execute in class ClientStatement
        Throws:
        java.sql.SQLException
      • execute

        public boolean execute​(java.lang.String sql,
                               int[] columnIndexes)
                        throws java.sql.SQLException
        Specified by:
        execute in interface java.sql.Statement
        Overrides:
        execute in class ClientStatement
        Throws:
        java.sql.SQLException
      • executeUpdate

        public int executeUpdate​(java.lang.String sql,
                                 int autoGeneratedKeys)
                          throws java.sql.SQLException
        Specified by:
        executeUpdate in interface java.sql.Statement
        Overrides:
        executeUpdate in class ClientStatement
        Throws:
        java.sql.SQLException
      • executeUpdate

        public int executeUpdate​(java.lang.String sql,
                                 java.lang.String[] columnNames)
                          throws java.sql.SQLException
        Specified by:
        executeUpdate in interface java.sql.Statement
        Overrides:
        executeUpdate in class ClientStatement
        Throws:
        java.sql.SQLException
      • executeUpdate

        public int executeUpdate​(java.lang.String sql,
                                 int[] columnIndexes)
                          throws java.sql.SQLException
        Specified by:
        executeUpdate in interface java.sql.Statement
        Overrides:
        executeUpdate in class ClientStatement
        Throws:
        java.sql.SQLException
      • setURL

        public void setURL​(int parameterIndex,
                           java.net.URL x)
                    throws java.sql.SQLException
        Specified by:
        setURL in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • getParameterMetaData

        public java.sql.ParameterMetaData getParameterMetaData()
                                                        throws java.sql.SQLException
        Specified by:
        getParameterMetaData in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • writeExecute

        private void writeExecute​(Section section,
                                  ColumnMetaData parameterMetaData,
                                  java.lang.Object[] inputs,
                                  int numInputColumns,
                                  boolean outputExpected,
                                  boolean chainedWritesFollowingSetLob)
                           throws SqlException
        Throws:
        SqlException
      • writeOpenQuery

        private void writeOpenQuery​(Section section,
                                    int fetchSize,
                                    int resultSetType,
                                    int numInputColumns,
                                    ColumnMetaData parameterMetaData,
                                    java.lang.Object[] inputs)
                             throws SqlException
        Throws:
        SqlException
      • writePrepareDescribeInputOutput

        private void writePrepareDescribeInputOutput()
                                              throws SqlException
        Throws:
        SqlException
      • readPrepareDescribeInputOutput

        private void readPrepareDescribeInputOutput()
                                             throws SqlException
        Throws:
        SqlException
      • completePrepareDescribe

        private void completePrepareDescribe()
      • expandObjectArray

        private java.lang.Object[] expandObjectArray​(java.lang.Object[] array,
                                                     int newLength)
      • expandBooleanArray

        private boolean[] expandBooleanArray​(boolean[] array,
                                             int newLength)
      • executeBatchX

        private long[] executeBatchX​(boolean supportsQueryBatchRequest)
                              throws SqlException,
                                     java.sql.SQLException
        Throws:
        SqlException
        java.sql.SQLException
      • executeBatchRequestX

        private long[] executeBatchRequestX​(boolean supportsQueryBatchRequest)
                                     throws SqlException,
                                            java.sql.BatchUpdateException
        Throws:
        SqlException
        java.sql.BatchUpdateException
      • getJdbcStatementInterfaceName

        protected java.lang.String getJdbcStatementInterfaceName()
        Returns the name of the java.sql interface implemented by this class.
        Overrides:
        getJdbcStatementInterfaceName in class ClientStatement
        Returns:
        name of java.sql interface
      • checkForValidParameterIndex

        void checkForValidParameterIndex​(int parameterIndex)
                                  throws SqlException
        Throws:
        SqlException
      • markClosed

        protected void markClosed​(boolean removeListener)
        Description copied from class: ClientStatement
        This method cleans up client-side resources held by this Statement. If removeListener is true, the Statement is removed from open statements list and PreparedStatement is also removed from commit and rollback listeners list. This is called from the close methods.
        Overrides:
        markClosed in class ClientStatement
        Parameters:
        removeListener - if true the Statement will be removed from the open statements list and PreparedStatement will also be removed from commit and rollback listeners list in org.apache.derby.client.am.Connection.
      • setAsciiStream

        public void setAsciiStream​(int parameterIndex,
                                   java.io.InputStream x)
                            throws java.sql.SQLException
        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.
        Specified by:
        setAsciiStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the first parameter is 1, the second is 2, ...
        x - the Java input stream that contains the ASCII parameter value
        Throws:
        java.sql.SQLException - if a database access error occurs or this method is called on a closed PreparedStatement
      • setBinaryStream

        public void setBinaryStream​(int parameterIndex,
                                    java.io.InputStream x)
                             throws java.sql.SQLException
        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.
        Specified by:
        setBinaryStream in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - the first parameter is 1, the second is 2, ...
        x - the java input stream which contains the binary parameter value
        Throws:
        java.sql.SQLException - if a database access error occurs or this method is called on a closed PreparedStatement
      • setClob

        public void setClob​(int parameterIndex,
                            java.io.Reader reader)
                     throws java.sql.SQLException
        Sets the designated parameter to a Reader object.
        Specified by:
        setClob in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - index of the first parameter is 1, the second is 2, ...
        reader - an object that contains the data to set the parameter value to.
        Throws:
        java.sql.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
      • setClob

        public void setClob​(int parameterIndex,
                            java.io.Reader reader,
                            long length)
                     throws java.sql.SQLException
        Sets the designated parameter to a Reader object.
        Specified by:
        setClob in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - index of the first parameter is 1, the second is 2, ...
        reader - An object that contains the data to set the parameter value to.
        length - the number of characters in the parameter data.
        Throws:
        java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement, or if the length specified is less than zero.
      • setBlob

        public void setBlob​(int parameterIndex,
                            java.io.InputStream inputStream)
                     throws java.sql.SQLException
        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
        Specified by:
        setBlob in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - index of the first parameter is 1, the second is 2, ...
        inputStream - an object that contains the data to set the parameter value to.
        Throws:
        java.sql.SQLException - 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
      • setBlob

        public void setBlob​(int parameterIndex,
                            java.io.InputStream inputStream,
                            long length)
                     throws java.sql.SQLException
        Sets the designated parameter to a InputStream object.
        Specified by:
        setBlob in interface java.sql.PreparedStatement
        Parameters:
        parameterIndex - index of the first parameter is 1, the second is 2, ...
        inputStream - An object that contains the data to set the parameter value to.
        length - the number of bytes in the parameter data.
        Throws:
        java.sql.SQLException - if parameterIndex does not correspond to a parameter marker in the SQL statement, if the length specified is less than zero or if the number of bytes in the inputstream does not match the specfied length.
      • setNString

        public void setNString​(int index,
                               java.lang.String value)
                        throws java.sql.SQLException
        Specified by:
        setNString 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 index,
                                        java.io.Reader value,
                                        long length)
                                 throws java.sql.SQLException
        Specified by:
        setNCharacterStream in interface java.sql.PreparedStatement
        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.io.Reader reader,
                             long length)
                      throws java.sql.SQLException
        Specified by:
        setNClob 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
      • setNClob

        public void setNClob​(int index,
                             java.sql.NClob value)
                      throws java.sql.SQLException
        Specified by:
        setNClob 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
      • executeLargeUpdate

        public long executeLargeUpdate()
                                throws java.sql.SQLException
        Specified by:
        executeLargeUpdate in interface java.sql.PreparedStatement
        Throws:
        java.sql.SQLException
      • checkStatementValidity

        private void checkStatementValidity​(SqlException sqle)
                                     throws java.sql.SQLException
        Throws:
        java.sql.SQLException
      • checkStatus

        protected void checkStatus()
                            throws java.sql.SQLException

        Check for closed statement and extract the SQLException if it is raised.

        Throws:
        java.sql.SQLException