public abstract class InsertOrUpdateGenerator extends AbstractSqlGenerator<InsertOrUpdateStatement>
EMPTY_SQL, PRIORITY_DATABASE, PRIORITY_DEFAULT
COMPARATOR
Constructor and Description |
---|
InsertOrUpdateGenerator() |
Modifier and Type | Method and Description |
---|---|
Sql[] |
generateSql(InsertOrUpdateStatement insertOrUpdateStatement,
Database database,
SqlGeneratorChain sqlGeneratorChain)
Generate the actual Sql for the given statement and database.
|
protected Table |
getAffectedTable(InsertOrUpdateStatement insertOrUpdateStatement) |
protected abstract String |
getElse(Database database) |
protected String |
getInsertStatement(InsertOrUpdateStatement insertOrUpdateStatement,
Database database,
SqlGeneratorChain sqlGeneratorChain) |
protected String |
getPostUpdateStatements(Database database) |
int |
getPriority()
Of all the SqlGenerators that "support" a given SqlStatement/Database, SqlGeneratorFactory will return the one
with the highest priority.
|
protected abstract String |
getRecordCheck(InsertOrUpdateStatement insertOrUpdateStatement,
Database database,
String whereClause) |
protected String |
getUpdateStatement(InsertOrUpdateStatement insertOrUpdateStatement,
Database database,
String whereClause,
SqlGeneratorChain sqlGeneratorChain) |
protected String |
getWhereClause(InsertOrUpdateStatement insertOrUpdateStatement,
Database database) |
ValidationErrors |
validate(InsertOrUpdateStatement statement,
Database database,
SqlGeneratorChain sqlGeneratorChain)
Validate the data contained in the SqlStatement.
|
generateRollbackStatementsIsVolatile, generateStatementsIsVolatile, looksLikeFunctionCall, supports, warn
protected abstract String getRecordCheck(InsertOrUpdateStatement insertOrUpdateStatement, Database database, String whereClause)
public int getPriority()
SqlGenerator
getPriority
in interface PrioritizedService
getPriority
in interface SqlGenerator<InsertOrUpdateStatement>
getPriority
in class AbstractSqlGenerator<InsertOrUpdateStatement>
public ValidationErrors validate(InsertOrUpdateStatement statement, Database database, SqlGeneratorChain sqlGeneratorChain)
SqlGenerator
protected String getWhereClause(InsertOrUpdateStatement insertOrUpdateStatement, Database database)
protected String getInsertStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, SqlGeneratorChain sqlGeneratorChain)
protected String getUpdateStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, String whereClause, SqlGeneratorChain sqlGeneratorChain) throws LiquibaseException
insertOrUpdateStatement
- database
- whereClause
- sqlGeneratorChain
- LiquibaseException
public Sql[] generateSql(InsertOrUpdateStatement insertOrUpdateStatement, Database database, SqlGeneratorChain sqlGeneratorChain)
SqlGenerator
protected Table getAffectedTable(InsertOrUpdateStatement insertOrUpdateStatement)
Copyright © 2023 Liquibase.org. All rights reserved.