Package org.mariadb.jdbc.client.result
Class CompleteResult
java.lang.Object
org.mariadb.jdbc.client.result.Result
org.mariadb.jdbc.client.result.CompleteResult
- All Implemented Interfaces:
AutoCloseable
,ResultSet
,Wrapper
,Completion
,ServerMessage
- Direct Known Subclasses:
UpdatableResult
Result-set that will retrieve all rows immediately before returning the result-set.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final int
before first row position = initial positionprivate boolean
private boolean
Fields inherited from class org.mariadb.jdbc.client.result.Result
closed, context, data, dataSize, exceptionFactory, fieldIndex, loaded, maxRows, metadataList, NULL_LENGTH, outputParameter, reader, resultSetType, rowBuf, rowDecoder, rowPointer, statement, traceEnable
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
-
Constructor Summary
ConstructorsModifierConstructorDescriptionCompleteResult
(ColumnDecoder[] metadataList, byte[][] data, Context context, int resultSetType) Specific constructor for internal build result-set, empty resultset, or generated key result-set.private
CompleteResult
(ColumnDecoder[] metadataList, CompleteResult prev) CompleteResult
(Statement stmt, boolean binaryProtocol, long maxRows, ColumnDecoder[] metadataList, Reader reader, Context context, int resultSetType, boolean closeOnCompletion, boolean traceEnable, boolean mightBeBulkResult) Constructor from exchanges -
Method Summary
Modifier and TypeMethodDescriptionboolean
absolute
(int idx) void
void
void
Closing result-set due to closing statement that issue command.static ResultSet
createResultSet
(String[] columnNames, DataType[] columnTypes, String[][] data, Context context, int flags, int resultSetType) Create a result set from given data.static ResultSet
createResultSet
(String columnName, DataType columnType, String[][] data, Context context, int flags, int resultSetType) Specific constructor for generating generated key result-set.void
Fetch remaining results.boolean
first()
int
int
getRow()
boolean
boolean
Indicate if result-set is a bulk unitary resultboolean
isFirst()
boolean
isLast()
boolean
last()
Recreate Result-set with metadata using alias as name.boolean
next()
Position resultset to next rowboolean
previous()
boolean
relative
(int rows) void
Indicate that result is a bulk resultvoid
setFetchSize
(int rows) boolean
Indicate of current result-set is a streaming result-setMethods inherited from class org.mariadb.jdbc.client.result.Result
abort, addRowData, cancelRowUpdates, checkClose, checkNotForwardOnly, clearWarnings, close, closeOnCompletion, deleteRow, findColumn, getArray, getArray, getAsciiStream, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBigDecimal, getBigInteger, getBigInteger, getBinaryStream, getBinaryStream, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getConcurrency, getCurrentRowData, getCursorName, getDate, getDate, getDate, getDate, getDouble, getDouble, getFetchDirection, getFloat, getFloat, getHoldability, getInt, getInt, getLong, getLong, getMetaData, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getObject, getObject, getRef, getRef, getRowId, getRowId, getShort, getShort, getSQLXML, getSQLXML, getStatement, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isBeforeFirst, isClosed, isOutputParameter, isWrapperFor, loaded, moveToCurrentRow, moveToInsertRow, readNext, refreshRow, rowDeleted, rowInserted, rowUpdated, setFetchDirection, setNullRowBuf, setRow, setStatement, skipRemaining, unwrap, 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, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateRowData, updateRowId, updateRowId, updateShort, updateShort, updateSQLXML, updateSQLXML, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestamp, wasNull
-
Field Details
-
BEFORE_FIRST_POS
protected static final int BEFORE_FIRST_POSbefore first row position = initial position- See Also:
-
bulkResult
private boolean bulkResult -
mightBeBulkResult
private boolean mightBeBulkResult
-
-
Constructor Details
-
CompleteResult
public CompleteResult(Statement stmt, boolean binaryProtocol, long maxRows, ColumnDecoder[] metadataList, Reader reader, Context context, int resultSetType, boolean closeOnCompletion, boolean traceEnable, boolean mightBeBulkResult) throws IOException, SQLException Constructor from exchanges- Parameters:
stmt
- current statementbinaryProtocol
- does exchanges uses binary protocolmaxRows
- maximum number of rowsmetadataList
- metadatareader
- packet readercontext
- connection contextresultSetType
- result set typecloseOnCompletion
- close statement on completiontraceEnable
- network trace exchange possiblemightBeBulkResult
- might be a bulk unitary result- Throws:
IOException
- if Socket error occursSQLException
- for all other kind of errors
-
CompleteResult
-
CompleteResult
public CompleteResult(ColumnDecoder[] metadataList, byte[][] data, Context context, int resultSetType) Specific constructor for internal build result-set, empty resultset, or generated key result-set.- Parameters:
metadataList
- metadatadata
- result-set datacontext
- connection contextresultSetType
- result set type
-
-
Method Details
-
setBulkResult
public void setBulkResult()Description copied from class:Result
Indicate that result is a bulk result- Specified by:
setBulkResult
in classResult
-
createResultSet
public static ResultSet createResultSet(String columnName, DataType columnType, String[][] data, Context context, int flags, int resultSetType) Specific constructor for generating generated key result-set.- Parameters:
columnName
- column keycolumnType
- column key typedata
- valuescontext
- connection contextflags
- column flagsresultSetType
- result set type- Returns:
- result-set
-
createResultSet
public static ResultSet createResultSet(String[] columnNames, DataType[] columnTypes, String[][] data, Context context, int flags, int resultSetType) Create a result set from given data. Useful for creating "fake" resultSets for DatabaseMetaData, (one example is MariaDbDatabaseMetaData.getTypeInfo())- Parameters:
columnNames
- - string array of column namescolumnTypes
- - column typesdata
- - each element of this array represents a complete row in the ResultSet. Each value is given in its string representation, as in MariaDB text protocol, except boolean (BIT(1)) values that are represented as "1" or "0" stringscontext
- connection contextflags
- column flagsresultSetType
- result set type- Returns:
- resultset
-
newResultsetWithUseAliasAsName
Recreate Result-set with metadata using alias as name.- Returns:
- Result-set with metadata using alias as name
-
next
Description copied from class:Result
Position resultset to next row- Specified by:
next
in interfaceResultSet
- Specified by:
next
in classResult
- Returns:
- true if next row exists
- Throws:
SQLException
- if any error occurs
-
streaming
public boolean streaming()Description copied from class:Result
Indicate of current result-set is a streaming result-set -
isBulkResult
public boolean isBulkResult()Description copied from class:Result
Indicate if result-set is a bulk unitary result- Specified by:
isBulkResult
in classResult
- Returns:
- true if unitary result-set
-
fetchRemaining
public void fetchRemaining()Description copied from class:Result
Fetch remaining results.- Specified by:
fetchRemaining
in classResult
-
closeFromStmtClose
Description copied from class:Result
Closing result-set due to closing statement that issue command.- Overrides:
closeFromStmtClose
in classResult
- Parameters:
lock
- thread locker object
-
isAfterLast
- Specified by:
isAfterLast
in interfaceResultSet
- Specified by:
isAfterLast
in classResult
- Throws:
SQLException
-
isFirst
- Specified by:
isFirst
in interfaceResultSet
- Specified by:
isFirst
in classResult
- Throws:
SQLException
-
isLast
- Specified by:
isLast
in interfaceResultSet
- Specified by:
isLast
in classResult
- Throws:
SQLException
-
beforeFirst
- Specified by:
beforeFirst
in interfaceResultSet
- Specified by:
beforeFirst
in classResult
- Throws:
SQLException
-
afterLast
- Specified by:
afterLast
in interfaceResultSet
- Specified by:
afterLast
in classResult
- Throws:
SQLException
-
first
- Specified by:
first
in interfaceResultSet
- Specified by:
first
in classResult
- Throws:
SQLException
-
last
- Specified by:
last
in interfaceResultSet
- Specified by:
last
in classResult
- Throws:
SQLException
-
getRow
- Specified by:
getRow
in interfaceResultSet
- Specified by:
getRow
in classResult
- Throws:
SQLException
-
absolute
- Specified by:
absolute
in interfaceResultSet
- Specified by:
absolute
in classResult
- Throws:
SQLException
-
relative
- Specified by:
relative
in interfaceResultSet
- Specified by:
relative
in classResult
- Throws:
SQLException
-
previous
- Specified by:
previous
in interfaceResultSet
- Specified by:
previous
in classResult
- Throws:
SQLException
-
getFetchSize
- Specified by:
getFetchSize
in interfaceResultSet
- Overrides:
getFetchSize
in classResult
- Throws:
SQLException
-
setFetchSize
- Specified by:
setFetchSize
in interfaceResultSet
- Overrides:
setFetchSize
in classResult
- Throws:
SQLException
-