Project Wonder 5.0

er.extensions.jdbc
Class ERXSQLHelper.PostgresqlSQLHelper

java.lang.Object
  extended by er.extensions.jdbc.ERXSQLHelper
      extended by er.extensions.jdbc.ERXSQLHelper.PostgresqlSQLHelper
Enclosing class:
ERXSQLHelper

public static class ERXSQLHelper.PostgresqlSQLHelper
extends ERXSQLHelper


Nested Class Summary
 
Nested classes/interfaces inherited from class er.extensions.jdbc.ERXSQLHelper
ERXSQLHelper.ColumnIndex, ERXSQLHelper.CustomTypes, ERXSQLHelper.DerbySQLHelper, ERXSQLHelper.EROracleSQLHelper, ERXSQLHelper.FrontBaseSQLHelper, ERXSQLHelper.H2SQLHelper, ERXSQLHelper.MicrosoftSQLHelper, ERXSQLHelper.MySQLSQLHelper, ERXSQLHelper.NoSQLHelper, ERXSQLHelper.OpenBaseSQLHelper, ERXSQLHelper.OracleSQLHelper, ERXSQLHelper.PostgresqlSQLHelper
 
Field Summary
 
Fields inherited from class er.extensions.jdbc.ERXSQLHelper
log
 
Constructor Summary
ERXSQLHelper.PostgresqlSQLHelper()
           
 
Method Summary
 java.lang.String externalTypeForJDBCType(com.webobjects.jdbcadaptor.JDBCAdaptor adaptor, int jdbcType)
          For most types, finding the type in jdbc2Info's typeInfo will provide us with a correct type mapping.
protected  java.lang.String formatValueForAttribute(com.webobjects.eoaccess.EOSQLExpression expression, java.lang.Object value, com.webobjects.eoaccess.EOAttribute attribute, java.lang.String key)
           
 java.lang.String limitExpressionForSQL(com.webobjects.eoaccess.EOSQLExpression expression, com.webobjects.eocontrol.EOFetchSpecification fetchSpecification, java.lang.String sql, long start, long end)
           
 java.lang.String sqlForCreateIndex(java.lang.String indexName, java.lang.String tableName, ERXSQLHelper.ColumnIndex... columnIndexes)
          Returns the SQL expression for creating an index on the given set of columns
 java.lang.String sqlForCreateUniqueIndex(java.lang.String indexName, java.lang.String tableName, ERXSQLHelper.ColumnIndex... columnIndexes)
          Creates unique index; stolen from the derby helper
protected  java.lang.String sqlForGetNextValFromSequencedNamed(java.lang.String sequenceName)
          Returns the SQL required to select the next value from the given sequence.
 java.lang.String sqlForRegularExpressionQuery(java.lang.String key, java.lang.String value)
          Returns the SQL expression for a regular expression query.
 int varcharLargeColumnWidth()
          Returns the width that should be used for a varcharLarge column in migrations.
 int varcharLargeJDBCType()
          Returns the JDBCType that should be used for a varcharLarge column in migrations.
 
Methods inherited from class er.extensions.jdbc.ERXSQLHelper
_groupByOrHavingIndex, _orderByIndex, addGroupByClauseToExpression, addGroupByClauseToExpression, addHavingCountClauseToExpression, appendItemToListString, attributesToFetchForEntity, canReliablyPerformDistinctWithSortOrderings, columnIndexesFromColumnNames, columnNamesFromColumnIndexes, commandSeparatorChar, commandSeparatorString, commentPattern, createDependentSchemaSQLForEntities, createIndexSQLForEntities, createIndexSQLForEntities, createSchemaSQLForEntitiesInDatabaseContext, createSchemaSQLForEntitiesInModel, createSchemaSQLForEntitiesInModelAndOptions, createSchemaSQLForEntitiesInModelWithName, createSchemaSQLForEntitiesInModelWithNameAndOptions, createSchemaSQLForEntitiesWithOptions, createSchemaSQLForEntitiesWithOptions, customQueryExpressionHintAsString, defaultOptionDictionary, getNextValFromSequenceNamed, handleDatabaseException, jdbcTypeForCustomType, maximumElementPerInClause, migrationTableName, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, newSQLHelper, prepareConnectionForSchemaChange, quoteColumnName, readFormatForAggregateFunction, reassignExternalTypeForValueTypeOverride, removeSelectFromExpression, restoreConnectionSettingsAfterSchemaChange, rowCountForFetchSpecification, shouldExecute, shouldPerformDistinctInMemory, splitSQLStatements, splitSQLStatementsFromFile, splitSQLStatementsFromInputStream, sqlExpressionForFetchSpecification, sqlExpressionForFetchSpecification, sqlForCreateIndex, sqlForCreateUniqueIndex, sqlForFullTextQuery, sqlForSubquery, sqlWhereClauseStringForKey
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ERXSQLHelper.PostgresqlSQLHelper

