Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.ddlutils.platform.hsqldb
Class HsqlDbBuilder

    java.lang.Object
      org.apache.ddlutils.platform.SqlBuilder
          org.apache.ddlutils.platform.hsqldb.HsqlDbBuilder

    public class HsqlDbBuilder

extends SqlBuilder

The SQL Builder for the HsqlDb database.

Version:
  $Revision: 518485 $

Field Summary

Fields inherited from class org.apache.ddlutils.platform.SqlBuilder
`_log, SIZE_PLACEHOLDER`

Constructor Summary
`HsqlDbBuilder(Platform platform)` Creates a new builder instance.

Method Summary
`void` | `dropTable(Table table)` Outputs the DDL to drop the table.
`String` | `getSelectLastIdentityValues(Table table)` Generates the SQL for querying the id that was created in the last insertion operation.
`protected void` | `processChange(Database currentModel, Database desiredModel, AddColumnChange change)` Processes the addition of a column to a table.
`protected void` | `processChange(Database currentModel, Database desiredModel, RemoveColumnChange change)` Processes the removal of a column from a table.
`protected void` | `processTableStructureChanges(Database currentModel, Database desiredModel, Table sourceTable, Table targetTable, Map parameters, List changes)` Allows database-specific implementations to handle changes in a database specific manner.

Methods inherited from class org.apache.ddlutils.platform.SqlBuilder
`addEscapedCharSequence, alterDatabase, applyForSelectedChanges, areEqual, columnsDiffer, createExternalForeignKeys, createExternalForeignKeys, createTable, createTable, createTables, createTables, createTables, createTemporaryTable, createUniqueIdentifier, dropExternalForeignKeys, dropTable, dropTables, dropTemporaryTable, escapeStringValue, findCorrespondingForeignKey, getBareNativeType, getColumnName, getConstraintName, getDefaultValueHelper, getDeleteSql, getDelimitedIdentifier, getForeignKeyName, getIndent, getIndexName, getInsertSql, getMaxColumnNameLength, getMaxConstraintNameLength, getMaxForeignKeyNameLength, getMaxTableNameLength, getNativeDefaultValue, getNativeType, getPlatform, getPlatformInfo, getRealTargetTableFor, getSqlType, getTableName, getTemporaryTableFor, getUpdateSql, getValueAsString, getValueDateFormat, getValueLocale, getValueNumberFormat, getValueTimeFormat, getWriter, isValidDefaultValue, print, printComment, printDefaultValue, printEndOfStatement, printIdentifier, printIndent, println, println, printlnIdentifier, printStartOfEmbeddedStatement, processChange, processChange, processChange, processChange, processChange, processChange, processChange, processChange, processChanges, processTableStructureChanges, processTableStructureChanges, setIndent, setValueDateFormat, setValueLocale, setValueNumberFormat, setValueTimeFormat, setWriter, shortenName, shouldGeneratePrimaryKeys, writeCastExpression, writeColumn, writeColumnAutoIncrementStmt, writeColumnDefaultValue, writeColumnDefaultValueStmt, writeColumnNotNullableStmt, writeColumnNullableStmt, writeColumns, writeCopyDataStatement, writeEmbeddedForeignKeysStmt, writeEmbeddedIndexCreateStmt, writeEmbeddedIndicesStmt, writeEmbeddedPrimaryKeysStmt, writeExternalForeignKeyCreateStmt, writeExternalForeignKeyDropStmt, writeExternalIndexCreateStmt, writeExternalIndexDropStmt, writeExternalIndicesCreateStmt, writeExternalPrimaryKeysCreateStmt, writeForeignReferences, writeLocalReferences, writePrimaryKeyStmt, writeTableAlterStmt, writeTableComment, writeTableCreationStmt, writeTableCreationStmtEnding`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### HsqlDbBuilder

    public HsqlDbBuilder(Platform platform)

  Creates a new builder instance.

  Parameters:
    `platform` - The plaftform this builder belongs to

Method Detail

### dropTable

    public void dropTable(Table table)
                   throws IOException

  Outputs the DDL to drop the table. Note that this method does not drop foreign keys to this table. Use `SqlBuilder.dropTable(Database, Table)` if you want that.

  Overrides:
    `dropTable` in class `SqlBuilder`
  Parameters:
    `table` - The table to drop
  Throws:
    `IOException`

### getSelectLastIdentityValues

    public String getSelectLastIdentityValues(Table table)

  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 `SqlBuilder`
  Parameters:
    `table` - The table
  Returns:
    The sql, or `null` if the database does not support this

### processTableStructureChanges

    protected void processTableStructureChanges(Database currentModel,
                                                Database desiredModel,
                                                Table sourceTable,
                                                Table targetTable,
                                                Map parameters,
                                                List changes)
                                         throws IOException

  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 `SqlBuilder`
  Parameters:
    `currentModel` - The current database schema
    `desiredModel` - The desired database schema
    `sourceTable` - The original table
    `targetTable` - The desired table
    `parameters` - The creation parameters for the table
    `changes` - The change objects for the target table
  Throws:
    `IOException`

### processChange

    protected void processChange(Database currentModel,
                                 Database desiredModel,
                                 AddColumnChange change)
                          throws IOException

  Processes the addition of a column to a table.

  Parameters:
    `currentModel` - The current database schema
    `desiredModel` - The desired database schema
    `change` - The change object
  Throws:
    `IOException`

### processChange

    protected void processChange(Database currentModel,
                                 Database desiredModel,
                                 RemoveColumnChange change)
                          throws IOException

  Processes the removal of a column from a table.

  Parameters:
    `currentModel` - The current database schema
    `desiredModel` - The desired database schema
    `change` - The change object
  Throws:
    `IOException`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2005-2007 Apache Software Foundation. All Rights Reserved.