|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.fuberlin.wiwiss.d2rq.sql.vendor.SQL92
de.fuberlin.wiwiss.d2rq.sql.vendor.Oracle
public class Oracle
This syntax class implements MySQL-compatible SQL syntax.
Nested Class Summary | |
---|---|
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. |
Field Summary |
---|
Fields inherited from interface de.fuberlin.wiwiss.d2rq.sql.vendor.Vendor |
---|
HSQLDB, InterbaseOrFirebird, MSAccess, MySQL, Oracle, PostgreSQL, SQL92, SQLServer |
Constructor Summary | |
---|---|
Oracle()
|
Method Summary | |
---|---|
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)
|
Methods inherited from class de.fuberlin.wiwiss.d2rq.sql.vendor.SQL92 |
---|
getConcatenationExpression, getDefaultConnectionProperties, getRelationNameAliasExpression, getRowNumLimitAsSelectModifier, quoteAttribute, quoteDateLiteral, quoteIdentifier, quoteRelationName, quoteStringLiteral, quoteTimeLiteral, quoteTimestampLiteral |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Oracle()
Method Detail |
---|
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 applicable
null
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 expression
public 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 name
true
if this is a system table that doesn't contain user/application data
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |