Interface Platform
-
- All Known Implementing Classes:
PlatformDefaultImpl
,PlatformDerbyImpl
,PlatformHsqldbImpl
,PlatformMssqlImpl
,PlatformMysqlImpl
,PlatformOracleImpl
,PlatformPostgresqlImpl
public interface Platform
Interface for RDBMS platform specific behaviour.- Version:
- $Id: Platform.java 1868940 2019-10-25 15:13:36Z gk $
- Author:
- Martin Poeschl
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
createNotNullBeforeAutoincrement()
Returns whether the "not null part" of the definition of a column should be generated before the "autoincrement part" in a "create table" statement.String
getAutoIncrement()
String
getDateString(Date date)
Formats the given date as date string which is parseable by the database.String
getNullString(boolean notNull)
String
getSizeSuffix(String sqlType)
Returns a possible SQL suffix for column definitions of certain SQL Types, e.g. for Oracle VARCHAR2 columns, it typically makes sense to use 'XXX CHAR' instead of 'XXX' as size.SqlType
getSqlTypeForSchemaType(SchemaType schemaType)
Returns the db specific SQL type for a Torque type.String
getTimestampString(Date date)
Formats the given date as timestamp string which is parseable by the database.String
getTimeString(Date date)
Formats the given date as time string which is parseable by the database.boolean
hasScale(String sqlType)
Returns if the RDBMS-specific SQL type has a scale attribute.boolean
hasSize(String sqlType)
Returns if the RDBMS-specific SQL type has a size attribute.boolean
hasUniqueConstraintSize()
Returns whether the database has schema support unique constraint for columns with sizeString
quoteAndEscape(String value)
Quotes and escapes a string such that it can be used as literal String value in SQL.boolean
usesStandaloneSchema()
Returns whether the database has schema support where a schema is not tied to a user (oracle) or database (mysql), but can be created separately.
-
-
-
Method Detail
-
getSqlTypeForSchemaType
SqlType getSqlTypeForSchemaType(SchemaType schemaType)
Returns the db specific SQL type for a Torque type.- Parameters:
schemaType
- the Torque type, not null.- Returns:
- the db specific SQL type, or null if no SQL type is defined for the given Torque type.
-
getNullString
String getNullString(boolean notNull)
- Parameters:
notNull
- flag for not null- Returns:
- The RDBMS-specific SQL fragment for
NULL
orNOT NULL
.
-
getAutoIncrement
String getAutoIncrement()
- Returns:
- The RDBMS-specific SQL fragment for autoincrement.
-
hasSize
boolean hasSize(String sqlType)
Returns if the RDBMS-specific SQL type has a size attribute.- Parameters:
sqlType
- the SQL type- Returns:
- true if the type has a size attribute
-
hasScale
boolean hasScale(String sqlType)
Returns if the RDBMS-specific SQL type has a scale attribute.- Parameters:
sqlType
- the SQL type- Returns:
- true if the type has a scale attribute
-
getSizeSuffix
String getSizeSuffix(String sqlType)
Returns a possible SQL suffix for column definitions of certain SQL Types, e.g. for Oracle VARCHAR2 columns, it typically makes sense to use 'XXX CHAR' instead of 'XXX' as size.- Parameters:
sqlType
- the SQL type to determine the suffix for.- Returns:
- the size suffix, not null, may be empty.
-
createNotNullBeforeAutoincrement
boolean createNotNullBeforeAutoincrement()
Returns whether the "not null part" of the definition of a column should be generated before the "autoincrement part" in a "create table" statement.- Returns:
- true if the "not null part" should be first, false if the "autoincrement part" should be first in a "create table" statement.
-
quoteAndEscape
String quoteAndEscape(String value)
Quotes and escapes a string such that it can be used as literal String value in SQL.- Parameters:
value
- The string to escape, or null.- Returns:
- the escaped String, not null.
-
getDateString
String getDateString(Date date)
Formats the given date as date string which is parseable by the database.- Parameters:
date
- the date to format.- Returns:
- the date string, inclusive string escaping.
-
getTimeString
String getTimeString(Date date)
Formats the given date as time string which is parseable by the database.- Parameters:
date
- the date to format.- Returns:
- the time string, inclusive string escaping.
-
getTimestampString
String getTimestampString(Date date)
Formats the given date as timestamp string which is parseable by the database.- Parameters:
date
- the date to format.- Returns:
- the timestamp string, inclusive string escaping.
-
usesStandaloneSchema
boolean usesStandaloneSchema()
Returns whether the database has schema support where a schema is not tied to a user (oracle) or database (mysql), but can be created separately.- Returns:
- true if separate schema creation is possible, false if not.
-
hasUniqueConstraintSize
boolean hasUniqueConstraintSize()
Returns whether the database has schema support unique constraint for columns with size- Returns:
- true if unique column constraint has size
-
-