liquibase.sqlgenerator.core
Class InsertOrUpdateGeneratorMSSQL

java.lang.Object
  extended by liquibase.sqlgenerator.core.AbstractSqlGenerator<InsertOrUpdateStatement>
      extended by liquibase.sqlgenerator.core.InsertOrUpdateGenerator
          extended by liquibase.sqlgenerator.core.InsertOrUpdateGeneratorMSSQL
All Implemented Interfaces:
PrioritizedService, SqlGenerator<InsertOrUpdateStatement>

public class InsertOrUpdateGeneratorMSSQL
extends InsertOrUpdateGenerator


Field Summary
 
Fields inherited from interface liquibase.sqlgenerator.SqlGenerator
PRIORITY_DATABASE, PRIORITY_DEFAULT
 
Fields inherited from interface liquibase.servicelocator.PrioritizedService
COMPARATOR
 
Constructor Summary
InsertOrUpdateGeneratorMSSQL()
           
 
Method Summary
 Sql[] generateSql(InsertOrUpdateStatement insertOrUpdateStatement, Database database, SqlGeneratorChain sqlGeneratorChain)
          Generate the actual Sql for the given statement and database.
protected  String getElse(Database database)
           
protected  String getInsertStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, SqlGeneratorChain sqlGeneratorChain)
           
protected  String getRecordCheck(InsertOrUpdateStatement insertOrUpdateStatement, Database database, String whereClause)
           
protected  String getUpdateStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, String whereClause, SqlGeneratorChain sqlGeneratorChain)
           
 boolean supports(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 suppot it.
 
Methods inherited from class liquibase.sqlgenerator.core.InsertOrUpdateGenerator
getAffectedTable, getPostUpdateStatements, getPriority, getWhereClause, validate
 
Methods inherited from class liquibase.sqlgenerator.core.AbstractSqlGenerator
generateRollbackStatementsIsVolatile, generateStatementsIsVolatile, looksLikeFunctionCall, warn
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InsertOrUpdateGeneratorMSSQL

public InsertOrUpdateGeneratorMSSQL()
Method Detail

supports

public boolean supports(InsertOrUpdateStatement statement,
                        Database database)
Description copied from interface: SqlGenerator
Does this generator support the given statement/database combination? Do not validate the statement with this method, only return if it can suppot it.

Specified by:
supports in interface SqlGenerator<InsertOrUpdateStatement>
Overrides:
supports in class AbstractSqlGenerator<InsertOrUpdateStatement>

getRecordCheck

protected String getRecordCheck(InsertOrUpdateStatement insertOrUpdateStatement,
                                Database database,
                                String whereClause)
Specified by:
getRecordCheck in class InsertOrUpdateGenerator

getInsertStatement

protected String getInsertStatement(InsertOrUpdateStatement insertOrUpdateStatement,
                                    Database database,
                                    SqlGeneratorChain sqlGeneratorChain)
Overrides:
getInsertStatement in class InsertOrUpdateGenerator

getElse

protected String getElse(Database database)
Specified by:
getElse in class InsertOrUpdateGenerator

getUpdateStatement

protected String getUpdateStatement(InsertOrUpdateStatement insertOrUpdateStatement,
                                    Database database,
                                    String whereClause,
                                    SqlGeneratorChain sqlGeneratorChain)
                             throws LiquibaseException
Overrides:
getUpdateStatement in class InsertOrUpdateGenerator
Returns:
the update statement, if there is nothing to update return null
Throws:
LiquibaseException

generateSql

public Sql[] generateSql(InsertOrUpdateStatement insertOrUpdateStatement,
                         Database database,
                         SqlGeneratorChain sqlGeneratorChain)
Description copied from interface: SqlGenerator
Generate the actual Sql for the given statement and database.

Specified by:
generateSql in interface SqlGenerator<InsertOrUpdateStatement>
Overrides:
generateSql in class InsertOrUpdateGenerator


Copyright © 2016 Liquibase.org. All rights reserved.