类 InformixDialect

  • 所有已实现的接口:
    ConversionContext
    直接已知子类:
    Informix10Dialect

    public class InformixDialect
    extends Dialect
    Informix dialect.

    Seems to work with Informix Dynamic Server Version 7.31.UD3, Informix JDBC driver version 2.21JC3.
    作者:
    Steve Molitor
    • 构造器详细资料

      • InformixDialect

        public InformixDialect()
        Creates new InformixDialect instance. Sets up the JDBC / Informix type mappings.
    • 方法详细资料

      • getAddColumnString

        public String getAddColumnString()
        从类复制的说明: Dialect
        The syntax used to add a column to a table (optional).
        覆盖:
        getAddColumnString 在类中 Dialect
        返回:
        The "add column" fragment.
      • getAddForeignKeyConstraintString

        public String getAddForeignKeyConstraintString​(String constraintName,
                                                       String[] foreignKey,
                                                       String referencedTable,
                                                       String[] primaryKey,
                                                       boolean referencesPrimaryKey)
        Informix constraint name must be at the end.

        The syntax used to add a foreign key constraint to a table.

        覆盖:
        getAddForeignKeyConstraintString 在类中 Dialect
        参数:
        constraintName - The FK constraint name.
        foreignKey - The names of the columns comprising the FK
        referencedTable - The table referenced by the FK
        primaryKey - The explicit columns in the referencedTable referenced by this FK.
        referencesPrimaryKey - if false, constraint should be explicit about which column names the constraint refers to
        返回:
        the "add FK" fragment
      • getAddPrimaryKeyConstraintString

        public String getAddPrimaryKeyConstraintString​(String constraintName)
        Informix constraint name must be at the end.

        The syntax used to add a primary key constraint to a table.

        覆盖:
        getAddPrimaryKeyConstraintString 在类中 Dialect
        参数:
        constraintName - The name of the PK constraint.
        返回:
        The "add PK" fragment
      • getSequenceNextValString

        public String getSequenceNextValString​(String sequenceName)
        从类复制的说明: Dialect
        Generate the appropriate select statement to to retrieve the next value of a sequence.

        This should be a "stand alone" select statement.

        覆盖:
        getSequenceNextValString 在类中 Dialect
        参数:
        sequenceName - the name of the sequence
        返回:
        String The "nextval" select string.
      • getSelectSequenceNextValString

        public String getSelectSequenceNextValString​(String sequenceName)
        从类复制的说明: Dialect
        Generate the select expression fragment that will retrieve the next value of a sequence as part of another (typically DML) statement.

        This differs from Dialect.getSequenceNextValString(String) in that this should return an expression usable within another statement.

        覆盖:
        getSelectSequenceNextValString 在类中 Dialect
        参数:
        sequenceName - the name of the sequence
        返回:
        The "nextval" fragment.
      • supportsSequences

        public boolean supportsSequences()
        从类复制的说明: Dialect
        Does this dialect support sequences?
        覆盖:
        supportsSequences 在类中 Dialect
        返回:
        True if sequences supported; false otherwise.
      • getQuerySequencesString

        public String getQuerySequencesString()
        从类复制的说明: Dialect
        Get the select command used retrieve the names of all sequences.
        覆盖:
        getQuerySequencesString 在类中 Dialect
        返回:
        The select command; or null if sequences are not supported.
        另请参阅:
        SchemaUpdate
      • getLimitHandler

        public LimitHandler getLimitHandler()
        从类复制的说明: Dialect
        Returns the delegate managing LIMIT clause.
        覆盖:
        getLimitHandler 在类中 Dialect
        返回:
        LIMIT clause delegate.
      • supportsLimit

        public boolean supportsLimit()
        从类复制的说明: Dialect
        Does this dialect support some form of limiting query results via a SQL clause?
        覆盖:
        supportsLimit 在类中 Dialect
        返回:
        True if this dialect supports some form of LIMIT.
      • useMaxForLimit

        public boolean useMaxForLimit()
        从类复制的说明: Dialect
        Does the LIMIT clause take a "maximum" row number instead of a total number of returned rows?

        This is easiest understood via an example. Consider you have a table with 20 rows, but you only want to retrieve rows number 11 through 20. Generally, a limit with offset would say that the offset = 11 and the limit = 10 (we only want 10 rows at a time); this is specifying the total number of returned rows. Some dialects require that we instead specify offset = 11 and limit = 20, where 20 is the "last" row we want relative to offset (i.e. total number of rows = 20 - 11 = 9)

        So essentially, is limit relative from offset? Or is limit absolute?

        覆盖:
        useMaxForLimit 在类中 Dialect
        返回:
        True if limit is relative from offset; false otherwise.
      • supportsLimitOffset

        public boolean supportsLimitOffset()
        从类复制的说明: Dialect
        Does this dialect's LIMIT support (if any) additionally support specifying an offset?
        覆盖:
        supportsLimitOffset 在类中 Dialect
        返回:
        True if the dialect supports an offset within the limit support.
      • getLimitString

        public String getLimitString​(String querySelect,
                                     int offset,
                                     int limit)
        从类复制的说明: Dialect
        Given a limit and an offset, apply the limit clause to the query.
        覆盖:
        getLimitString 在类中 Dialect
        参数:
        querySelect - The query to which to apply the limit.
        offset - The offset of the limit
        limit - The limit of the limit ;)
        返回:
        The modified query statement with the limit applied.
      • supportsVariableLimit

        public boolean supportsVariableLimit()
        从类复制的说明: Dialect
        Does this dialect support bind variables (i.e., prepared statement parameters) for its limit/offset?
        覆盖:
        supportsVariableLimit 在类中 Dialect
        返回:
        True if bind variables can be used; false otherwise.
      • supportsCurrentTimestampSelection

        public boolean supportsCurrentTimestampSelection()
        从类复制的说明: Dialect
        Does this dialect support a way to retrieve the database's current timestamp value?
        覆盖:
        supportsCurrentTimestampSelection 在类中 Dialect
        返回:
        True if the current timestamp can be retrieved; false otherwise.
      • getCurrentTimestampSelectString

        public String getCurrentTimestampSelectString()
        从类复制的说明: Dialect
        Retrieve the command used to retrieve the current timestamp from the database.
        覆盖:
        getCurrentTimestampSelectString 在类中 Dialect
        返回:
        The command.
      • toBooleanValueString

        public String toBooleanValueString​(boolean bool)
        从类复制的说明: Dialect
        The SQL literal value to which this database maps boolean values.
        覆盖:
        toBooleanValueString 在类中 Dialect
        参数:
        bool - The boolean value
        返回:
        The appropriate SQL literal.