Class HsqlDb2DdlBuilder

java.lang.Object
org.jumpmind.db.platform.AbstractDdlBuilder
org.jumpmind.db.platform.hsqldb2.HsqlDb2DdlBuilder
All Implemented Interfaces:
IDdlBuilder

public class HsqlDb2DdlBuilder extends AbstractDdlBuilder
  • Constructor Details

    • HsqlDb2DdlBuilder

      public HsqlDb2DdlBuilder()
  • Method Details

    • dropTable

      protected void dropTable(Table table, StringBuilder ddl, boolean temporary, boolean recreate)
      Description copied from class: AbstractDdlBuilder
      Outputs the DDL to drop the table. Note that this method does not drop foreign keys to this table. Use #dropTable(Database, Table) if you want that.
      Overrides:
      dropTable in class AbstractDdlBuilder
      recreate - TODO
    • writeGeneratedColumn

      protected void writeGeneratedColumn(Table table, Column column, StringBuilder ddl)
      Overrides:
      writeGeneratedColumn in class AbstractDdlBuilder
    • getSelectLastIdentityValues

      public String getSelectLastIdentityValues(Table table)
      Description copied from class: AbstractDdlBuilder
      Generates the SQL for querying the id that was created in the last insertion operation. This is obviously only useful for pk fields that are auto-incrementing. A database that does not support this, will return null.
      Overrides:
      getSelectLastIdentityValues in class AbstractDdlBuilder
      Parameters:
      table - The table
      Returns:
      The sql, or null if the database does not support this
    • shouldGeneratePrimaryKeys

      protected boolean shouldGeneratePrimaryKeys(Column[] primaryKeyColumns)
      Description copied from class: AbstractDdlBuilder
      Determines whether we should generate a primary key constraint for the given primary key columns.
      Overrides:
      shouldGeneratePrimaryKeys in class AbstractDdlBuilder
      Parameters:
      primaryKeyColumns - The pk columns
      Returns:
      true if a pk statement should be generated for the columns
    • processTableStructureChanges

      protected void processTableStructureChanges(Database currentModel, Database desiredModel, Table sourceTable, Table targetTable, List<TableChange> changes, StringBuilder ddl)
      Description copied from class: AbstractDdlBuilder
      Allows database-specific implementations to handle changes in a database specific manner. Any handled change should be applied to the given current model (which is a copy of the real original model) and be removed from the list of changes.
      In the default implementation, all AddPrimaryKeyChange changes are applied via an ALTER TABLE ADD CONSTRAINT statement.
      Overrides:
      processTableStructureChanges in class AbstractDdlBuilder
      Parameters:
      currentModel - The current database schema
      desiredModel - The desired database schema
      sourceTable - The original table
      targetTable - The desired table
      changes - The change objects for the target table
    • processChange

      protected void processChange(Database currentModel, Database desiredModel, AddColumnChange change, StringBuilder ddl)
    • processChange

      protected void processChange(Database currentModel, Database desiredModel, RemoveColumnChange change, StringBuilder ddl)
    • writeExternalIndexDropStmt

      public void writeExternalIndexDropStmt(Table table, IIndex index, StringBuilder ddl)
      Description copied from class: AbstractDdlBuilder
      Generates the statement to drop a non-embedded index from the database.
      Overrides:
      writeExternalIndexDropStmt in class AbstractDdlBuilder