public class InformixPlatform extends DatabasePlatform
Purpose: Provides Informix specific behaviour.
Responsibilities:
classTypes, cursorCode, fieldTypes, shouldBindAllParameters, shouldCacheAllStatements, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldOptimizeDataConversion, shouldTrimStrings, statementCacheSize, stringBindingSize, supportsAutoCommit, transactionIsolation, usesByteArrayBinding, usesNativeSQL, usesStreamsForBinding, usesStringBindingconversionManager, dataTypesConvertedFromAClass, dataTypesConvertedToAClass, defaultSequence, platformOperators, sequences, tableQualifier, timestampQuery| Constructor and Description |
|---|
InformixPlatform() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
appendCalendar(Calendar calendar,
Writer writer)
INTERNAL:
Answer a platform correct string representation of a Calendar, suitable for SQL generation.
|
protected void |
appendDate(Date date,
Writer writer)
INTERNAL:
Answer a platform correct string representation of a Date, suitable for SQL generation.
|
protected void |
appendInformixCalendar(Calendar calendar,
Writer writer)
INTERNAL:
Write a timestamp in Informix specific format ( yyyy-mm-dd hh:mm:ss.fff)
|
protected void |
appendInformixTimestamp(Timestamp timestamp,
Writer writer)
INTERNAL:
Write a timestamp in Informix specific format (yyyy-mm-dd hh:mm:ss.fff).
|
protected void |
appendTime(Time time,
Writer writer)
INTERNAL:
Answer a platform correct string representation of a Time, suitable for SQL generation.
|
protected void |
appendTimestamp(Timestamp timestamp,
Writer writer)
INTERNAL:
Answer a platform correct string representation of a Timestamp, suitable for SQL generation.
|
protected Hashtable |
buildFieldTypes()
Return the mapping of class types to database types for the schema framework.
|
ValueReadQuery |
buildSelectQueryForNativeSequence()
INTERNAL:
Build the identity query for native sequencing.
|
int |
getMaxFieldNameSize()
INTERNAL:
returns the maximum number of characters that can be used in a field
name on this platform.
|
String |
getSelectForUpdateString()
INTERNAL:
Informix seems to like this syntax instead of the OF * syntax.
|
boolean |
isInformix() |
boolean |
isInformixOuterJoin()
INTERNAL:
Some database require outer joins to be given in the where clause, others require it in the from clause.
|
Hashtable |
maximumNumericValues()
INTERNAL:
Builds a table of maximum numeric values keyed on java class.
|
Hashtable |
minimumNumericValues()
INTERNAL:
Builds a table of minimum numeric values keyed on java class.
|
void |
printFieldIdentityClause(Writer writer)
INTERNAL:
Append the receiver's field serial constraint clause to a writer.
|
boolean |
requiresProcedureCallBrackets()
INTERNAL:
USed for sp calls.
|
boolean |
shouldNativeSequenceAcquireValueAfterInsert()
INTERNAL:
If native sequencing is being used on Informix then the values must be
retrieved after the insert.
|
boolean |
shouldPrintConstraintNameAfter()
INTERNAL:
Some Platforms want the constraint name after the constraint definition.
|
boolean |
shouldPrintOuterJoinInWhereClause()
INTERNAL:
Some database require outer joins to be given in the where clause, others require it in the from clause.
|
boolean |
supportsNativeSequenceNumbers()
INTERNAL:
Return true if the receiver uses host sequence numbers, generated on the database.
|
allowsSizeInProcedureArguments, appendBoolean, appendByteArray, appendLiteralToCall, appendLiteralToCallWithBinding, appendNumber, appendParameter, appendParameterInternal, appendString, autoCommit, beginTransaction, buildCallWithReturning, buildClassTypes, buildSelectQueryForNativeSequence, canBuildCallWithReturning, commitTransaction, convertToDatabaseType, copyInto, createPlatformDefaultSequence, dontBindUpdateAllQueryUsingTempTables, executeStoredProcedure, getAssignmentString, getBatchBeginString, getBatchDelimiterString, getBatchEndString, getClassTypes, getConstraintDeletionString, getCreateTempTableSqlBodyForTable, getCreateTempTableSqlPrefix, getCreateTempTableSqlSuffix, getCreateViewString, getCreationInOutputProcedureToken, getCreationOutputProcedureToken, getCursorCode, getFieldTypeDefinition, getFieldTypes, getFunctionCallHeader, getInOutputProcedureToken, getJDBCOuterJoinString, getJDBCType, getJDBCType, getJdbcTypeName, getMaxForeignKeyNameSize, getMaxUniqueKeyNameSize, getObjectFromResultSet, getOutputProcedureToken, getProcedureArgumentSetter, getProcedureArgumentString, getProcedureAsString, getProcedureBeginString, getProcedureCallHeader, getProcedureCallTail, getProcedureEndString, getQualifiedSequenceTableName, getSelectForUpdateNoWaitString, getSelectForUpdateOfString, getSequenceCounterFieldName, getSequenceNameFieldName, getSequencePreallocationSize, getSequenceTableName, getStatementCacheSize, getStoredProcedureParameterPrefix, getStoredProcedureTerminationToken, getStringBindingSize, getTempTableForTable, getTransactionIsolation, isNullAllowedInSelectClause, printFieldIdentityClause, printFieldNotNullClause, printFieldNullClause, printFieldTypeSize, printFieldUnique, printValuelist, printValuelist, processResultSet, registerOutputParameter, requiresNamedPrimaryKeyConstraints, requiresProcedureCallOuputToken, requiresTypeNameToRegisterOutputParameter, rollbackTransaction, setClassTypes, setCursorCode, setFieldTypes, setParameterValueInDatabaseCall, setParameterValueInDatabaseCall, setParameterValueInDatabaseCall, setPrimitiveParameterValue, setSequenceCounterFieldName, setSequenceNameFieldName, setSequenceTableName, setShouldBindAllParameters, setShouldCacheAllStatements, setShouldForceFieldNamesToUpperCase, setShouldIgnoreCaseOnFieldComparisons, setShouldOptimizeDataConversion, setShouldTrimStrings, setStatementCacheSize, setStringBindingSize, setSupportsAutoCommit, setTransactionIsolation, setUsesByteArrayBinding, setUsesNativeSQL, setUsesStreamsForBinding, setUsesStringBinding, shouldAcquireSequenceValueAfterInsert, shouldAlwaysUseTempStorageForModifyAll, shouldBindAllParameters, shouldBindLiterals, shouldCacheAllStatements, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldIgnoreException, shouldNativeSequenceUseTransaction, shouldOptimizeDataConversion, shouldPrintInOutputTokenBeforeType, shouldPrintOutputTokenAtStart, shouldPrintOutputTokenBeforeType, shouldTempTableSpecifyPrimaryKeys, shouldTrimStrings, shouldUseJDBCOuterJoinSyntax, supportsAutoCommit, supportsForeignKeyConstraints, supportsGlobalTempTables, supportsLocalTempTables, supportsPrimaryKeyConstraint, supportsStoredFunctions, supportsTempTables, supportsUniqueKeyConstraints, usesByteArrayBinding, usesNativeSQL, usesSequenceTable, usesStreamsForBinding, usesStringBinding, writeAutoAssignmentSetClause, writeAutoJoinWhereClause, writeCleanUpTempTableSql, writeCreateTempTableSql, writeDeleteFromTargetTableUsingTempTableSql, writeFields, writeFieldsAutoClause, writeFieldsList, writeInsertIntoTableSql, writeJoinWhereClause, writeLOB, writeParameterMarker, writeUpdateOriginalFromTempTableSqladdOperator, addSequence, clone, convertObject, createSequences, getConversionManager, getCustomModifyValueForCall, getDataTypesConvertedFrom, getDataTypesConvertedTo, getDefaultSequence, getDefaultSequenceToWrite, getOperator, getPlatformOperators, getSequence, getSequences, getSequencesToWrite, getTableQualifier, getTimestampFromServer, getTimestampQuery, hasDefaultSequence, initializePlatformOperators, isAccess, isAttunity, isCloudscape, isDB2, isDBase, isDerby, isHSQL, isMySQL, isODBC, isOracle, isPointBase, isPostgreSQL, isSQLAnywhere, isSQLServer, isSybase, isTimesTen, platformSpecificSequencingInitialization, removeAllSequences, removeSequence, sequencesAfterCloneCleanup, setConversionManager, setDefaultSequence, setSequences, setTableQualifier, setTimestampQuery, shouldUseCustomModifyForCall, toString, usesPlatformDefaultSequenceprotected void appendDate(Date date, Writer writer) throws IOException
appendDate in class DatabasePlatformIOExceptionprotected void appendInformixTimestamp(Timestamp timestamp, Writer writer) throws IOException
IOExceptionprotected void appendCalendar(Calendar calendar, Writer writer) throws IOException
appendCalendar in class DatabasePlatformIOExceptionprotected void appendInformixCalendar(Calendar calendar, Writer writer) throws IOException
IOExceptionprotected void appendTime(Time time, Writer writer) throws IOException
appendTime in class DatabasePlatformIOExceptionprotected void appendTimestamp(Timestamp timestamp, Writer writer) throws IOException
appendTimestamp in class DatabasePlatformIOExceptionprotected Hashtable buildFieldTypes()
DatabasePlatformbuildFieldTypes in class DatabasePlatformpublic ValueReadQuery buildSelectQueryForNativeSequence()
buildSelectQueryForNativeSequence in class DatabasePlatformpublic int getMaxFieldNameSize()
getMaxFieldNameSize in class DatabasePlatformpublic String getSelectForUpdateString()
getSelectForUpdateString in class DatabasePlatformpublic boolean isInformix()
isInformix in interface PlatformisInformix in class DatasourcePlatformpublic boolean isInformixOuterJoin()
isInformixOuterJoin in class DatabasePlatformpublic Hashtable maximumNumericValues()
NOTE: BigInteger & BigDecimal maximums are dependent upon their precision & Scale
maximumNumericValues in class DatabasePlatformpublic Hashtable minimumNumericValues()
NOTE: BigInteger & BigDecimal minimums are dependent upon their precision & Scale
minimumNumericValues in class DatabasePlatformpublic void printFieldIdentityClause(Writer writer) throws ValidationException
printFieldIdentityClause in class DatabasePlatformValidationExceptionpublic boolean requiresProcedureCallBrackets()
requiresProcedureCallBrackets in class DatabasePlatformpublic boolean shouldNativeSequenceAcquireValueAfterInsert()
shouldNativeSequenceAcquireValueAfterInsert in class DatabasePlatformpublic boolean shouldPrintConstraintNameAfter()
shouldPrintConstraintNameAfter in class DatabasePlatformpublic boolean shouldPrintOuterJoinInWhereClause()
shouldPrintOuterJoinInWhereClause in class DatabasePlatformpublic boolean supportsNativeSequenceNumbers()
supportsNativeSequenceNumbers in class DatabasePlatformCopyright © 2025. All rights reserved.