Package org.citydb.database.adapter
Class AbstractSQLAdapter
- java.lang.Object
-
- org.citydb.database.adapter.AbstractSQLAdapter
-
- Direct Known Subclasses:
SQLAdapter
,SQLAdapter
,SQLAdapter
public abstract class AbstractSQLAdapter extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected AbstractDatabaseAdapter
databaseAdapter
protected java.util.Properties
databaseOperations
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractSQLAdapter(AbstractDatabaseAdapter databaseAdapter)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
fillPlaceHolders(org.citydb.sqlbuilder.SQLStatement statement, java.sql.PreparedStatement preparedStatement, java.sql.Connection connection)
abstract org.citydb.sqlbuilder.select.projection.Function
getAggregateExtentFunction(org.citydb.sqlbuilder.schema.Column envelope)
abstract java.lang.String
getBigInt()
abstract org.citydb.sqlbuilder.select.PredicateToken
getBinarySpatialPredicate(SpatialOperatorName operator, org.citydb.sqlbuilder.schema.Column targetColumn, GeometryObject geometry, boolean negate)
abstract BlobExportAdapter
getBlobExportAdapter(java.sql.Connection connection, BlobType type)
abstract BlobImportAdapter
getBlobImportAdapter(java.sql.Connection connection, BlobType type)
abstract java.lang.String
getCharacter(int nrOfChars)
abstract java.lang.String
getCharacterVarying(int nrOfChars)
abstract java.lang.String
getCreateUnloggedTable(java.lang.String tableName, java.lang.String columns)
abstract java.lang.String
getCreateUnloggedTableAsSelect(java.lang.String tableName, java.lang.String select)
abstract java.lang.String
getCurrentSequenceValue(java.lang.String sequence)
abstract org.citydb.sqlbuilder.select.PredicateToken
getDistancePredicate(SpatialOperatorName operator, org.citydb.sqlbuilder.schema.Column targetColumn, GeometryObject geometry, double distance, boolean negate)
abstract java.lang.String
getDoublePrecision()
abstract java.lang.String
getHierarchicalGeometryQuery()
abstract java.lang.String
getInteger()
abstract int
getMaximumNumberOfItemsForInOperator()
abstract java.lang.String
getNextSequenceValue(java.lang.String sequence)
abstract java.lang.String
getNextSequenceValuesQuery(java.lang.String sequence)
abstract java.lang.String
getNumeric()
abstract java.lang.String
getNumeric(int precision)
abstract java.lang.String
getNumeric(int precision, int scale)
abstract java.lang.String
getPolygon2D()
abstract java.lang.String
getPseudoTableName()
abstract java.lang.String
getReal()
abstract java.lang.String
getSmallInt()
abstract java.lang.String
getUnloggedIndexProperty()
java.sql.PreparedStatement
prepareStatement(org.citydb.sqlbuilder.SQLStatement statement, java.sql.Connection connection)
abstract boolean
requiresPseudoTableInSelect()
java.lang.String
resolveDatabaseOperationName(java.lang.String key)
abstract boolean
spatialPredicateRequiresNoIndexHint()
abstract boolean
supportsFetchFirstClause()
-
-
-
Field Detail
-
databaseAdapter
protected final AbstractDatabaseAdapter databaseAdapter
-
databaseOperations
protected java.util.Properties databaseOperations
-
-
Constructor Detail
-
AbstractSQLAdapter
protected AbstractSQLAdapter(AbstractDatabaseAdapter databaseAdapter)
-
-
Method Detail
-
getInteger
public abstract java.lang.String getInteger()
-
getSmallInt
public abstract java.lang.String getSmallInt()
-
getBigInt
public abstract java.lang.String getBigInt()
-
getNumeric
public abstract java.lang.String getNumeric()
-
getNumeric
public abstract java.lang.String getNumeric(int precision)
-
getNumeric
public abstract java.lang.String getNumeric(int precision, int scale)
-
getReal
public abstract java.lang.String getReal()
-
getDoublePrecision
public abstract java.lang.String getDoublePrecision()
-
getCharacter
public abstract java.lang.String getCharacter(int nrOfChars)
-
getCharacterVarying
public abstract java.lang.String getCharacterVarying(int nrOfChars)
-
getPolygon2D
public abstract java.lang.String getPolygon2D()
-
getCreateUnloggedTable
public abstract java.lang.String getCreateUnloggedTable(java.lang.String tableName, java.lang.String columns)
-
getCreateUnloggedTableAsSelect
public abstract java.lang.String getCreateUnloggedTableAsSelect(java.lang.String tableName, java.lang.String select)
-
getUnloggedIndexProperty
public abstract java.lang.String getUnloggedIndexProperty()
-
requiresPseudoTableInSelect
public abstract boolean requiresPseudoTableInSelect()
-
getPseudoTableName
public abstract java.lang.String getPseudoTableName()
-
spatialPredicateRequiresNoIndexHint
public abstract boolean spatialPredicateRequiresNoIndexHint()
-
supportsFetchFirstClause
public abstract boolean supportsFetchFirstClause()
-
getHierarchicalGeometryQuery
public abstract java.lang.String getHierarchicalGeometryQuery()
-
getNextSequenceValue
public abstract java.lang.String getNextSequenceValue(java.lang.String sequence)
-
getCurrentSequenceValue
public abstract java.lang.String getCurrentSequenceValue(java.lang.String sequence)
-
getNextSequenceValuesQuery
public abstract java.lang.String getNextSequenceValuesQuery(java.lang.String sequence)
-
getMaximumNumberOfItemsForInOperator
public abstract int getMaximumNumberOfItemsForInOperator()
-
getBinarySpatialPredicate
public abstract org.citydb.sqlbuilder.select.PredicateToken getBinarySpatialPredicate(SpatialOperatorName operator, org.citydb.sqlbuilder.schema.Column targetColumn, GeometryObject geometry, boolean negate)
-
getDistancePredicate
public abstract org.citydb.sqlbuilder.select.PredicateToken getDistancePredicate(SpatialOperatorName operator, org.citydb.sqlbuilder.schema.Column targetColumn, GeometryObject geometry, double distance, boolean negate)
-
getAggregateExtentFunction
public abstract org.citydb.sqlbuilder.select.projection.Function getAggregateExtentFunction(org.citydb.sqlbuilder.schema.Column envelope)
-
getBlobImportAdapter
public abstract BlobImportAdapter getBlobImportAdapter(java.sql.Connection connection, BlobType type) throws java.sql.SQLException
- Throws:
java.sql.SQLException
-
getBlobExportAdapter
public abstract BlobExportAdapter getBlobExportAdapter(java.sql.Connection connection, BlobType type)
-
resolveDatabaseOperationName
public java.lang.String resolveDatabaseOperationName(java.lang.String key)
-
prepareStatement
public java.sql.PreparedStatement prepareStatement(org.citydb.sqlbuilder.SQLStatement statement, java.sql.Connection connection) throws java.sql.SQLException
- Throws:
java.sql.SQLException
-
fillPlaceHolders
public void fillPlaceHolders(org.citydb.sqlbuilder.SQLStatement statement, java.sql.PreparedStatement preparedStatement, java.sql.Connection connection) throws java.sql.SQLException
- Throws:
java.sql.SQLException
-
-