Class RDBMSQueryCompilation

java.lang.Object
org.datanucleus.store.rdbms.query.RDBMSQueryCompilation

public class RDBMSQueryCompilation extends Object
Datastore-specific (RDBMS) compilation information for a java query. Can represent a single SQL statement, or can represent multiple SQL statements all with the same results and parameters.
  • Field Details

    • statementCompilations

    • inputParameters

      List<SQLStatementParameter> inputParameters
      Input parameter definitions, in the order used in the SQL.
    • inputParameterNameByPosition

      Map<Integer,String> inputParameterNameByPosition
      Map of input parameter name keyed by its position. Only for SELECT queries.
    • resultsDefinitionForClass

      StatementClassMapping resultsDefinitionForClass
      Result mappings when the result is for a candidate (can be null). Only for SELECT queries.
    • resultsDefinition

      StatementResultMapping resultsDefinition
      Result mappings when the result is not for a candidate (can be null). Only for SELECT queries.
    • scoIteratorStatementByMemberName

      Map<String,IteratorStatement> scoIteratorStatementByMemberName
      Map of statements to get SCO containers that are in the fetch plan (bulk fetch). Only for SELECT queries.
    • precompilable

      boolean precompilable
  • Constructor Details

    • RDBMSQueryCompilation

      public RDBMSQueryCompilation()
  • Method Details

    • getNumberOfStatements

      public int getNumberOfStatements()
    • clearStatements

      public void clearStatements()
    • addStatement

      public void addStatement(SQLStatement stmt, String sql, boolean useInCount)
    • getStatementCompilations

      public List<RDBMSQueryCompilation.StatementCompilation> getStatementCompilations()
    • getSQL

      public String getSQL()
      Convenience accessor for the SQL to invoke, when we only have 1 statement associated with this compilation. Use getStatementCompilations to get the SQLs when we have multiple statements.
      Returns:
      The SQL to be invoked
    • setPrecompilable

      public void setPrecompilable(boolean precompilable)
    • isPrecompilable

      public boolean isPrecompilable()
    • setResultDefinitionForClass

      public void setResultDefinitionForClass(StatementClassMapping def)
    • getResultDefinitionForClass

      public StatementClassMapping getResultDefinitionForClass()
    • setResultDefinition

      public void setResultDefinition(StatementResultMapping def)
    • getResultDefinition

      public StatementResultMapping getResultDefinition()
    • setStatementParameters

      public void setStatementParameters(List<SQLStatementParameter> params)
    • getStatementParameters

      public List<SQLStatementParameter> getStatementParameters()
    • setParameterNameByPosition

      public void setParameterNameByPosition(Map<Integer,String> paramNameByPos)
    • getParameterNameByPosition

      public Map<Integer,String> getParameterNameByPosition()
    • setSCOIteratorStatement

      public void setSCOIteratorStatement(String memberName, IteratorStatement iterStmt)
    • getSCOIteratorStatements

      public Map<String,IteratorStatement> getSCOIteratorStatements()