public class PostgreSQLDialect extends Object implements SQLDialect
SQLDialect
.SQLDialect.LimitHandler
Constructor and Description |
---|
PostgreSQLDialect() |
Modifier and Type | Method and Description |
---|---|
boolean |
generatedKeyAlwaysReturned()
Retrieves whether a generated key will always be returned if the column name(s) or index(es) specified for the
auto generated key column(s) are valid and the statement succeeds.
|
String |
getColumnName(String columnName)
Get the actual column name for given column name (for example, applying case transformations)
|
Optional<SQLDialect.LimitHandler> |
getLimitHandler()
Get the
SQLDialect.LimitHandler |
Optional<String> |
getLockClause(com.holonplatform.core.query.lock.LockMode mode,
long timeout)
Get the SQL lock clause for given lock condition.
|
String |
getTableName(String tableName)
Get the actual table name for given table name (for example, applying case transformations)
|
void |
init(SQLDialectContext context)
Dialect initialization hook at parent datastore initialization.
|
boolean |
supportsGetGeneratedKeys()
Retrieves whether auto-generated keys can be retrieved after a statement has been executed.
|
boolean |
supportsLikeEscapeClause()
Retrieves whether this database supports specifying a
LIKE escape clause. |
com.holonplatform.core.exceptions.DataAccessException |
translateException(SQLException exception)
Translates given
SQLException into a suitable DataAccessException . |
boolean |
updateStatementSetAliasSupported()
Get whether alias is supported in the SET clause of an UPDATE clause.
|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
db2, deleteStatementAliasSupported, deleteStatementTargetRequired, derby, detect, getJavaType, getLockHint, getSqlType, h2, HANA, hsqldb, informix, mariaDB, mySQL, oracle, postgreSQL, resolveFunction, sqlite, sqlServer, supportGetGeneratedKeyByName, supportsBinaryStreamParameter, supportsSqlType, updateStatementAliasSupported, updateStatementFromSupported, useOuterInJoins
public void init(SQLDialectContext context) throws SQLException
SQLDialect
init
in interface SQLDialect
context
- Dialect contextSQLException
- An error occurred during dialect initializationpublic boolean updateStatementSetAliasSupported()
SQLDialect
updateStatementSetAliasSupported
in interface SQLDialect
true
if alias is supported in the SET clause of an UPDATE clausepublic boolean supportsLikeEscapeClause()
SQLDialect
LIKE
escape clause.supportsLikeEscapeClause
in interface SQLDialect
true
if so; false
otherwisepublic boolean supportsGetGeneratedKeys()
SQLDialect
supportsGetGeneratedKeys
in interface SQLDialect
true
if auto-generated keys can be retrieved after a statement has executed;
false
otherwisepublic boolean generatedKeyAlwaysReturned()
SQLDialect
generatedKeyAlwaysReturned
in interface SQLDialect
true
if so; false
otherwisepublic Optional<String> getLockClause(com.holonplatform.core.query.lock.LockMode mode, long timeout)
SQLDialect
getLockClause
in interface SQLDialect
mode
- Lock modetimeout
- Lock timeout in millisecondspublic com.holonplatform.core.exceptions.DataAccessException translateException(SQLException exception)
SQLDialect
SQLException
into a suitable DataAccessException
.translateException
in interface SQLDialect
exception
- Exception to translate (not null)DataAccessException
public Optional<SQLDialect.LimitHandler> getLimitHandler()
SQLDialect
SQLDialect.LimitHandler
getLimitHandler
in interface SQLDialect
public String getTableName(String tableName)
SQLDialect
getTableName
in interface SQLDialect
tableName
- Table namepublic String getColumnName(String columnName)
SQLDialect
getColumnName
in interface SQLDialect
columnName
- Column nameCopyright © 2019 The Holon Platform. All rights reserved.