Class MergeUsing


  • public final class MergeUsing
    extends DataChangeStatement
    This class represents the statement syntax MERGE INTO table alias USING... It does not replace the MERGE INTO... KEYS... form.
    • Field Detail

      • targetTableFilter

        TableFilter targetTableFilter
        Target table filter.
      • sourceTableFilter

        TableFilter sourceTableFilter
        Source table filter.
      • onCondition

        Expression onCondition
        ON condition expression.
      • targetRowidsRemembered

        private final java.util.HashSet<java.lang.Long> targetRowidsRemembered
        Contains _ROWID_ of processed rows. Row identities are remembered to prevent duplicate updates of the same row.
    • Method Detail

      • evaluateTriggerMasks

        private int evaluateTriggerMasks()
      • checkRights

        private void checkRights()
      • getPlanSQL

        public java.lang.String getPlanSQL​(int sqlFlags)
        Description copied from class: Prepared
        Get the SQL statement with the execution plan.
        Overrides:
        getPlanSQL in class Prepared
        Parameters:
        sqlFlags - formatting flags
        Returns:
        the execution plan
      • prepare

        public void prepare()
        Description copied from class: Prepared
        Prepare this statement.
        Overrides:
        prepare in class Prepared
      • setSourceTableFilter

        public void setSourceTableFilter​(TableFilter sourceTableFilter)
      • getSourceTableFilter

        public TableFilter getSourceTableFilter()
      • setOnCondition

        public void setOnCondition​(Expression condition)
      • getOnCondition

        public Expression getOnCondition()
      • addWhen

        public void addWhen​(MergeUsing.When w)
        Adds WHEN command.
        Parameters:
        w - new WHEN command to add (update, delete or insert).
      • setTargetTableFilter

        public void setTargetTableFilter​(TableFilter targetTableFilter)
      • getTargetTableFilter

        public TableFilter getTargetTableFilter()
      • getType

        public int getType()
        Description copied from class: Prepared
        Get the command type as defined in CommandInterface
        Specified by:
        getType in class Prepared
        Returns:
        the statement type
      • collectDependencies

        public void collectDependencies​(java.util.HashSet<DbObject> dependencies)
        Description copied from class: Prepared
        Find and collect all DbObjects, this Prepared depends on.
        Overrides:
        collectDependencies in class Prepared
        Parameters:
        dependencies - collection of dependencies to populate