public class PostgresDatabase extends AbstractJdbcDatabase
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
PRODUCT_NAME |
caseSensitive, currentDateTimeFunction, dateFunctions, defaultAutoIncrementBy, defaultAutoIncrementStartWith, defaultCatalogName, defaultSchemaName, quotingEndCharacter, quotingStartCharacter, quotingStrategy, sequenceCurrentValueFunction, sequenceNextValueFunction, unmodifiableDataTypes, unquotedObjectsAreUppercasedPRIORITY_DATABASE, PRIORITY_DEFAULT| Constructor and Description |
|---|
PostgresDatabase() |
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
correctObjectName(java.lang.String objectName,
java.lang.Class<? extends DatabaseObject> objectType)
Fix the object name to the format the database expects, handling changes in case, etc.
|
java.lang.String |
escapeObjectName(java.lang.String objectName,
java.lang.Class<? extends DatabaseObject> objectType) |
boolean |
generateAutoIncrementBy(java.math.BigInteger incrementBy) |
boolean |
generateAutoIncrementStartWith(java.math.BigInteger startWith) |
java.lang.String |
getAutoIncrementClause() |
protected java.lang.String |
getConnectionSchemaName()
Overwrite this method to get the default schema name for the connection.
|
java.lang.String |
getDatabaseChangeLogLockTableName() |
java.lang.String |
getDatabaseChangeLogTableName() |
protected java.lang.String |
getDefaultDatabaseProductName() |
java.lang.String |
getDefaultDriver(java.lang.String url)
If this database understands the given url, return the default driver class name.
|
java.lang.Integer |
getDefaultPort() |
int |
getPriority() |
java.lang.String |
getShortName()
Returns an all-lower-case short name of the product.
|
java.util.Set<java.lang.String> |
getSystemViews()
Returns system (undroppable) views.
|
protected boolean |
hasMixedCase(java.lang.String tableName) |
boolean |
isCorrectDatabaseImplementation(DatabaseConnection conn)
Is this AbstractDatabase subclass the correct one to use for the given connection.
|
boolean |
isReservedWord(java.lang.String tableName) |
boolean |
isSystemObject(DatabaseObject example) |
boolean |
supportsCatalogInObjectName(java.lang.Class<? extends DatabaseObject> type) |
boolean |
supportsInitiallyDeferrableColumns()
Returns whether this database support initially deferrable columns.
|
boolean |
supportsSequences()
Does the database type support sequence.
|
boolean |
supportsTablespaces() |
addReservedWords, canCreateChangeLogTable, close, commit, correctSchema, correctSchema, createsIndexesForForeignKeys, dataTypeIsNotModifiable, disableForeignKeyChecks, doesTagExist, dropDatabaseObjects, enableForeignKeyChecks, equals, escapeColumnName, escapeColumnNameList, escapeConstraintName, escapeIndexName, escapeObjectName, escapeSequenceName, escapeStringForDatabase, escapeTableName, escapeViewName, execute, executeRollbackStatements, executeStatements, generateDatabaseFunctionValue, generatePrimaryKeyName, getAutoCommitMode, getAutoIncrementByClause, getAutoIncrementClause, getAutoIncrementClosing, getAutoIncrementOpening, getAutoIncrementStartWithClause, getConcatSql, getConnection, getConnectionCatalogName, getContainingObjects, getCurrentDateTimeFunction, getDatabaseMajorVersion, getDatabaseMinorVersion, getDatabaseProductName, getDatabaseProductVersion, getDataTypeMaxParameters, getDateFunctions, getDateLiteral, getDateLiteral, getDateLiteral, getDateTimeLiteral, getDefaultCatalogName, getDefaultSchema, getDefaultSchemaName, getJdbcCatalogName, getJdbcCatalogName, getJdbcSchemaName, getJdbcSchemaName, getLineComment, getLiquibaseCatalogName, getLiquibaseSchemaName, getLiquibaseTablespaceName, getName, getObjectQuotingStrategy, getOutputDefaultCatalog, getOutputDefaultSchema, getRanChangeSet, getRanChangeSetList, getRanDate, getRunStatus, getSchemaFromJdbcInfo, getSystemSchema, getSystemTables, getTimeLiteral, getViewDefinition, hashCode, isAutoCommit, isCaseSensitive, isDateOnly, isDateTime, isDefaultCatalog, isDefaultSchema, isFunction, isLiquibaseObject, isSafeToRunUpdate, isSystemView, isTimeOnly, jdbcCallsCatalogsSchemas, markChangeSetExecStatus, mustQuoteObjectName, parseDate, quoteObject, removeRanStatus, requiresPassword, requiresUsername, resetInternalState, rollback, saveRollbackStatement, saveStatements, setAutoCommit, setCanCacheLiquibaseTableInfo, setCaseSensitive, setConnection, setCurrentDateTimeFunction, setDatabaseChangeLogLockTableName, setDatabaseChangeLogTableName, setDefaultCatalogName, setDefaultSchemaName, setLiquibaseCatalogName, setLiquibaseSchemaName, setLiquibaseTablespaceName, setObjectQuotingStrategy, setOutputDefaultCatalog, setOutputDefaultSchema, startsWithNumeric, supportsAutoIncrement, supportsCatalogs, supportsDDLInTransaction, supportsDropTableCascadeConstraints, supportsForeignKeyDisable, supportsPrimaryKeyNames, supportsRestrictForeignKeys, supportsSchemas, tag, toStringpublic static final java.lang.String PRODUCT_NAME
public java.lang.String getShortName()
Databaseprotected java.lang.String getDefaultDatabaseProductName()
getDefaultDatabaseProductName in class AbstractJdbcDatabasepublic java.lang.Integer getDefaultPort()
public java.util.Set<java.lang.String> getSystemViews()
AbstractJdbcDatabasegetSystemViews in class AbstractJdbcDatabasepublic int getPriority()
public boolean supportsInitiallyDeferrableColumns()
Databasepublic boolean isCorrectDatabaseImplementation(DatabaseConnection conn) throws DatabaseException
DatabaseDatabaseExceptionpublic java.lang.String getDefaultDriver(java.lang.String url)
Databasepublic boolean supportsCatalogInObjectName(java.lang.Class<? extends DatabaseObject> type)
supportsCatalogInObjectName in interface DatabasesupportsCatalogInObjectName in class AbstractJdbcDatabasepublic boolean supportsSequences()
AbstractJdbcDatabasesupportsSequences in interface DatabasesupportsSequences in class AbstractJdbcDatabasepublic java.lang.String getDatabaseChangeLogTableName()
getDatabaseChangeLogTableName in interface DatabasegetDatabaseChangeLogTableName in class AbstractJdbcDatabaseDatabase.getDatabaseChangeLogTableName()public java.lang.String getDatabaseChangeLogLockTableName()
getDatabaseChangeLogLockTableName in interface DatabasegetDatabaseChangeLogLockTableName in class AbstractJdbcDatabaseDatabase.getDatabaseChangeLogLockTableName()public boolean isSystemObject(DatabaseObject example)
isSystemObject in interface DatabaseisSystemObject in class AbstractJdbcDatabasepublic boolean supportsTablespaces()
public java.lang.String getAutoIncrementClause()
getAutoIncrementClause in class AbstractJdbcDatabasepublic boolean generateAutoIncrementStartWith(java.math.BigInteger startWith)
generateAutoIncrementStartWith in class AbstractJdbcDatabasepublic boolean generateAutoIncrementBy(java.math.BigInteger incrementBy)
generateAutoIncrementBy in class AbstractJdbcDatabasepublic java.lang.String escapeObjectName(java.lang.String objectName,
java.lang.Class<? extends DatabaseObject> objectType)
escapeObjectName in interface DatabaseescapeObjectName in class AbstractJdbcDatabasepublic java.lang.String correctObjectName(java.lang.String objectName,
java.lang.Class<? extends DatabaseObject> objectType)
DatabasecorrectObjectName in interface DatabasecorrectObjectName in class AbstractJdbcDatabaseprotected boolean hasMixedCase(java.lang.String tableName)
public boolean isReservedWord(java.lang.String tableName)
isReservedWord in interface DatabaseisReservedWord in class AbstractJdbcDatabaseprotected java.lang.String getConnectionSchemaName()
AbstractJdbcDatabasegetConnectionSchemaName in class AbstractJdbcDatabase