ResultSetInternalMethods
Date: 2016-03-08

com.mysql.jdbc

## Interface ResultSetInternalMethods

- All Superinterfaces:
    java.lang.AutoCloseable, java.sql.ResultSet, java.sql.Wrapper
  All Known Implementing Classes:
    JDBC4ResultSet, JDBC4UpdatableResultSet, ResultSetImpl, UpdatableResultSet

      public interface ResultSetInternalMethods
      extends java.sql.ResultSet

  This interface is intended to be used by implementors of statement interceptors so that implementors can create static or dynamic (via java.lang.reflect.Proxy) proxy instances of ResultSets. It consists of methods outside of java.sql.Result that are used internally by other classes in the driver. This interface, although public is not designed to be consumed publicly other than for the statement interceptor use case.

- - ### Field Summary

    - ### Fields inherited from interface java.sql.ResultSet

      `CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `buildIndexMapping()` Builds a hash between column names and their indices for fast retrieval.
    `void` | `clearNextResult()` Clears the reference to the next result set in a multi-result set "chain".
    `ResultSetInternalMethods` | `copy()` Returns a new instance of this result set, that shares the underlying row data.
    `int` | `getBytesSize()`
    `char` | `getFirstCharOfQuery()` Returns the first character of the query that was issued to create this result set, upper-cased.
    `ResultSetInternalMethods` | `getNextResultSet()` Returns the next ResultSet in a multi-resultset "chain", if any, null if none exists.
    `java.lang.Object` | `getObjectStoredProc(int columnIndex, int desiredSqlType)` Functions like ResultSet.getObject(), but using the given SQL type (as registered during CallableStatement.registerOutParameter()).
    `java.lang.Object` | `getObjectStoredProc(int i, java.util.Map<java.lang.Object,java.lang.Object> map, int desiredSqlType)` Functions like ResultSet.getObject(), but using the given SQL type (as registered during CallableStatement.registerOutParameter()).
    `java.lang.Object` | `getObjectStoredProc(java.lang.String columnName, int desiredSqlType)` Functions like ResultSet.getObject(), but using the given SQL type (as registered during CallableStatement.registerOutParameter()).
    `java.lang.Object` | `getObjectStoredProc(java.lang.String colName, java.util.Map<java.lang.Object,java.lang.Object> map, int desiredSqlType)` Functions like ResultSet.getObject(), but using the given SQL type (as registered during CallableStatement.registerOutParameter()).
    `java.lang.String` | `getServerInfo()` Returns the server informational message returned from a DDL or DML statement (if any), or null if none.
    `long` | `getUpdateCount()` Returns the update count for this result set (if one exists), otherwise -1.
    `long` | `getUpdateID()` Returns the AUTO_INCREMENT value for the DDL/DML statement which created this result set.
    `void` | `initializeFromCachedMetaData(CachedResultSetMetaData cachedMetaData)`
    `void` | `initializeWithMetadata()`
    `boolean` | `isClosed()` Returns true if this ResultSet is closed
    `void` | `populateCachedMetaData(CachedResultSetMetaData cachedMetaData)`
    `void` | `realClose(boolean calledExplicitly)` Closes this ResultSet and releases resources.
    `boolean` | `reallyResult()` Does the result set contain rows, or is it the result of a DDL or DML statement?
    `void` | `redefineFieldsForDBMD(Field[] metadataFields)` Used by DatabaseMetadata implementations to coerce the metadata returned by metadata queries into that required by the JDBC specification.
    `void` | `setFirstCharOfQuery(char firstCharUpperCase)` Sets the first character of the query that was issued to create this result set.
    `void` | `setOwningStatement(StatementImpl owningStatement)` Sets the statement that "owns" this result set (usually used when the result set should internally "belong" to one statement, but is created by another.
    `void` | `setStatementUsedForFetchingRows(PreparedStatement stmt)`
    `void` | `setWrapperStatement(java.sql.Statement wrapperStatement)`

    - ### Methods inherited from interface java.sql.ResultSet

      `absolute, afterLast, beforeFirst, cancelRowUpdates, clearWarnings, close, deleteRow, findColumn, first, getArray, getArray, getAsciiStream, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBigDecimal, getBinaryStream, getBinaryStream, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getConcurrency, getCursorName, getDate, getDate, getDate, getDate, getDouble, getDouble, getFetchDirection, getFetchSize, getFloat, getFloat, getHoldability, getInt, getInt, getLong, getLong, getMetaData, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getObject, getObject, getRef, getRef, getRow, getRowId, getRowId, getShort, getShort, getSQLXML, getSQLXML, getStatement, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isAfterLast, isBeforeFirst, isFirst, isLast, last, moveToCurrentRow, moveToInsertRow, next, previous, refreshRow, relative, rowDeleted, rowInserted, rowUpdated, setFetchDirection, setFetchSize, updateArray, updateArray, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBoolean, updateBoolean, updateByte, updateByte, updateBytes, updateBytes, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateClob, updateClob, updateClob, updateClob, updateDate, updateDate, updateDouble, updateDouble, updateFloat, updateFloat, updateInt, updateInt, updateLong, updateLong, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNString, updateNString, updateNull, updateNull, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateRowId, updateRowId, updateShort, updateShort, updateSQLXML, updateSQLXML, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestamp, wasNull`

    - ### Methods inherited from interface java.sql.Wrapper

      `isWrapperFor, unwrap`

- - ### Method Detail

    - #### copy

          ResultSetInternalMethods copy()
                                        throws java.sql.SQLException

      Returns a new instance of this result set, that shares the underlying row data.
      Throws:
        `java.sql.SQLException`

    - #### reallyResult

          boolean reallyResult()

      Does the result set contain rows, or is it the result of a DDL or DML statement?

    - #### getObjectStoredProc

          java.lang.Object getObjectStoredProc(int columnIndex,
                                             int desiredSqlType)
                                               throws java.sql.SQLException

      Functions like ResultSet.getObject(), but using the given SQL type (as registered during CallableStatement.registerOutParameter()).
      Throws:
        `java.sql.SQLException`

    - #### getObjectStoredProc

          java.lang.Object getObjectStoredProc(int i,
                                             java.util.Map<java.lang.Object,java.lang.Object> map,
                                             int desiredSqlType)
                                               throws java.sql.SQLException

      Functions like ResultSet.getObject(), but using the given SQL type (as registered during CallableStatement.registerOutParameter()).
      Throws:
        `java.sql.SQLException`

    - #### getObjectStoredProc

          java.lang.Object getObjectStoredProc(java.lang.String columnName,
                                             int desiredSqlType)
                                               throws java.sql.SQLException

      Functions like ResultSet.getObject(), but using the given SQL type (as registered during CallableStatement.registerOutParameter()).
      Throws:
        `java.sql.SQLException`

    - #### getObjectStoredProc

          java.lang.Object getObjectStoredProc(java.lang.String colName,
                                             java.util.Map<java.lang.Object,java.lang.Object> map,
                                             int desiredSqlType)
                                               throws java.sql.SQLException

      Functions like ResultSet.getObject(), but using the given SQL type (as registered during CallableStatement.registerOutParameter()).
      Throws:
        `java.sql.SQLException`

    - #### getServerInfo

          java.lang.String getServerInfo()

      Returns the server informational message returned from a DDL or DML statement (if any), or null if none.

    - #### getUpdateCount

          long getUpdateCount()

      Returns the update count for this result set (if one exists), otherwise -1.

    - #### getUpdateID

          long getUpdateID()

      Returns the AUTO_INCREMENT value for the DDL/DML statement which created this result set.
      Returns:
        the AUTO_INCREMENT value for the DDL/DML statement which created this result set.

    - #### realClose

          void realClose(boolean calledExplicitly)
                         throws java.sql.SQLException

      Closes this ResultSet and releases resources.
      Parameters:
        `calledExplicitly` - was realClose called by the standard ResultSet.close() method, or was it closed internally by the driver?
      Throws:
        `java.sql.SQLException`

    - #### isClosed

          boolean isClosed()
                           throws java.sql.SQLException

      Returns true if this ResultSet is closed
      Specified by:
        `isClosed` in interface `java.sql.ResultSet`
      Throws:
        `java.sql.SQLException`

    - #### setFirstCharOfQuery

          void setFirstCharOfQuery(char firstCharUpperCase)

      Sets the first character of the query that was issued to create this result set. The character should be upper-cased.

    - #### setOwningStatement

          void setOwningStatement(StatementImpl owningStatement)

      Sets the statement that "owns" this result set (usually used when the result set should internally "belong" to one statement, but is created by another.

    - #### getFirstCharOfQuery

          char getFirstCharOfQuery()

      Returns the first character of the query that was issued to create this result set, upper-cased.

    - #### clearNextResult

          void clearNextResult()

      Clears the reference to the next result set in a multi-result set "chain".

    - #### getNextResultSet

          ResultSetInternalMethods getNextResultSet()

      Returns the next ResultSet in a multi-resultset "chain", if any, null if none exists.

    - #### setStatementUsedForFetchingRows

          void setStatementUsedForFetchingRows(PreparedStatement stmt)

    - #### setWrapperStatement

          void setWrapperStatement(java.sql.Statement wrapperStatement)

      Parameters:
        `wrapperStatement` - The wrapperStatement to set.

    - #### buildIndexMapping

          void buildIndexMapping()
                                 throws java.sql.SQLException

      Builds a hash between column names and their indices for fast retrieval. This is done lazily to support findColumn() and get*(String), as it can be more expensive than just retrieving result set values by ordinal index.
      Throws:
        `java.sql.SQLException`

    - #### initializeWithMetadata

          void initializeWithMetadata()
                                      throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### redefineFieldsForDBMD

          void redefineFieldsForDBMD(Field[] metadataFields)

      Used by DatabaseMetadata implementations to coerce the metadata returned by metadata queries into that required by the JDBC specification.
      Parameters:
        `metadataFields` - the coerced metadata to be applied to result sets returned by "SHOW ..." or SELECTs on INFORMATION_SCHEMA performed on behalf of methods in DatabaseMetadata.

    - #### populateCachedMetaData

          void populateCachedMetaData(CachedResultSetMetaData cachedMetaData)
                                      throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### initializeFromCachedMetaData

          void initializeFromCachedMetaData(CachedResultSetMetaData cachedMetaData)

    - #### getBytesSize

          int getBytesSize()
                           throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`