Class Results
java.lang.Object
org.mariadb.jdbc.internal.com.read.dao.Results
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate intprivate intprivate booleanprivate booleanprivate SelectResultSetprivate CmdInformationprivate Deque<SelectResultSet> private intprivate intprivate intprivate ParameterHolder[]private SelectResultSetprivate intprivate intprivate booleanprivate Stringprivate MariaDbStatement -
Constructor Summary
ConstructorsConstructorDescriptionResults()Single Text query.Results(MariaDbStatement statement, int fetchSize, boolean batch, int expectedSize, boolean binaryFormat, int resultSetScrollType, int resultSetConcurrency, int autoGeneratedKeys, int autoIncrement, String sql, ParameterHolder[] parameters) Default constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoidabort()Connection.abort() has been called, abort remaining active result-setvoidaddResultSet(SelectResultSet resultSet, boolean moreResultAvailable) Add resultSet to results.voidaddStats(long updateCount, long insertId, boolean moreResultAvailable) Add execution statistics.voidaddStatsError(boolean moreResultAvailable) Indicate that result is an Error, to set appropriate results.voidclose()booleanIndicate that command / batch is finished, so set current resultSet if needed.intintintintgetGeneratedKeys(Protocol protocol) Send a resultSet that contain auto generated keys.intbooleangetMoreResults(int current, Protocol protocol) Position to next resultSet.intintgetSql()booleanisBatch()booleanbooleanisFullyLoaded(Protocol protocol) Indicate if result contain result-set that is still streaming from server.booleanvoidLoad fully current results.voidvoidsetAutoIncrement(int autoIncrement) protected voidsetCmdInformation(CmdInformation cmdInformation) voidsetRewritten(boolean rewritten)
-
Field Details
-
statement
-
fetchSize
private int fetchSize -
batch
private boolean batch -
expectedSize
private int expectedSize -
cmdInformation
-
executionResults
-
resultSet
-
callableResultSet
-
binaryFormat
private boolean binaryFormat -
resultSetScrollType
private int resultSetScrollType -
resultSetConcurrency
private int resultSetConcurrency -
autoGeneratedKeys
private int autoGeneratedKeys -
maxFieldSize
private int maxFieldSize -
autoIncrement
private int autoIncrement -
rewritten
private boolean rewritten -
sql
-
parameters
-
-
Constructor Details
-
Results
public Results()Single Text query. /! use internally, because autoincrement value is not right for multi-queries !/ -
Results
public Results(MariaDbStatement statement, int fetchSize, boolean batch, int expectedSize, boolean binaryFormat, int resultSetScrollType, int resultSetConcurrency, int autoGeneratedKeys, int autoIncrement, String sql, ParameterHolder[] parameters) Default constructor.- Parameters:
statement- current statementfetchSize- fetch sizebatch- select result possibleexpectedSize- expected sizebinaryFormat- use binary protocolresultSetScrollType- one of the followingResultSetconstants:ResultSet.TYPE_FORWARD_ONLY,ResultSet.TYPE_SCROLL_INSENSITIVE, orResultSet.TYPE_SCROLL_SENSITIVEresultSetConcurrency- a concurrency type; one ofResultSet.CONCUR_READ_ONLYorResultSet.CONCUR_UPDATABLEautoGeneratedKeys- a flag indicating whether auto-generated keys should be returned; one ofStatement.RETURN_GENERATED_KEYSorStatement.NO_GENERATED_KEYSautoIncrement- Connection auto-increment valuesql- sql commandparameters- parameters
-
-
Method Details
-
addStats
public void addStats(long updateCount, long insertId, boolean moreResultAvailable) Add execution statistics.- Parameters:
updateCount- number of updated rowsinsertId- primary keymoreResultAvailable- is there additional packet
-
addStatsError
public void addStatsError(boolean moreResultAvailable) Indicate that result is an Error, to set appropriate results.- Parameters:
moreResultAvailable- indicate if other results (ResultSet or updateCount) are available.
-
getCurrentStatNumber
public int getCurrentStatNumber() -
addResultSet
Add resultSet to results.- Parameters:
resultSet- new resultSet.moreResultAvailable- indicate if other results (ResultSet or updateCount) are available.
-
getCmdInformation
-
setCmdInformation
-
commandEnd
public boolean commandEnd()Indicate that command / batch is finished, so set current resultSet if needed.- Returns:
- true id has cmdInformation
-
getResultSet
-
getCallableResultSet
-
loadFully
Load fully current results.
Lock must be set before using this method
- Parameters:
skip- must result be available afterwhileprotocol- current protocol- Throws:
SQLException- if any connection error occur
-
abort
Connection.abort() has been called, abort remaining active result-set- Throws:
SQLException- exception
-
isFullyLoaded
Indicate if result contain result-set that is still streaming from server.- Parameters:
protocol- current protocol- Returns:
- true if streaming is finished
-
getMoreResults
Position to next resultSet.- Parameters:
current- one of the followingStatementconstants indicating what should happen to currentResultSetobjects obtained using the methodgetResultSet:Statement.CLOSE_CURRENT_RESULT,Statement.KEEP_CURRENT_RESULT, orStatement.CLOSE_ALL_RESULTSprotocol- current protocol- Returns:
- true if other resultSet exists.
- Throws:
SQLException- if any connection error occur.
-
getFetchSize
public int getFetchSize() -
getStatement
-
isBatch
public boolean isBatch() -
getExpectedSize
public int getExpectedSize() -
isBinaryFormat
public boolean isBinaryFormat() -
removeFetchSize
public void removeFetchSize() -
getResultSetScrollType
public int getResultSetScrollType() -
getSql
-
getParameters
-
getGeneratedKeys
Send a resultSet that contain auto generated keys. 2 differences :- Batch will list all insert ids.
- in case of multi-query is set, resultSet will be per query.
example "INSERT INTO myTable values ('a'),('b');INSERT INTO myTable values ('c'),('d'),('e')" will have a resultSet of 2 values, and when Statement.getMoreResults() will be called, a Statement.getGeneratedKeys will return a resultset with 3 ids.
- Parameters:
protocol- current protocol- Returns:
- a ResultSet containing generated ids.
- Throws:
SQLException- if autoGeneratedKeys was not set to Statement.RETURN_GENERATED_KEYS
-
close
public void close() -
getMaxFieldSize
public int getMaxFieldSize() -
setAutoIncrement
public void setAutoIncrement(int autoIncrement) -
getResultSetConcurrency
public int getResultSetConcurrency() -
getAutoGeneratedKeys
public int getAutoGeneratedKeys() -
isRewritten
public boolean isRewritten() -
setRewritten
public void setRewritten(boolean rewritten)
-