Modifier and Type | Class and Description |
---|---|
static class |
Oracle.OracleCompatibilityTimeZoneDataType |
static class |
Oracle.OracleCompatibilityTimeZoneLocalDataType
getString() doesn't really work for TIMESTAMP WITH LOCAL TIME ZONE,
we have to use getTimestamp() and format the resulting Timestamp object
according to the session's time zone.
|
HSQLDB, InterbaseOrFirebird, MSAccess, MySQL, Oracle, PostgreSQL, SQL92, SQLServer
Constructor and Description |
---|
Oracle() |
Modifier and Type | Method and Description |
---|---|
Expression |
booleanExpressionToSimpleExpression(Expression expression)
Oracle doesn't actually support booolean expressions, except in
a few places.
|
DataType |
getDataType(int jdbcType,
String name,
int size)
Returns a
DataType corresponding to a JDBC type. |
Expression |
getRowNumLimitAsExpression(int limit)
Returns an expression for limiting the number of returned rows
for engines that support this (
ROWNUM <= n ) |
String |
getRowNumLimitAsQueryAppendage(int limit)
Technically speaking, SQL 92 supports NO way of limiting
result sets (ROW_NUMBER appeared in SQL 2003).
|
void |
initializeConnection(Connection connection)
Vendor-specific initialization for a database connection.
|
boolean |
isIgnoredTable(String schema,
String table)
TODO Use the Filter interface for this
|
String |
quoteBinaryLiteral(String hexString) |
afterCancel, afterClose, afterQuery, beforeCancel, beforeClose, beforeQuery, getConcatenationExpression, getDefaultConnectionProperties, getRelationNameAliasExpression, getRowNumLimitAsSelectModifier, quoteAttribute, quoteDateLiteral, quoteIdentifier, quoteRelationName, quoteStringLiteral, quoteTimeLiteral, quoteTimestampLiteral
public Expression getRowNumLimitAsExpression(int limit)
Vendor
ROWNUM <= n
)getRowNumLimitAsExpression
in interface Vendor
getRowNumLimitAsExpression
in class SQL92
limit
- A maximum number of rows, or Database.NO_LIMIT
Expression.TRUE
if not supported by the enginepublic String getRowNumLimitAsQueryAppendage(int limit)
SQL92
getRowNumLimitAsQueryAppendage
in interface Vendor
getRowNumLimitAsQueryAppendage
in class SQL92
limit
- A maximum number of rows, or Database.NO_LIMIT
public String quoteBinaryLiteral(String hexString)
quoteBinaryLiteral
in interface Vendor
quoteBinaryLiteral
in class SQL92
public DataType getDataType(int jdbcType, String name, int size)
Vendor
DataType
corresponding to a JDBC type. This may be
an unsupported datatype; in this case, its DataType.isUnsupported()
method will return true. null
will be returned if the vendor
code doesn't handle this datatype at all; that should generally be
considered a bug.getDataType
in interface Vendor
getDataType
in class SQL92
jdbcType
- A java.sql.Types
constantname
- The type name, as reported by java.sql
metadata methods, normalized to uppercasesize
- Character size of the type, or 0 if not applicablenull
if the vendor code is brokenpublic void initializeConnection(Connection connection) throws SQLException
Vendor
initializeConnection
in interface Vendor
initializeConnection
in class SQL92
SQLException
public Expression booleanExpressionToSimpleExpression(Expression expression)
booleanExpressionToSimpleExpression
in interface Vendor
booleanExpressionToSimpleExpression
in class SQL92
expression
- A boolean expressionpublic boolean isIgnoredTable(String schema, String table)
Vendor
isIgnoredTable
in interface Vendor
isIgnoredTable
in class SQL92
schema
- A schema name, or null
for the connection's default schematable
- A table nametrue
if this is a system table that doesn't contain user/application data