public ERXSQLHelper.PostgresqlSQLHelper()
Method Detail

sqlForGetNextValFromSequencedNamed

protected java.lang.String sqlForGetNextValFromSequencedNamed(java.lang.String sequenceName)
Description copied from class: ERXSQLHelper
Returns the SQL required to select the next value from the given sequence. This should return a single row with a single column.

Overrides:
sqlForGetNextValFromSequencedNamed in class ERXSQLHelper
Parameters:
sequenceName - the name of the sequence
Returns:
the next sequence value

formatValueForAttribute

protected java.lang.String formatValueForAttribute(com.webobjects.eoaccess.EOSQLExpression expression,
                                                   java.lang.Object value,
                                                   com.webobjects.eoaccess.EOAttribute attribute,
                                                   java.lang.String key)
Overrides:
formatValueForAttribute in class ERXSQLHelper

limitExpressionForSQL

public java.lang.String limitExpressionForSQL(com.webobjects.eoaccess.EOSQLExpression expression,
                                              com.webobjects.eocontrol.EOFetchSpecification fetchSpecification,
                                              java.lang.String sql,
                                              long start,
                                              long end)
Overrides:
limitExpressionForSQL in class ERXSQLHelper

sqlForRegularExpressionQuery

public java.lang.String sqlForRegularExpressionQuery(java.lang.String key,
                                                     java.lang.String value)
Description copied from class: ERXSQLHelper
Returns the SQL expression for a regular expression query.

Overrides:
sqlForRegularExpressionQuery in class ERXSQLHelper
Returns:
the regex SQL

externalTypeForJDBCType

public java.lang.String externalTypeForJDBCType(com.webobjects.jdbcadaptor.JDBCAdaptor adaptor,
                                                int jdbcType)
For most types, finding the type in jdbc2Info's typeInfo will provide us with a correct type mapping. For Postgresql, it has the honor of not actually having a type named "integer," so EOF goes on a hunt for a type that MIGHT match (which is just bad, btw) and comes up with "serial". cug: There seems to be also nothing useful for "BLOB", so we return bytea for Type.BLOB; int8 for BIGINT; numeric for DECIMAL; bool for BOOLEAN We know better than EOF. For any other case, we pass it up to the default impl.

Overrides:
externalTypeForJDBCType in class ERXSQLHelper
Parameters:
adaptor - the adaptor to retrieve an external type for
jdbcType - the JDBC type number
Returns:
a guess at the external type name to use

sqlForCreateUniqueIndex

public java.lang.String sqlForCreateUniqueIndex(java.lang.String indexName,
                                                java.lang.String tableName,
                                                ERXSQLHelper.ColumnIndex... columnIndexes)
Creates unique index; stolen from the derby helper

Overrides:
sqlForCreateUniqueIndex in class ERXSQLHelper
Parameters:
indexName - the name of the index to create
tableName - the name of the containing table
columnIndexes - the list of columns to index on
Returns:
a SQL expression
See Also:
er.extensions.ERXSQLHelper#sqlForCreateUniqueIndex(java.lang.String, java.lang.String, er.extensions.ERXSQLHelper.ColumnIndex[])
Author:
cug - Jun 24, 2008

sqlForCreateIndex

public java.lang.String sqlForCreateIndex(java.lang.String indexName,
                                          java.lang.String tableName,
                                          ERXSQLHelper.ColumnIndex... columnIndexes)
Description copied from class: ERXSQLHelper
Returns the SQL expression for creating an index on the given set of columns

Overrides:
sqlForCreateIndex in class ERXSQLHelper
Parameters:
indexName - the name of the index to create
tableName - the name of the containing table
columnIndexes - the list of columns to index on
Returns:
a SQL expression

varcharLargeJDBCType

public int varcharLargeJDBCType()
Description copied from class: ERXSQLHelper
Returns the JDBCType that should be used for a varcharLarge column in migrations.

Overrides:
varcharLargeJDBCType in class ERXSQLHelper
Returns:
the JDBCType that should be used for a varcharLarge column in migrations

varcharLargeColumnWidth

public int varcharLargeColumnWidth()
Description copied from class: ERXSQLHelper
Returns the width that should be used for a varcharLarge column in migrations.

Overrides:
varcharLargeColumnWidth in class ERXSQLHelper
Returns:
the width that should be used for a varcharLarge column in migrations

Last updated: Tue, Feb 21, 2017 • 05:45 PM CET

Copyright © 2002 – 2007 Project Wonder.