Package org.postgresql.core.v3
Class CompositeQuery
java.lang.Object
org.postgresql.core.v3.CompositeQuery
- All Implemented Interfaces:
Query
V3 Query implementation for queries that involve multiple statements. We split it up into one
SimpleQuery per statement, and wrap the corresponding per-statement SimpleParameterList objects
in a CompositeParameterList.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Close this query and free any server-side resources associated with it.Create a ParameterList suitable for storing parameters associated with this Query.intGet the number of times this Query has been batched.Returns SQL in native for database format.Get a map that a result set can use to find the index associated to a name.Returns properties of the query (sql keyword, and some other parsing info).Query[]Return a list of the Query objects that make up this query.booleanisEmpty()booleantoString()toString(ParameterList parameters) Returns string representation of the query, substituting particular parameter values for parameter placeholders.toString(ParameterList parameters, SqlSerializationContext context) Returns string representation of the query, substituting particular parameter values for parameter placeholders.
-
Field Details
-
subqueries
-
offsets
private final int[] offsets
-
-
Constructor Details
-
CompositeQuery
CompositeQuery(SimpleQuery[] subqueries, int[] offsets)
-
-
Method Details
-
createParameterList
Description copied from interface:QueryCreate a ParameterList suitable for storing parameters associated with this Query.If this query has no parameters, a ParameterList will be returned, but it may be a shared immutable object. If this query does have parameters, the returned ParameterList is a new list, unshared by other callers.
- Specified by:
createParameterListin interfaceQuery- Returns:
- a suitable ParameterList instance for this query
-
toString
Description copied from interface:QueryReturns string representation of the query, substituting particular parameter values for parameter placeholders.Note: the method replaces the values on a best-effort basis as it might omit the replacements for parameters that can't be processed several times. For instance,
InputStreamcan be processed only once.- Specified by:
toStringin interfaceQuery- Parameters:
parameters- a ParameterList returned by this Query'sQuery.createParameterList()method, ornullto leave the parameter placeholders unsubstituted.- Returns:
- string representation of this query
-
toString
Description copied from interface:QueryReturns string representation of the query, substituting particular parameter values for parameter placeholders.- Specified by:
toStringin interfaceQuery- Parameters:
parameters- a ParameterList returned by this Query'sQuery.createParameterList()method, ornullto leave the parameter placeholders unsubstituted.context- specifies configuration for converting the parameters to string- Returns:
- string representation of this query
-
getNativeSql
Description copied from interface:QueryReturns SQL in native for database format.- Specified by:
getNativeSqlin interfaceQuery- Returns:
- SQL in native for database format
-
getSqlCommand
Description copied from interface:QueryReturns properties of the query (sql keyword, and some other parsing info).- Specified by:
getSqlCommandin interfaceQuery- Returns:
- returns properties of the query (sql keyword, and some other parsing info) or null if not applicable
-
toString
-
close
public void close()Description copied from interface:QueryClose this query and free any server-side resources associated with it. The resources may not be immediately deallocated, but closing a Query may make the deallocation more prompt.A closed Query should not be executed.
-
getSubqueries
Description copied from interface:QueryReturn a list of the Query objects that make up this query. If this object is already a SimpleQuery, returns null (avoids an extra array construction in the common case).- Specified by:
getSubqueriesin interfaceQuery- Returns:
- an array of single-statement queries, or
nullif this object is already a single-statement query.
-
isStatementDescribed
public boolean isStatementDescribed()- Specified by:
isStatementDescribedin interfaceQuery
-
isEmpty
public boolean isEmpty() -
getBatchSize
public int getBatchSize()Description copied from interface:QueryGet the number of times this Query has been batched.- Specified by:
getBatchSizein interfaceQuery- Returns:
- number of times
addBatch()has been called.
-
getResultSetColumnNameIndexMap
Description copied from interface:QueryGet a map that a result set can use to find the index associated to a name.- Specified by:
getResultSetColumnNameIndexMapin interfaceQuery- Returns:
- null if the query implementation does not support this method.
-