Class ClientResultSet

    • Field Detail

      • cursor_

        public Cursor cursor_
      • lobState

        private LOBStateTracker lobState
        Tracker object for LOB state, used to free locators on the server.
      • agent_

        protected Agent agent_
      • generatedSection_

        public Section generatedSection_
      • currentReader

        private java.io.Reader currentReader
      • scrollOrientation_relative__

        public static final int scrollOrientation_relative__
        See Also:
        Constant Field Values
      • scrollOrientation_absolute__

        public static final int scrollOrientation_absolute__
        See Also:
        Constant Field Values
      • scrollOrientation_after__

        public static final int scrollOrientation_after__
        See Also:
        Constant Field Values
      • scrollOrientation_before__

        public static final int scrollOrientation_before__
        See Also:
        Constant Field Values
      • scrollOrientation_prior__

        private static final int scrollOrientation_prior__
        See Also:
        Constant Field Values
      • scrollOrientation_first__

        private static final int scrollOrientation_first__
        See Also:
        Constant Field Values
      • scrollOrientation_last__

        private static final int scrollOrientation_last__
        See Also:
        Constant Field Values
      • scrollOrientation_current__

        private static final int scrollOrientation_current__
        See Also:
        Constant Field Values
      • scrollOrientation_next__

        private static final int scrollOrientation_next__
        See Also:
        Constant Field Values
      • sensitivity_insensitive__

        public static final int sensitivity_insensitive__
        See Also:
        Constant Field Values
      • sensitivity_sensitive_static__

        public static final int sensitivity_sensitive_static__
        See Also:
        Constant Field Values
      • sensitivity_sensitive_dynamic__

        public static final int sensitivity_sensitive_dynamic__
        See Also:
        Constant Field Values
      • wasNull_

        private int wasNull_
      • rsReturnability_

        private byte rsReturnability_
      • openOnClient_

        boolean openOnClient_
      • openOnServer_

        public boolean openOnServer_
      • queryTerminatingSqlca_

        public Sqlca queryTerminatingSqlca_
      • autoCommitted_

        boolean autoCommitted_
      • isValidCursorPosition_

        private boolean isValidCursorPosition_
      • savedIsValidCursorPosition_

        private boolean savedIsValidCursorPosition_
      • cursorHold_

        public boolean cursorHold_
      • queryInstanceIdentifier_

        public long queryInstanceIdentifier_
      • resultSetType_

        public int resultSetType_
      • resultSetConcurrency_

        int resultSetConcurrency_
      • resultSetHoldability_

        int resultSetHoldability_
      • scrollable_

        public boolean scrollable_
      • sensitivity_

        public int sensitivity_
      • isRowsetCursor_

        public boolean isRowsetCursor_
      • isBeforeFirst_

        private boolean isBeforeFirst_
      • isAfterLast_

        private boolean isAfterLast_
      • isFirst_

        private boolean isFirst_
      • isLast_

        private boolean isLast_
      • rowsetSqlca_

        public Sqlca[] rowsetSqlca_
      • suggestedFetchSize_

        protected int suggestedFetchSize_
      • fetchSize_

        public int fetchSize_
      • fetchDirection_

        private int fetchDirection_
      • rowCount_

        private long rowCount_
      • absolutePosition_

        private long absolutePosition_
      • firstRowInRowset_

        private long firstRowInRowset_
      • lastRowInRowset_

        private long lastRowInRowset_
      • currentRowInRowset_

        private long currentRowInRowset_
      • isOnInsertRow_

        private boolean isOnInsertRow_
      • isOnCurrentRow_

        private boolean isOnCurrentRow_
      • rowsReceivedInCurrentRowset_

        public int rowsReceivedInCurrentRowset_
      • rowsYetToBeReceivedForRowset_

        public int rowsYetToBeReceivedForRowset_
      • updatedColumns_

        private java.lang.Object[] updatedColumns_
      • columnUpdated_

        private boolean[] columnUpdated_
      • cursorUnpositionedOnServer_

        private boolean cursorUnpositionedOnServer_
      • maxRows_

        private long maxRows_
      • columnUsedFlags_

        private boolean[] columnUsedFlags_
        Indicates which columns have been fetched as a stream or as a LOB for a row. Created on-demand by a getXXXStream or a get[BC]lob call. Note that we only track columns that can be accessed as a stream or a LOB object.
      • listenToUnitOfWork_

        private boolean listenToUnitOfWork_
    • Constructor Detail

      • ClientResultSet

        protected ClientResultSet​(Agent agent,
                                  ClientStatement statement,
                                  Cursor cursor,
                                  int resultSetType,
                                  int resultSetConcurrency,
                                  int resultSetHoldability)
    • Method Detail

      • next

        public final boolean next()
                           throws java.sql.SQLException
        Specified by:
        next in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • close

        public void close()
                   throws java.sql.SQLException
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • closeStatementOnCompletion

        private void closeStatementOnCompletion()
        Close Statement if it is set to closeOnCompletion
      • nullDataForGC

        private void nullDataForGC()
      • flowCloseAndAutoCommitIfNotAutoCommitted

        private void flowCloseAndAutoCommitIfNotAutoCommitted()
                                                       throws SqlException
        Throws:
        SqlException
      • readCloseAndAutoCommit

        private void readCloseAndAutoCommit​(boolean readAutoCommit)
                                     throws SqlException
        Throws:
        SqlException
      • readAutoCommitIfNotAutoCommitted

        private void readAutoCommitIfNotAutoCommitted()
                                               throws SqlException
        Throws:
        SqlException
      • wasNull

        public boolean wasNull()
                        throws java.sql.SQLException
        Specified by:
        wasNull in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBoolean

        public boolean getBoolean​(int column)
                           throws java.sql.SQLException
        Specified by:
        getBoolean in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getByte

        public byte getByte​(int column)
                     throws java.sql.SQLException
        Specified by:
        getByte in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getShort

        public short getShort​(int column)
                       throws java.sql.SQLException
        Specified by:
        getShort in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getInt

        public int getInt​(int column)
                   throws java.sql.SQLException
        Specified by:
        getInt in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getLong

        public long getLong​(int column)
                     throws java.sql.SQLException
        Specified by:
        getLong in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getFloat

        public float getFloat​(int column)
                       throws java.sql.SQLException
        Specified by:
        getFloat in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getDouble

        public double getDouble​(int column)
                         throws java.sql.SQLException
        Specified by:
        getDouble in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBigDecimal

        public java.math.BigDecimal getBigDecimal​(int column,
                                                  int scale)
                                           throws java.sql.SQLException
        Deprecated.
        Specified by:
        getBigDecimal in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBigDecimal

        public java.math.BigDecimal getBigDecimal​(int column)
                                           throws java.sql.SQLException
        Specified by:
        getBigDecimal in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getDate

        public java.sql.Date getDate​(int column,
                                     java.util.Calendar cal)
                              throws java.sql.SQLException
        Specified by:
        getDate in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getDate

        public java.sql.Date getDate​(int column)
                              throws java.sql.SQLException
        Specified by:
        getDate in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getTime

        public java.sql.Time getTime​(int column,
                                     java.util.Calendar cal)
                              throws java.sql.SQLException
        Specified by:
        getTime in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getTime

        public java.sql.Time getTime​(int column)
                              throws java.sql.SQLException
        Specified by:
        getTime in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getTimestamp

        public java.sql.Timestamp getTimestamp​(int column,
                                               java.util.Calendar calendar)
                                        throws java.sql.SQLException
        Specified by:
        getTimestamp in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getTimestamp

        public java.sql.Timestamp getTimestamp​(int column)
                                        throws java.sql.SQLException
        Specified by:
        getTimestamp in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • createCalendar

        private static java.util.Calendar createCalendar​(java.util.Date date)
        Create a calendar with default locale and time zone.
        Parameters:
        date - the initial time of the calendar
        Returns:
        a calendar initialized to the specified time
      • convertFromDefaultCalendar

        private java.sql.Date convertFromDefaultCalendar​(java.sql.Date date,
                                                         java.util.Calendar cal)
        Convert a date originally set using the default calendar to a value representing the same date in a different calendar.
        Parameters:
        date - the date to convert
        cal - the calendar to convert it to
        Returns:
        a date object that represents the date in cal
      • convertFromDefaultCalendar

        private java.sql.Time convertFromDefaultCalendar​(java.sql.Time time,
                                                         java.util.Calendar cal)
        Convert a time originally set using the default calendar to a value representing the same time in a different calendar.
        Parameters:
        time - the time to convert
        cal - the calendar to convert it to
        Returns:
        a time object that represents the time in cal
      • convertFromDefaultCalendar

        private java.sql.Timestamp convertFromDefaultCalendar​(java.sql.Timestamp ts,
                                                              java.util.Calendar cal)
        Convert a timestamp originally set using the default calendar to a value representing the same timestamp in a different calendar.
        Parameters:
        ts - the timestamp to convert
        cal - the calendar to convert it to
        Returns:
        a timestamp object that represents the timestamp in cal
      • getString

        public java.lang.String getString​(int column)
                                   throws java.sql.SQLException
        Specified by:
        getString in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBytes

        public byte[] getBytes​(int column)
                        throws java.sql.SQLException
        Specified by:
        getBytes in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBinaryStream

        public java.io.InputStream getBinaryStream​(int column)
                                            throws java.sql.SQLException
        Specified by:
        getBinaryStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getAsciiStream

        public java.io.InputStream getAsciiStream​(int column)
                                           throws java.sql.SQLException
        Specified by:
        getAsciiStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getUnicodeStream

        public java.io.InputStream getUnicodeStream​(int column)
                                             throws java.sql.SQLException
        Deprecated.
        Retrieve the value of the specified column as a stream of two-byte Unicode characters. Deprecated in JDBC 2.0 and this method will just throw a feature not implemented exception.
        Specified by:
        getUnicodeStream in interface java.sql.ResultSet
        Parameters:
        column - the column to retrieve as a Unicode stream
        Throws:
        java.sql.SQLException - throws feature not implemented
      • getCharacterStream

        public java.io.Reader getCharacterStream​(int column)
                                          throws java.sql.SQLException
        Specified by:
        getCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBlob

        public java.sql.Blob getBlob​(int column)
                              throws java.sql.SQLException
        Specified by:
        getBlob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getClob

        public java.sql.Clob getClob​(int column)
                              throws java.sql.SQLException
        Specified by:
        getClob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getRef

        public java.sql.Ref getRef​(int column)
                            throws java.sql.SQLException
        Specified by:
        getRef in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getArray

        public java.sql.Array getArray​(int column)
                                throws java.sql.SQLException
        Specified by:
        getArray in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getObject

        public java.lang.Object getObject​(int column)
                                   throws java.sql.SQLException
        Specified by:
        getObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getObject

        public java.lang.Object getObject​(int column,
                                          java.util.Map map)
                                   throws java.sql.SQLException
        Specified by:
        getObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • wasNonNullSensitiveUpdate

        private boolean wasNonNullSensitiveUpdate​(int column)
      • wasNullSensitiveUpdate

        private boolean wasNullSensitiveUpdate​(int column)
      • setWasNull

        private void setWasNull​(int column)
      • isNull

        private boolean isNull​(int column)
      • getBoolean

        public final boolean getBoolean​(java.lang.String columnName)
                                 throws java.sql.SQLException
        Specified by:
        getBoolean in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getByte

        public final byte getByte​(java.lang.String columnName)
                           throws java.sql.SQLException
        Specified by:
        getByte in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getShort

        public final short getShort​(java.lang.String columnName)
                             throws java.sql.SQLException
        Specified by:
        getShort in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getInt

        public final int getInt​(java.lang.String columnName)
                         throws java.sql.SQLException
        Specified by:
        getInt in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getLong

        public final long getLong​(java.lang.String columnName)
                           throws java.sql.SQLException
        Specified by:
        getLong in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getFloat

        public final float getFloat​(java.lang.String columnName)
                             throws java.sql.SQLException
        Specified by:
        getFloat in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getDouble

        public final double getDouble​(java.lang.String columnName)
                               throws java.sql.SQLException
        Specified by:
        getDouble in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBigDecimal

        public final java.math.BigDecimal getBigDecimal​(java.lang.String columnName,
                                                        int scale)
                                                 throws java.sql.SQLException
        Deprecated.
        Specified by:
        getBigDecimal in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBigDecimal

        public final java.math.BigDecimal getBigDecimal​(java.lang.String columnName)
                                                 throws java.sql.SQLException
        Specified by:
        getBigDecimal in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getDate

        public final java.sql.Date getDate​(java.lang.String columnName)
                                    throws java.sql.SQLException
        Specified by:
        getDate in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getDate

        public final java.sql.Date getDate​(java.lang.String columnName,
                                           java.util.Calendar cal)
                                    throws java.sql.SQLException
        Specified by:
        getDate in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getTime

        public final java.sql.Time getTime​(java.lang.String columnName)
                                    throws java.sql.SQLException
        Specified by:
        getTime in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getTime

        public final java.sql.Time getTime​(java.lang.String columnName,
                                           java.util.Calendar cal)
                                    throws java.sql.SQLException
        Specified by:
        getTime in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getTimestamp

        public final java.sql.Timestamp getTimestamp​(java.lang.String columnName)
                                              throws java.sql.SQLException
        Specified by:
        getTimestamp in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getTimestamp

        public final java.sql.Timestamp getTimestamp​(java.lang.String columnName,
                                                     java.util.Calendar cal)
                                              throws java.sql.SQLException
        Specified by:
        getTimestamp in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getString

        public final java.lang.String getString​(java.lang.String columnName)
                                         throws java.sql.SQLException
        Specified by:
        getString in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBytes

        public final byte[] getBytes​(java.lang.String columnName)
                              throws java.sql.SQLException
        Specified by:
        getBytes in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBinaryStream

        public final java.io.InputStream getBinaryStream​(java.lang.String columnName)
                                                  throws java.sql.SQLException
        Specified by:
        getBinaryStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getAsciiStream

        public final java.io.InputStream getAsciiStream​(java.lang.String columnName)
                                                 throws java.sql.SQLException
        Specified by:
        getAsciiStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getUnicodeStream

        public final java.io.InputStream getUnicodeStream​(java.lang.String columnName)
                                                   throws java.sql.SQLException
        Deprecated.
        Specified by:
        getUnicodeStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getCharacterStream

        public final java.io.Reader getCharacterStream​(java.lang.String columnName)
                                                throws java.sql.SQLException
        Specified by:
        getCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getBlob

        public final java.sql.Blob getBlob​(java.lang.String columnName)
                                    throws java.sql.SQLException
        Specified by:
        getBlob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getClob

        public final java.sql.Clob getClob​(java.lang.String columnName)
                                    throws java.sql.SQLException
        Specified by:
        getClob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getArray

        public final java.sql.Array getArray​(java.lang.String columnName)
                                      throws java.sql.SQLException
        Specified by:
        getArray in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getRef

        public final java.sql.Ref getRef​(java.lang.String columnName)
                                  throws java.sql.SQLException
        Specified by:
        getRef in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getObject

        public final java.lang.Object getObject​(java.lang.String columnName)
                                         throws java.sql.SQLException
        Specified by:
        getObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getObject

        public final java.lang.Object getObject​(java.lang.String columnName,
                                                java.util.Map map)
                                         throws java.sql.SQLException
        Specified by:
        getObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getWarnings

        public final java.sql.SQLWarning getWarnings()
                                              throws java.sql.SQLException
        Returns the first SQLWarning reported on this ResultSet object, or null if there are no warnings. Subsequent warnings are chained on the returned object.
        Specified by:
        getWarnings in interface java.sql.ResultSet
        Returns:
        the first SQLWarning in the chain, or null if no warnings are reported
        Throws:
        java.sql.SQLException - if a database error occurs or the result set is closed
      • clearWarnings

        public final void clearWarnings()
                                 throws java.sql.SQLException
        Clear all warnings on this ResultSet and make subsequent calls to getWarnings() return null until a new warning is reported.
        Specified by:
        clearWarnings in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException - if a database error occurs or the result set is closed
      • clearWarningsX

        private void clearWarningsX()
      • getCursorName

        public java.lang.String getCursorName()
                                       throws java.sql.SQLException
        Specified by:
        getCursorName in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getMetaData

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

        public final int findColumn​(java.lang.String columnName)
                             throws java.sql.SQLException
        Specified by:
        findColumn in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • findColumnX

        protected final int findColumnX​(java.lang.String columnName,
                                        java.lang.String operation)
                                 throws SqlException
        Throws:
        SqlException
      • isBeforeFirst

        public boolean isBeforeFirst()
                              throws java.sql.SQLException
        Specified by:
        isBeforeFirst in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • isAfterLast

        public boolean isAfterLast()
                            throws java.sql.SQLException
        Specified by:
        isAfterLast in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • isFirst

        public boolean isFirst()
                        throws java.sql.SQLException
        Specified by:
        isFirst in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • isFirstX

        private boolean isFirstX()
      • isLast

        public boolean isLast()
                       throws java.sql.SQLException
        Specified by:
        isLast in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • beforeFirst

        public void beforeFirst()
                         throws java.sql.SQLException
        Specified by:
        beforeFirst in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • afterLast

        public void afterLast()
                       throws java.sql.SQLException
        Specified by:
        afterLast in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • first

        public boolean first()
                      throws java.sql.SQLException
        Specified by:
        first in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • last

        public boolean last()
                     throws java.sql.SQLException
        Specified by:
        last in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getRow

        public int getRow()
                   throws java.sql.SQLException
        Specified by:
        getRow in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • absolute

        public boolean absolute​(int row)
                         throws java.sql.SQLException
        Specified by:
        absolute in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • relative

        public boolean relative​(int rows)
                         throws java.sql.SQLException
        Specified by:
        relative in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • previous

        public boolean previous()
                         throws java.sql.SQLException
        Specified by:
        previous in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • setFetchDirection

        public void setFetchDirection​(int direction)
                               throws java.sql.SQLException
        Specified by:
        setFetchDirection in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getFetchDirection

        public int getFetchDirection()
                              throws java.sql.SQLException
        Specified by:
        getFetchDirection in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • setFetchSize

        public void setFetchSize​(int rows)
                          throws java.sql.SQLException
        Specified by:
        setFetchSize in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getFetchSize

        public int getFetchSize()
                         throws java.sql.SQLException
        Specified by:
        getFetchSize in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getType

        public int getType()
                    throws java.sql.SQLException
        Specified by:
        getType in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getConcurrency

        public int getConcurrency()
                           throws java.sql.SQLException
        Specified by:
        getConcurrency in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • rowUpdated

        public boolean rowUpdated()
                           throws java.sql.SQLException
        Specified by:
        rowUpdated in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • rowInserted

        public boolean rowInserted()
                            throws java.sql.SQLException
        Specified by:
        rowInserted in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • rowDeleted

        public boolean rowDeleted()
                           throws java.sql.SQLException
        Specified by:
        rowDeleted in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNull

        public void updateNull​(int column)
                        throws java.sql.SQLException
        Specified by:
        updateNull in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateBoolean

        public void updateBoolean​(int column,
                                  boolean x)
                           throws java.sql.SQLException
        Specified by:
        updateBoolean in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateByte

        public void updateByte​(int column,
                               byte x)
                        throws java.sql.SQLException
        Specified by:
        updateByte in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateShort

        public void updateShort​(int column,
                                short x)
                         throws java.sql.SQLException
        Specified by:
        updateShort in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateInt

        public void updateInt​(int column,
                              int x)
                       throws java.sql.SQLException
        Specified by:
        updateInt in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateLong

        public void updateLong​(int column,
                               long x)
                        throws java.sql.SQLException
        Specified by:
        updateLong in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateFloat

        public void updateFloat​(int column,
                                float x)
                         throws java.sql.SQLException
        Specified by:
        updateFloat in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateDouble

        public void updateDouble​(int column,
                                 double x)
                          throws java.sql.SQLException
        Specified by:
        updateDouble in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateBigDecimal

        public void updateBigDecimal​(int column,
                                     java.math.BigDecimal x)
                              throws java.sql.SQLException
        Specified by:
        updateBigDecimal in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateDate

        public void updateDate​(int column,
                               java.sql.Date x)
                        throws java.sql.SQLException
        Specified by:
        updateDate in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateTime

        public void updateTime​(int column,
                               java.sql.Time x)
                        throws java.sql.SQLException
        Specified by:
        updateTime in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateTimestamp

        public void updateTimestamp​(int column,
                                    java.sql.Timestamp x)
                             throws java.sql.SQLException
        Specified by:
        updateTimestamp in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateString

        public void updateString​(int column,
                                 java.lang.String x)
                          throws java.sql.SQLException
        Specified by:
        updateString in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateBytes

        public void updateBytes​(int column,
                                byte[] x)
                         throws java.sql.SQLException
        Specified by:
        updateBytes in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateBinaryStream

        public void updateBinaryStream​(int column,
                                       java.io.InputStream x,
                                       int length)
                                throws java.sql.SQLException
        Specified by:
        updateBinaryStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateAsciiStream

        public void updateAsciiStream​(int column,
                                      java.io.InputStream x,
                                      int length)
                               throws java.sql.SQLException
        Specified by:
        updateAsciiStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateCharacterStream

        public void updateCharacterStream​(int column,
                                          java.io.Reader x,
                                          int length)
                                   throws java.sql.SQLException
        Specified by:
        updateCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateObject

        public void updateObject​(int column,
                                 java.lang.Object x,
                                 int scale)
                          throws java.sql.SQLException
        Specified by:
        updateObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateObject

        public void updateObject​(int column,
                                 java.lang.Object x)
                          throws java.sql.SQLException
        Specified by:
        updateObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNCharacterStream

        public void updateNCharacterStream​(int columnIndex,
                                           java.io.Reader x)
                                    throws java.sql.SQLException
        Specified by:
        updateNCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNClob

        public void updateNClob​(int columnIndex,
                                java.io.Reader reader)
                         throws java.sql.SQLException
        Specified by:
        updateNClob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNull

        public void updateNull​(java.lang.String columnName)
                        throws java.sql.SQLException
        Specified by:
        updateNull in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateBoolean

        public void updateBoolean​(java.lang.String columnName,
                                  boolean x)
                           throws java.sql.SQLException
        Specified by:
        updateBoolean in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateByte

        public void updateByte​(java.lang.String columnName,
                               byte x)
                        throws java.sql.SQLException
        Specified by:
        updateByte in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateShort

        public void updateShort​(java.lang.String columnName,
                                short x)
                         throws java.sql.SQLException
        Specified by:
        updateShort in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateInt

        public void updateInt​(java.lang.String columnName,
                              int x)
                       throws java.sql.SQLException
        Specified by:
        updateInt in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateLong

        public void updateLong​(java.lang.String columnName,
                               long x)
                        throws java.sql.SQLException
        Specified by:
        updateLong in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateFloat

        public void updateFloat​(java.lang.String columnName,
                                float x)
                         throws java.sql.SQLException
        Specified by:
        updateFloat in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateDouble

        public void updateDouble​(java.lang.String columnName,
                                 double x)
                          throws java.sql.SQLException
        Specified by:
        updateDouble in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateBigDecimal

        public void updateBigDecimal​(java.lang.String columnName,
                                     java.math.BigDecimal x)
                              throws java.sql.SQLException
        Specified by:
        updateBigDecimal in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateDate

        public void updateDate​(java.lang.String columnName,
                               java.sql.Date x)
                        throws java.sql.SQLException
        Specified by:
        updateDate in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateTime

        public void updateTime​(java.lang.String columnName,
                               java.sql.Time x)
                        throws java.sql.SQLException
        Specified by:
        updateTime in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateTimestamp

        public void updateTimestamp​(java.lang.String columnName,
                                    java.sql.Timestamp x)
                             throws java.sql.SQLException
        Specified by:
        updateTimestamp in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateString

        public void updateString​(java.lang.String columnName,
                                 java.lang.String x)
                          throws java.sql.SQLException
        Specified by:
        updateString in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateBytes

        public void updateBytes​(java.lang.String columnName,
                                byte[] x)
                         throws java.sql.SQLException
        Specified by:
        updateBytes in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateBinaryStream

        public void updateBinaryStream​(java.lang.String columnName,
                                       java.io.InputStream x,
                                       int length)
                                throws java.sql.SQLException
        Specified by:
        updateBinaryStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateAsciiStream

        public void updateAsciiStream​(java.lang.String columnName,
                                      java.io.InputStream x,
                                      int length)
                               throws java.sql.SQLException
        Specified by:
        updateAsciiStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateCharacterStream

        public void updateCharacterStream​(java.lang.String columnName,
                                          java.io.Reader x,
                                          int length)
                                   throws java.sql.SQLException
        Specified by:
        updateCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateObject

        public void updateObject​(java.lang.String columnName,
                                 java.lang.Object x,
                                 int scale)
                          throws java.sql.SQLException
        Specified by:
        updateObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateObject

        public void updateObject​(java.lang.String columnName,
                                 java.lang.Object x)
                          throws java.sql.SQLException
        Specified by:
        updateObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNCharacterStream

        public void updateNCharacterStream​(java.lang.String columnName,
                                           java.io.Reader x)
                                    throws java.sql.SQLException
        Specified by:
        updateNCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNClob

        public void updateNClob​(java.lang.String columnName,
                                java.io.Reader reader)
                         throws java.sql.SQLException
        Specified by:
        updateNClob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • insertRow

        public void insertRow()
                       throws java.sql.SQLException
        Specified by:
        insertRow in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateRow

        public void updateRow()
                       throws java.sql.SQLException
        Specified by:
        updateRow in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • deleteRow

        public void deleteRow()
                       throws java.sql.SQLException
        Specified by:
        deleteRow in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • refreshRow

        public void refreshRow()
                        throws java.sql.SQLException
        Specified by:
        refreshRow in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • cancelRowUpdates

        public void cancelRowUpdates()
                              throws java.sql.SQLException
        Specified by:
        cancelRowUpdates in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • moveToInsertRow

        public void moveToInsertRow()
                             throws java.sql.SQLException
        Specified by:
        moveToInsertRow in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • moveToCurrentRow

        public void moveToCurrentRow()
                              throws java.sql.SQLException
        Specified by:
        moveToCurrentRow in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • moveToCurrentRowX

        private void moveToCurrentRowX()
                                throws SqlException
        Moves off the insert row if positioned there, and checks the current row for releasable LOB locators if positioned on a valid data row.
        Throws:
        SqlException - if releasing a LOB locator fails
      • getStatement

        public java.sql.Statement getStatement()
                                        throws java.sql.SQLException
        Retrieves the Statement object that produced this object, or null if the ResultSet was not produced by a Statement object.
        Specified by:
        getStatement in interface java.sql.ResultSet
        Returns:
        the Statement that produced this object or null
        Throws:
        java.sql.SQLException - if a database error occurs or the result set is closed
      • getURL

        public java.net.URL getURL​(int columnIndex)
                            throws java.sql.SQLException
        Specified by:
        getURL in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getURL

        public java.net.URL getURL​(java.lang.String columnName)
                            throws java.sql.SQLException
        Specified by:
        getURL in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateRef

        public void updateRef​(int columnIndex,
                              java.sql.Ref x)
                       throws java.sql.SQLException
        Specified by:
        updateRef in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateRef

        public void updateRef​(java.lang.String columnName,
                              java.sql.Ref x)
                       throws java.sql.SQLException
        Specified by:
        updateRef in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateBlob

        public void updateBlob​(int columnIndex,
                               java.sql.Blob x)
                        throws java.sql.SQLException
        Updates the designated column with a java.sql.Blob value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateBlob in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnIndex is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateBlob

        public void updateBlob​(java.lang.String columnName,
                               java.sql.Blob x)
                        throws java.sql.SQLException
        Updates the designated column with a java.sql.Blob value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateBlob in interface java.sql.ResultSet
        Parameters:
        columnName - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateBlob

        public void updateBlob​(int columnIndex,
                               java.io.InputStream x,
                               long length)
                        throws java.sql.SQLException
        Updates the designated column using the given input stream, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateBlob in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        x - 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 the columnIndex is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateBlob

        public void updateBlob​(java.lang.String columnName,
                               java.io.InputStream x,
                               long length)
                        throws java.sql.SQLException
        Updates the designated column using the given input stream, which will have the specified number of bytes. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateBlob in interface java.sql.ResultSet
        Parameters:
        columnName - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        x - 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 the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateArray

        public void updateArray​(int columnIndex,
                                java.sql.Array x)
                         throws java.sql.SQLException
        Specified by:
        updateArray in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateArray

        public void updateArray​(java.lang.String columnName,
                                java.sql.Array x)
                         throws java.sql.SQLException
        Specified by:
        updateArray in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • repositionScrollableResultSetBeforeJDBC1PositionedUpdateDelete

        boolean repositionScrollableResultSetBeforeJDBC1PositionedUpdateDelete()
                                                                        throws SqlException
        Throws:
        SqlException
      • setRowsetNoRowsEvent

        private void setRowsetNoRowsEvent()
      • isServersCursorPositionBeforeFirst

        private boolean isServersCursorPositionBeforeFirst()
                                                    throws SqlException
        Throws:
        SqlException
      • isServerCursorPositionAfterLast

        private boolean isServerCursorPositionAfterLast()
      • setValidCursorPosition

        public void setValidCursorPosition​(boolean isValidCursorPosition)
      • writeInsertRow

        private void writeInsertRow​(boolean chainedWritesFollowingSetLob)
                             throws java.sql.SQLException
        Throws:
        java.sql.SQLException
      • writeUpdateRow

        private void writeUpdateRow​(boolean chainedWritesFollowingSetLob)
                             throws java.sql.SQLException
        Throws:
        java.sql.SQLException
      • writeDeleteRow

        private void writeDeleteRow()
                             throws java.sql.SQLException
        Throws:
        java.sql.SQLException
      • nullOutReferenceInStatement

        private void nullOutReferenceInStatement()
      • markClosed

        void markClosed()
        Mark this ResultSet as closed. The ResultSet will not be removed from the commit and rollback listeners list in Connection.
      • markClosed

        void markClosed​(boolean removeListener)
        Mark this ResultSet as closed.
        Parameters:
        removeListener - if true the ResultSet will be removed from the commit and rollback listeners list in Connection.
      • markClosedOnServer

        public void markClosedOnServer()
        Mark this ResultSet as closed on the server.
      • markAutoCommitted

        void markAutoCommitted()
      • rowCountIsUnknown

        boolean rowCountIsUnknown()
      • updateColumn

        private void updateColumn​(int column,
                                  java.lang.Object value)
      • resetUpdatedColumnsForInsert

        private final void resetUpdatedColumnsForInsert()
      • resetUpdatedColumns

        private final void resetUpdatedColumns()
      • getRowUncast

        private final long getRowUncast()
      • checkGetterPreconditions

        private final void checkGetterPreconditions​(int column,
                                                    java.lang.String operation)
                                             throws SqlException
        Throws:
        SqlException
      • checkUpdatePreconditions

        private final void checkUpdatePreconditions​(int column,
                                                    java.lang.String operation)
                                             throws SqlException
        Throws:
        SqlException
      • checkForValidColumnIndex

        private void checkForValidColumnIndex​(int column)
                                       throws SqlException
        Throws:
        SqlException
      • checkForClosedResultSet

        protected final void checkForClosedResultSet​(java.lang.String operation)
                                              throws SqlException
        Throws:
        SqlException
      • checkForUpdatableResultSet

        private final void checkForUpdatableResultSet​(java.lang.String operation)
                                               throws SqlException
        Throws:
        SqlException
      • checkForValidCursorPosition

        private final void checkForValidCursorPosition()
                                                throws SqlException
        Throws:
        SqlException
      • checkThatResultSetTypeIsScrollable

        private final void checkThatResultSetTypeIsScrollable()
                                                       throws SqlException
        Throws:
        SqlException
      • checkThatResultSetIsNotDynamic

        private final void checkThatResultSetIsNotDynamic()
                                                   throws SqlException
        Throws:
        SqlException
      • rowIsInCurrentRowset

        private boolean rowIsInCurrentRowset​(long rowNumber,
                                             int orientation)
                                      throws SqlException
        Throws:
        SqlException
      • rowIsInCurrentRowset

        private boolean rowIsInCurrentRowset​(long rowNumber)
      • markPositionedUpdateDeletePreparedStatementsClosed

        private void markPositionedUpdateDeletePreparedStatementsClosed()
      • updateColumnInfoFromCache

        private void updateColumnInfoFromCache()
      • checkAndThrowReceivedQueryTerminatingException

        protected final void checkAndThrowReceivedQueryTerminatingException()
                                                                     throws SqlException
        Throws:
        SqlException
      • getRSReturnability

        public byte getRSReturnability()
      • setRSReturnability

        public void setRSReturnability​(byte rsReturnability)
      • flowGetRowset

        private void flowGetRowset​(int orientation,
                                   long rowNumber)
                            throws SqlException
        Throws:
        SqlException
      • adjustNextRowset

        private void adjustNextRowset()
      • adjustPreviousRowset

        private void adjustPreviousRowset​(int orientation,
                                          long rowNumber,
                                          boolean isAfterLastRow)
      • adjustAbsoluteRowset

        private void adjustAbsoluteRowset​(long rowNumber)
      • adjustRelativeRowset

        private void adjustRelativeRowset​(long rowNumber)
      • adjustFirstRowset

        private void adjustFirstRowset()
      • adjustLastRowset

        private void adjustLastRowset​(long row)
      • adjustRefreshRowset

        private void adjustRefreshRowset()
      • setAbsolutePositionBasedOnAllRowsReceived

        private void setAbsolutePositionBasedOnAllRowsReceived()
      • writeScrollableFetch_

        public abstract void writeScrollableFetch_​(Section section,
                                                   int fetchSize,
                                                   int orientation,
                                                   long rowToFetch,
                                                   boolean resetQueryBlocks)
                                            throws SqlException
        Throws:
        SqlException
      • writePositioningFetch_

        public abstract void writePositioningFetch_​(Section section,
                                                    int orientation,
                                                    long rowToFetch)
                                             throws SqlException
        Throws:
        SqlException
      • setFetchSize_

        public abstract void setFetchSize_​(int rows)
      • preClose_

        protected abstract void preClose_()
                                   throws SqlException
        Method that is invoked by closeX() before the result set is actually being closed. Subclasses may override this method if work needs to be done before closing.
        Throws:
        SqlException
      • expandRowsetSqlca

        public void expandRowsetSqlca()
      • resetRowsetFlags

        private void resetRowsetFlags()
      • resetRowsetSqlca

        private void resetRowsetSqlca()
      • closeOpenStreams

        private void closeOpenStreams()
                               throws SqlException
        Closes the current stream, if there is one.

        Note that streams are implicitly closed when the next value is fetched.

        Throws:
        SqlException - if closing the stream fails
      • useStreamOrLOB

        private void useStreamOrLOB​(int columnIndex)
                             throws SqlException
        Mark a column as already having a stream or LOB accessed from it. If the column was already accessed, throw an exception.
        Parameters:
        columnIndex - 1-based column index
        Throws:
        java.sql.SQLException - if the column has already been accessed
        SqlException
      • checkLOBMultiCall

        private void checkLOBMultiCall​(int columnIndex)
                                throws SqlException
        Checks if a stream or a LOB object has already been created for the specified LOB column.

        Accessing a LOB column more than once is not forbidden by the JDBC specification, but the Java API states that for maximum portability, result set columns within each row should be read in left-to-right order, and each column should be read only once. The restriction was implemented in Derby due to complexities with the positioning of store streams when the user was given multiple handles to the stream.

        Parameters:
        columnIndex - 1-based index of the LOB column
        Throws:
        SqlException - if the column has already been accessed
      • unuseStreamsAndLOBs

        private void unuseStreamsAndLOBs()
        Clears the flags for used columns, typically invoked when changing the result set position.
      • jdbc3MethodNotSupported

        private java.sql.SQLException jdbc3MethodNotSupported()
      • getHoldability

        public final int getHoldability()
                                 throws java.sql.SQLException
        Retrieves the holdability for this ResultSet object.
        Specified by:
        getHoldability in interface java.sql.ResultSet
        Returns:
        either ResultSet.HOLD_CURSORS_OVER_COMMIT or ResultSet.CLOSE_CURSORS_AT_COMMIT
        Throws:
        java.sql.SQLException - if a database error occurs
      • isClosed

        public final boolean isClosed()
                               throws java.sql.SQLException
        Checks whether this ResultSet object has been closed, either automatically or because close() has been called.
        Specified by:
        isClosed in interface java.sql.ResultSet
        Returns:
        true if the ResultSet is closed, false otherwise
        Throws:
        java.sql.SQLException - if a database error occurs
      • updateAsciiStream

        public void updateAsciiStream​(int columnIndex,
                                      java.io.InputStream x)
                               throws java.sql.SQLException
        Updates the designated column with an ascii stream value. The data will be read from the stream as needed until end-of-stream is reached. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateAsciiStream in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnIndex is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateAsciiStream

        public void updateAsciiStream​(int columnIndex,
                                      java.io.InputStream x,
                                      long length)
                               throws java.sql.SQLException
        Update a column with an ascii stream value. The updateXXX() methods are used to update column values in the current row, or the insert row. The updateXXX() methods do not update the underlying database, instead the updateRow() or insertRow() methods are called to update the database.
        Specified by:
        updateAsciiStream in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        x - the new column value
        length - the length of the stream
        Throws:
        java.sql.SQLException - if a database-access error occurs
      • updateBinaryStream

        public void updateBinaryStream​(int columnIndex,
                                       java.io.InputStream x)
                                throws java.sql.SQLException
        Updates the designated column with a binary stream value. The data will be read from the stream as needed until end-of-stream is reached. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateBinaryStream in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnIndex is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateBinaryStream

        public void updateBinaryStream​(int columnIndex,
                                       java.io.InputStream x,
                                       long length)
                                throws java.sql.SQLException
        Update a column with a binary stream value. The updateXXX() methods are used to update column values in the current row, or the insert row. The updateXXX() methods do not update the underlying database, instead the updateRow() or insertRow() methods are called to update the database.
        Specified by:
        updateBinaryStream in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        x - the new column value
        length - the length of the stream
        Throws:
        java.sql.SQLException - if a database-access error occurs
      • updateBlob

        public void updateBlob​(int columnIndex,
                               java.io.InputStream x)
                        throws java.sql.SQLException
        Updates the designated column using the given input stream. The data will be read from the stream as needed until end-of-stream is reached. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateBlob in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnIndex is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateCharacterStream

        public void updateCharacterStream​(int columnIndex,
                                          java.io.Reader reader)
                                   throws java.sql.SQLException
        Updates the designated column with a character stream value. The data will be read from the stream as needed until end-of-stream is reached. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateCharacterStream in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        reader - the new column value
        Throws:
        java.sql.SQLException - if the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateCharacterStream

        public void updateCharacterStream​(int columnIndex,
                                          java.io.Reader x,
                                          long length)
                                   throws java.sql.SQLException
        Update a column with a character stream value. The updateXXX() methods are used to update column values in the current row, or the insert row. The updateXXX() methods do not update the underlying database, instead the updateRow() or insertRow() methods are called to update the database.
        Specified by:
        updateCharacterStream in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        x - the new column value
        length - the length of the stream
        Throws:
        java.sql.SQLException - if a database-access error occurs
      • updateClob

        public void updateClob​(int columnIndex,
                               java.io.Reader reader)
                        throws java.sql.SQLException
        Updates the designated column using the given Reader object. The data will be read from the stream as needed until end-of-stream is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateClob in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        reader - an object that contains the data to set the parameter value to.
        Throws:
        java.sql.SQLException - if the columnIndex is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateAsciiStream

        public void updateAsciiStream​(java.lang.String columnName,
                                      java.io.InputStream x)
                               throws java.sql.SQLException
        Updates the designated column with an ascii stream value. The data will be read from the stream as needed until end-of-stream is reached. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateAsciiStream in interface java.sql.ResultSet
        Parameters:
        columnName - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateAsciiStream

        public void updateAsciiStream​(java.lang.String columnName,
                                      java.io.InputStream x,
                                      long length)
                               throws java.sql.SQLException
        Update a column with an ascii stream value. The updateXXX() methods are used to update column values in the current row, or the insert row. The updateXXX() methods do not update the underlying database, instead the updateRow() or insertRow() methods are called to update the database.
        Specified by:
        updateAsciiStream in interface java.sql.ResultSet
        Parameters:
        columnName - the name of the column
        x - the new column value
        length - of the stream
        Throws:
        java.sql.SQLException - if a database-access error occurs
      • updateBinaryStream

        public void updateBinaryStream​(java.lang.String columnLabel,
                                       java.io.InputStream x)
                                throws java.sql.SQLException
        Updates the designated column with a binary stream value. The data will be read from the stream as needed until end-of-stream is reached. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateBinaryStream in interface java.sql.ResultSet
        Parameters:
        columnLabel - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateBinaryStream

        public void updateBinaryStream​(java.lang.String columnName,
                                       java.io.InputStream x,
                                       long length)
                                throws java.sql.SQLException
        Update a column with a binary stream value. The updateXXX() methods are used to update column values in the current row, or the insert row. The updateXXX() methods do not update the underlying database, instead the updateRow() or insertRow() methods are called to update the database.
        Specified by:
        updateBinaryStream in interface java.sql.ResultSet
        Parameters:
        columnName - the name of the column
        x - the new column value
        length - of the stream
        Throws:
        java.sql.SQLException - if a database-access error occurs
      • updateBlob

        public void updateBlob​(java.lang.String columnLabel,
                               java.io.InputStream x)
                        throws java.sql.SQLException
        Updates the designated column using the given input stream. The data will be read from the stream as needed until end-of-stream is reached. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateBlob in interface java.sql.ResultSet
        Parameters:
        columnLabel - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateCharacterStream

        public void updateCharacterStream​(java.lang.String columnLabel,
                                          java.io.Reader reader)
                                   throws java.sql.SQLException
        Updates the designated column with a character stream value. The data will be read from the stream as needed until end-of-stream is reached. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateCharacterStream in interface java.sql.ResultSet
        Parameters:
        columnLabel - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        reader - the new column value
        Throws:
        java.sql.SQLException - if the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateCharacterStream

        public void updateCharacterStream​(java.lang.String columnName,
                                          java.io.Reader reader,
                                          long length)
                                   throws java.sql.SQLException
        Update a column with a character stream value. The updateXXX() methods are used to update column values in the current row, or the insert row. The updateXXX() methods do not update the underlying database, instead the updateRow() or insertRow() methods are called to update the database.
        Specified by:
        updateCharacterStream in interface java.sql.ResultSet
        Parameters:
        columnName - the name of the column
        reader - the new column value
        length - length of the stream
        Throws:
        java.sql.SQLException - if a database-access error occurs
      • updateClob

        public void updateClob​(java.lang.String columnLabel,
                               java.io.Reader reader)
                        throws java.sql.SQLException
        Updates the designated column using the given Reader object. The data will be read from the stream as needed until end-of-stream is reached. The JDBC driver will do any necessary conversion from UNICODE to the database char format. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateClob in interface java.sql.ResultSet
        Parameters:
        columnLabel - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        reader - an object that contains the data to set the parameter value to.
        Throws:
        java.sql.SQLException - if the columnIndex is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateClob

        public void updateClob​(int columnIndex,
                               java.io.Reader x,
                               long length)
                        throws java.sql.SQLException
        Updates the designated column using the given Reader object, which is the given number of characters long. When a very large UNICODE value is input to a LONGVARCHAR parameter, it may be more practical to send it via a java.io.Reader object. The JDBC driver will do any necessary conversion from UNICODE to the database char format.

        The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.

        Specified by:
        updateClob in interface java.sql.ResultSet
        Parameters:
        columnIndex - the first column is 1, the second is 2, ...
        x - 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 the columnIndex is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
        java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
      • updateClob

        public void updateClob​(java.lang.String columnName,
                               java.io.Reader x,
                               long length)
                        throws java.sql.SQLException
        Updates the designated column using the given Reader object, which is the given number of characters long. When a very large UNICODE value is input to a LONGVARCHAR parameter, it may be more practical to send it via a java.io.Reader object. The JDBC driver will do any necessary conversion from UNICODE to the database char format.

        The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.

        Specified by:
        updateClob in interface java.sql.ResultSet
        Parameters:
        columnName - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        x - 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 the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
        java.sql.SQLFeatureNotSupportedException - if the JDBC driver does not support this method
      • updateClob

        public void updateClob​(int columnIndex,
                               java.sql.Clob x)
                        throws java.sql.SQLException
        Updates the designated column with a java.sql.Clob value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateClob in interface java.sql.ResultSet
        Parameters:
        columnIndex - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • updateClob

        public void updateClob​(java.lang.String columnLabel,
                               java.sql.Clob x)
                        throws java.sql.SQLException
        Updates the designated column with a java.sql.Clob value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateClob in interface java.sql.ResultSet
        Parameters:
        columnLabel - the label for the column specified with the SQL AS clause. If the SQL AS clause was not specified, then the label is the name of the column
        x - the new column value
        Throws:
        java.sql.SQLException - if the columnLabel is not valid; if a database access error occurs; the result set concurrency is CONCUR_READ_ONLY or this method is called on a closed result set
      • markLOBAsPublished

        public final void markLOBAsPublished​(int index)
        Marks the LOB at the specified column as published.

        When a LOB is marked as published, the release mechanism will not be invoked by the result set. It is expected that the code accessing the LOB releases the locator when it is done with the LOB, or that the commit/rollback handles the release.

        Parameters:
        index - 1-based column index
      • createLOBColumnTracker

        final void createLOBColumnTracker()
        Initializes the LOB state tracker.

        The state tracker is used to free LOB locators on the server. If the server doesn't support locators, or there are no LOBs in the result set, a no-op tracker will be used.

      • getNCharacterStream

        public java.io.Reader getNCharacterStream​(int columnIndex)
                                           throws java.sql.SQLException
        Specified by:
        getNCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getNCharacterStream

        public java.io.Reader getNCharacterStream​(java.lang.String columnName)
                                           throws java.sql.SQLException
        Specified by:
        getNCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getNString

        public java.lang.String getNString​(int columnIndex)
                                    throws java.sql.SQLException
        Specified by:
        getNString in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getNString

        public java.lang.String getNString​(java.lang.String columnName)
                                    throws java.sql.SQLException
        Specified by:
        getNString in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getRowId

        public java.sql.RowId getRowId​(int columnIndex)
                                throws java.sql.SQLException
        Specified by:
        getRowId in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getRowId

        public java.sql.RowId getRowId​(java.lang.String columnName)
                                throws java.sql.SQLException
        Specified by:
        getRowId in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateRowId

        public void updateRowId​(int columnIndex,
                                java.sql.RowId x)
                         throws java.sql.SQLException
        Specified by:
        updateRowId in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateRowId

        public void updateRowId​(java.lang.String columnName,
                                java.sql.RowId x)
                         throws java.sql.SQLException
        Specified by:
        updateRowId in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNString

        public void updateNString​(int columnIndex,
                                  java.lang.String nString)
                           throws java.sql.SQLException
        Specified by:
        updateNString in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNString

        public void updateNString​(java.lang.String columnName,
                                  java.lang.String nString)
                           throws java.sql.SQLException
        Specified by:
        updateNString in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNCharacterStream

        public void updateNCharacterStream​(int columnIndex,
                                           java.io.Reader x,
                                           long length)
                                    throws java.sql.SQLException
        Specified by:
        updateNCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNCharacterStream

        public void updateNCharacterStream​(java.lang.String columnName,
                                           java.io.Reader x,
                                           long length)
                                    throws java.sql.SQLException
        Specified by:
        updateNCharacterStream in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNClob

        public void updateNClob​(int columnIndex,
                                java.sql.NClob nClob)
                         throws java.sql.SQLException
        Specified by:
        updateNClob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateNClob

        public void updateNClob​(java.lang.String columnName,
                                java.sql.NClob nClob)
                         throws java.sql.SQLException
        Specified by:
        updateNClob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getNClob

        public java.sql.NClob getNClob​(int i)
                                throws java.sql.SQLException
        Specified by:
        getNClob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getNClob

        public java.sql.NClob getNClob​(java.lang.String colName)
                                throws java.sql.SQLException
        Specified by:
        getNClob in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getSQLXML

        public java.sql.SQLXML getSQLXML​(int columnIndex)
                                  throws java.sql.SQLException
        Specified by:
        getSQLXML in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • getSQLXML

        public java.sql.SQLXML getSQLXML​(java.lang.String colName)
                                  throws java.sql.SQLException
        Specified by:
        getSQLXML in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateSQLXML

        public void updateSQLXML​(int columnIndex,
                                 java.sql.SQLXML xmlObject)
                          throws java.sql.SQLException
        Specified by:
        updateSQLXML in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • updateSQLXML

        public void updateSQLXML​(java.lang.String columnName,
                                 java.sql.SQLXML xmlObject)
                          throws java.sql.SQLException
        Specified by:
        updateSQLXML in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • isWrapperFor

        public boolean isWrapperFor​(java.lang.Class<?> interfaces)
                             throws java.sql.SQLException
        Returns false unless interfaces is implemented
        Specified by:
        isWrapperFor in interface java.sql.Wrapper
        Parameters:
        interfaces - a Class defining an interface.
        Returns:
        true if this implements the interface or directly or indirectly wraps an object that does.
        Throws:
        java.sql.SQLException - if an error occurs while determining whether this is a wrapper for an object with the given interface.
      • unwrap

        public <T> T unwrap​(java.lang.Class<T> interfaces)
                     throws java.sql.SQLException
        Returns this if this class implements the interface
        Specified by:
        unwrap in interface java.sql.Wrapper
        Parameters:
        interfaces - a Class defining an interface
        Returns:
        an object that implements the interface
        Throws:
        java.sql.SQLException - if no object if found that implements the interface
      • updateNClob

        public void updateNClob​(int columnIndex,
                                java.io.Reader x,
                                long length)
                         throws java.sql.SQLException
        Updates the designated column with a java.sql.NClob value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateNClob in interface java.sql.ResultSet
        Parameters:
        columnIndex - - the first column is 1, the second is 2
        x - - the new column value
        Throws:
        java.sql.SQLException - Feature not implemented for now.
      • updateNClob

        public void updateNClob​(java.lang.String columnName,
                                java.io.InputStream x,
                                long length)
                         throws java.sql.SQLException
        Updates the designated column with a java.sql.NClob value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Parameters:
        columnName - - the name of the Clob column
        x - - the new column value
        Throws:
        java.sql.SQLException - Feature not implemented for now.
      • updateNClob

        public void updateNClob​(java.lang.String columnName,
                                java.io.Reader x,
                                long length)
                         throws java.sql.SQLException
        Updates the designated column with a java.sql.NClob value. The updater methods are used to update column values in the current row or the insert row. The updater methods do not update the underlying database; instead the updateRow or insertRow methods are called to update the database.
        Specified by:
        updateNClob in interface java.sql.ResultSet
        Parameters:
        columnName - - the name of the Clob column
        x - - the new column value
        Throws:
        java.sql.SQLException - Feature not implemented for now.
      • getObject

        public <T> T getObject​(int columnIndex,
                               java.lang.Class<T> type)
                        throws java.sql.SQLException
        Retrieve the column as an object of the desired type.
        Specified by:
        getObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException
      • mismatchException

        private java.sql.SQLException mismatchException​(java.lang.String targetTypeName,
                                                        int columnIndex)
                                                 throws java.sql.SQLException
        Throws:
        java.sql.SQLException
      • getObject

        public <T> T getObject​(java.lang.String columnName,
                               java.lang.Class<T> type)
                        throws java.sql.SQLException
        Specified by:
        getObject in interface java.sql.ResultSet
        Throws:
        java.sql.SQLException