Top Constructors Methods
liquibase.sqlgenerator.core

public Class CreateIndexGenerator

extends AbstractSqlGenerator<CreateIndexStatement>
Class Inheritance
Known Direct Subclasses
liquibase.sqlgenerator.core.CreateIndexGeneratorFirebird, liquibase.sqlgenerator.core.CreateIndexGeneratorPostgres
Imports
liquibase.change.AddColumnConfig, liquibase.database.Database, liquibase.database.core.AbstractDb2Database, .HsqlDatabase, .InformixDatabase, .MSSQLDatabase, .MockDatabase, .OracleDatabase, .PostgresDatabase, .SybaseASADatabase, liquibase.exception.ValidationErrors, .Warnings, liquibase.sql.Sql, .UnparsedSql, liquibase.sqlgenerator.SqlGeneratorChain, liquibase.statement.core.CreateIndexStatement, liquibase.structure.core.Index, .Table, liquibase.util.StringUtil, java.util.Arrays, .Iterator, .List

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public Sql[]

Returns:

An array of Sql objects containing the generated SQL statement(s).
generateSql
(CreateIndexStatement
A CreateIndexStatement with the desired properties of the SQL to be generated
statement
,
Database
The DBMS for whose SQL dialect the statement is to be made
database
,
SqlGeneratorChain<T extends SqlStatement>
The other SQL generators in the same chain (but this method is not interested in them)
sqlGeneratorChain
)

Implements liquibase.sqlgenerator.SqlGenerator.generateSql.

Generate a CREATE INDEX SQL statement.

protected Index
public ValidationErrors
validate(CreateIndexStatement createIndexStatement, Database database, SqlGeneratorChain<T extends SqlStatement> sqlGeneratorChain)

Implements liquibase.sqlgenerator.SqlGenerator.validate.

Validate the data contained in the SqlStatement.

public Warnings
Inherited from liquibase.sqlgenerator.core.AbstractSqlGenerator:
generateRollbackStatementsIsVolatilegenerateStatementsIsVolatilegetPrioritylooksLikeFunctionCallsupports

Constructor Detail

CreateIndexGeneratorback to summary
public CreateIndexGenerator()

Method Detail

generateSqlback to summary
public Sql[] generateSql(CreateIndexStatement statement, Database database, SqlGeneratorChain<T extends SqlStatement> sqlGeneratorChain)

Implements liquibase.sqlgenerator.SqlGenerator.generateSql.

Generate a CREATE INDEX SQL statement. Here, we are walking on thin ice, because the SQL Foundation standard (ISO/IEC 9075-2) does not concern itself with indexes at all and leaves them as an implementation-specific detail at the discretion of each RDBMS vendor. However, there is some common ground to most RDBMS, and we try to make an educated guess on how a CREATE INDEX statement might look like if we have no specific handler for the DBMS.

Parameters
statement:CreateIndexStatement

A CreateIndexStatement with the desired properties of the SQL to be generated

database:Database

The DBMS for whose SQL dialect the statement is to be made

sqlGeneratorChain:SqlGeneratorChain<T extends SqlStatement>

The other SQL generators in the same chain (but this method is not interested in them)

Returns:Sql[]

An array of Sql objects containing the generated SQL statement(s).

Annotations
@Override
getAffectedIndexback to summary
protected Index getAffectedIndex(CreateIndexStatement statement)
validateback to summary
public ValidationErrors validate(CreateIndexStatement createIndexStatement, Database database, SqlGeneratorChain<T extends SqlStatement> sqlGeneratorChain)

Implements liquibase.sqlgenerator.SqlGenerator.validate.

Doc from liquibase.sqlgenerator.SqlGenerator.validate.

Validate the data contained in the SqlStatement. If there are no errors, return an empty ValidationErrors object, not a null value. Liquibase will inspect the ValidationErrors result before attempting to call generateSql.

Annotations
@Override
warnback to summary
public Warnings warn(CreateIndexStatement createIndexStatement, Database database, SqlGeneratorChain<T extends SqlStatement> sqlGeneratorChain)

Overrides liquibase.sqlgenerator.core.AbstractSqlGenerator.warn.

Implements liquibase.sqlgenerator.SqlGenerator.warn.

Annotations
@Override