Package liquibase.sqlgenerator.core
Class InsertOrUpdateGeneratorSQLite
- java.lang.Object
-
- liquibase.sqlgenerator.core.AbstractSqlGenerator<InsertOrUpdateStatement>
-
- liquibase.sqlgenerator.core.InsertOrUpdateGenerator
-
- liquibase.sqlgenerator.core.InsertOrUpdateGeneratorSQLite
-
- All Implemented Interfaces:
PrioritizedService,SqlGenerator<InsertOrUpdateStatement>
public class InsertOrUpdateGeneratorSQLite extends InsertOrUpdateGenerator
Adds an ON CONFLICT REPLACE clause to an INSERT INTO ... statement for SQLite.
-
-
Field Summary
-
Fields inherited from interface liquibase.servicelocator.PrioritizedService
COMPARATOR
-
Fields inherited from interface liquibase.sqlgenerator.SqlGenerator
EMPTY_SQL, PRIORITY_DATABASE, PRIORITY_DEFAULT
-
-
Constructor Summary
Constructors Constructor Description InsertOrUpdateGeneratorSQLite()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected StringgetElse(Database database)protected StringgetInsertStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, SqlGeneratorChain sqlGeneratorChain)protected StringgetRecordCheck(InsertOrUpdateStatement insertOrUpdateStatement, Database database, String whereClause)protected StringgetUpdateStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, String whereClause, SqlGeneratorChain sqlGeneratorChain)Generates an SQL UPDATE statement for the specified insert or update statement, database, and SQL generator chain.booleansupports(InsertOrUpdateStatement statement, Database database)Does this generator support the given statement/database combination? Do not validate the statement with this method, only return if it can support it.-
Methods inherited from class liquibase.sqlgenerator.core.InsertOrUpdateGenerator
generateSql, getAffectedTable, getPostUpdateStatements, getPriority, getWhereClause, validate
-
Methods inherited from class liquibase.sqlgenerator.core.AbstractSqlGenerator
generateRollbackStatementsIsVolatile, generateStatementsIsVolatile, looksLikeFunctionCall, warn
-
-
-
-
Method Detail
-
supports
public boolean supports(InsertOrUpdateStatement statement, Database database)
Description copied from interface:SqlGeneratorDoes this generator support the given statement/database combination? Do not validate the statement with this method, only return if it can support it.- Specified by:
supportsin interfaceSqlGenerator<InsertOrUpdateStatement>- Overrides:
supportsin classAbstractSqlGenerator<InsertOrUpdateStatement>
-
getInsertStatement
protected String getInsertStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, SqlGeneratorChain sqlGeneratorChain)
- Overrides:
getInsertStatementin classInsertOrUpdateGenerator
-
getUpdateStatement
protected String getUpdateStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, String whereClause, SqlGeneratorChain sqlGeneratorChain)
Description copied from class:InsertOrUpdateGeneratorGenerates an SQL UPDATE statement for the specified insert or update statement, database, and SQL generator chain.- Overrides:
getUpdateStatementin classInsertOrUpdateGenerator- Parameters:
insertOrUpdateStatement- the insert or update statement to generate the update statement fromdatabase- the database to generate the update statement forwhereClause- the WHERE clause to use in the update statementsqlGeneratorChain- the SQL generator chain to use in the update statement- Returns:
- the generated update statement, or
nullif there is nothing to update
-
getRecordCheck
protected String getRecordCheck(InsertOrUpdateStatement insertOrUpdateStatement, Database database, String whereClause)
- Specified by:
getRecordCheckin classInsertOrUpdateGenerator
-
getElse
protected String getElse(Database database)
- Specified by:
getElsein classInsertOrUpdateGenerator
-
-