Package org.h2.mode

Class OnDuplicateKeyValues

All Implemented Interfaces:
HasSQL, Typed

public final class OnDuplicateKeyValues extends Operation0
VALUES(column) function for ON DUPLICATE KEY UPDATE clause.
  • Field Details

    • column

      private final Column column
    • update

      private final Update update
  • Constructor Details

    • OnDuplicateKeyValues

      public OnDuplicateKeyValues(Column column, Update update)
  • Method Details

    • getValue

      public Value getValue(SessionLocal session)
      Description copied from class: Expression
      Return the resulting value for the current row.
      Specified by:
      getValue in class Expression
      Parameters:
      session - the session
      Returns:
      the result
    • getUnenclosedSQL

      public StringBuilder getUnenclosedSQL(StringBuilder builder, int sqlFlags)
      Description copied from class: Expression
      Get the SQL statement of this expression. This may not always be the original SQL statement, especially after optimization. Enclosing '(' and ')' are never appended.
      Specified by:
      getUnenclosedSQL in class Expression
      Parameters:
      builder - string builder
      sqlFlags - formatting flags
      Returns:
      the specified string builder
    • isEverything

      public boolean isEverything(ExpressionVisitor visitor)
      Description copied from class: Expression
      Check if this expression and all sub-expressions can fulfill a criteria. If any part returns false, the result is false.
      Specified by:
      isEverything in class Expression
      Parameters:
      visitor - the visitor
      Returns:
      if the criteria can be fulfilled
    • getType

      public TypeInfo getType()
      Description copied from class: Expression
      Returns the data type. The data type may be unknown before the optimization phase.
      Specified by:
      getType in interface Typed
      Specified by:
      getType in class Expression
      Returns:
      the data type
    • getCost

      public int getCost()
      Description copied from class: Expression
      Estimate the cost to process the expression. Used when optimizing the query, to calculate the query plan with the lowest estimated cost.
      Specified by:
      getCost in class Expression
      Returns:
      the estimated cost