Class FrontBaseDialect

java.lang.Object
org.hibernate.dialect.Dialect
org.hibernate.dialect.FrontBaseDialect

public class FrontBaseDialect extends Dialect
An SQL Dialect for Frontbase. Assumes you're using the latest version of the FrontBase JDBC driver, available from http://frontbase.com/

NOTE: The latest JDBC driver is not always included with the latest release of FrontBase. Download the driver separately, and enjoy the informative release notes.

This dialect was tested with JDBC driver version 2.3.1. This driver contains a bug that causes batches of updates to fail. (The bug should be fixed in the next release of the JDBC driver.) If you are using JDBC driver 2.3.1, you can work-around this problem by setting the following in your hibernate.properties file: hibernate.jdbc.batch_size=15

  • Constructor Details

    • FrontBaseDialect

      public FrontBaseDialect()
  • Method Details

    • getAddColumnString

      public String getAddColumnString()
      Description copied from class: Dialect
      The syntax used to add a column to a table (optional).
      Overrides:
      getAddColumnString in class Dialect
      Returns:
      The "add column" fragment.
    • getCascadeConstraintsString

      public String getCascadeConstraintsString()
      Description copied from class: Dialect
      Completely optional cascading drop clause
      Overrides:
      getCascadeConstraintsString in class Dialect
      Returns:
      String
    • dropConstraints

      public boolean dropConstraints()
      Description copied from class: Dialect
      Do we need to drop constraints before dropping tables in this dialect?
      Overrides:
      dropConstraints in class Dialect
      Returns:
      True if constraints must be dropped prior to dropping the table; false otherwise.
    • getForUpdateString

      public String getForUpdateString()
      Does this dialect support the FOR UPDATE syntax. No!
      Overrides:
      getForUpdateString in class Dialect
      Returns:
      false always. FrontBase doesn't support this syntax, which was dropped with SQL92
    • getCurrentTimestampCallString

      public String getCurrentTimestampCallString()
    • isCurrentTimestampSelectStringCallable

      public boolean isCurrentTimestampSelectStringCallable()
      Description copied from class: Dialect
      Should the value returned by Dialect.getCurrentTimestampSelectString() be treated as callable. Typically this indicates that JDBC escape syntax is being used...
      Overrides:
      isCurrentTimestampSelectStringCallable in class Dialect
      Returns:
      True if the Dialect.getCurrentTimestampSelectString() return is callable; false otherwise.
    • getLockingStrategy

      public LockingStrategy getLockingStrategy(Lockable lockable, LockMode lockMode)
      Description copied from class: Dialect
      Get a strategy instance which knows how to acquire a database-level lock of the specified mode for this dialect.
      Overrides:
      getLockingStrategy in class Dialect
      Parameters:
      lockable - The persister for the entity to be locked.
      lockMode - The type of lock to be acquired.
      Returns:
      The appropriate locking strategy.