Class SqlAstTranslatorWithMerge<T extends JdbcOperation>

java.lang.Object
org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T>
org.hibernate.dialect.SqlAstTranslatorWithMerge<T>
All Implemented Interfaces:
Appendable, SqlAppender, SqlAstTranslator<T>, SqlAstWalker
Direct Known Subclasses:
H2SqlAstTranslator, PostgreSQLSqlAstTranslator, SQLServerSqlAstTranslator

public abstract class SqlAstTranslatorWithMerge<T extends JdbcOperation> extends AbstractSqlAstTranslator<T>
Base for translators which support a full insert-or-update-or-delete (MERGE) command.

Use createMergeOperation(OptionalTableUpdate) to translate an OptionalTableUpdate into an executable MergeOperation operation.

  • Constructor Details

  • Method Details

    • createMergeOperation

      public MergeOperation createMergeOperation(OptionalTableUpdate optionalTableUpdate)
      Create the MutationOperation for performing a MERGE.

      The OptionalTableUpdate is translated and wrapped as a MutationOperation

    • renderMergeStatement

      protected void renderMergeStatement(OptionalTableUpdate optionalTableUpdate)
      Renders the OptionalTableUpdate as a MERGE query.
    • renderMergeInto

      protected void renderMergeInto(OptionalTableUpdate optionalTableUpdate)
    • renderMergeTargetAlias

      protected void renderMergeTargetAlias()
    • renderMergeUsing

      protected void renderMergeUsing(OptionalTableUpdate optionalTableUpdate)
    • renderMergeSourceAlias

      protected void renderMergeSourceAlias()
    • renderMergeUsingQuerySelection

      protected void renderMergeUsingQuerySelection(ColumnValueBinding selectionBinding)
    • renderMergeOn

      protected void renderMergeOn(OptionalTableUpdate optionalTableUpdate)
    • renderMergeInsert

      protected void renderMergeInsert(OptionalTableUpdate optionalTableUpdate)
    • renderMergeDelete

      protected void renderMergeDelete(OptionalTableUpdate optionalTableUpdate)
    • renderMergeUpdate

      protected void renderMergeUpdate(OptionalTableUpdate optionalTableUpdate)