Class PostgresDBDefinition
- java.lang.Object
-
- nz.co.gregs.dbvolution.databases.definitions.DBDefinition
-
- nz.co.gregs.dbvolution.databases.definitions.PostgresDBDefinition
-
- All Implemented Interfaces:
java.io.Serializable
public class PostgresDBDefinition extends DBDefinition
Defines the features of the PostgreSQL database that differ from the standard database.This DBDefinition is automatically included in
PostgresDBandPostgresDBOverSSLinstances, and you should not need to use it directly.Support DBvolution at Patreon
- Author:
- Gregory Graham
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static longserialVersionUID
-
Constructor Summary
Constructors Constructor Description PostgresDBDefinition()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringdoBitsValueTransform(boolean[] boolArray)Convert the boolean array of bit values into the SQL equivalent.java.lang.StringdoBooleanArrayTransform(java.lang.Boolean[] bools)Transforms the array of booleans into the database format.java.lang.StringdoBooleanToIntegerTransform(java.lang.String columnName)Transforms a bit expression into an integer expression.java.lang.StringdoBooleanValueTransform(java.lang.Boolean boolValue)Transform a Java Boolean into the equivalent in an SQL snippet.java.lang.StringdoColumnTransformForSelect(QueryableDatatype<?> qdt, java.lang.String selectableName)Perform necessary transformations on the stored value to make it readable by Java.java.lang.StringdoCurrentDateOnlyTransform()Creates the CURRENTDATE function for this database.java.lang.StringdoCurrentUTCDateTimeTransform()java.lang.StringdoCurrentUTCTimeTransform()Creates the CURRENTTIME function for this database.java.lang.StringdoDateAddDaysTransform(java.lang.String dateValue, java.lang.String numberOfDays)Does the required transformation to produce an SQL snippet that adds numberOfdays days to the dateValue.java.lang.StringdoDateAddHoursTransform(java.lang.String dateValue, java.lang.String numberOfHours)Does the required transformation to produce an SQL snippet that adds numberOfHours hours to the dateValue.java.lang.StringdoDateAddMinutesTransform(java.lang.String dateValue, java.lang.String numberOfMinutes)Does the required transformation to produce an SQL snippet that adds numberOfMinutes minutes to the dateValue.java.lang.StringdoDateAddMonthsTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Does the required transformation to produce an SQL snippet that adds numberOfMonths months to the dateValue.java.lang.StringdoDateAddSecondsTransform(java.lang.String dateValue, java.lang.String numberOfSeconds)Does the required transformation to produce an SQL snippet that adds numberOfSeconds seconds to the dateValue.java.lang.StringdoDateAddWeeksTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Does the required transformation to produce an SQL snippet that adds numberOfWeeks weeks to the dateValue.java.lang.StringdoDateAddYearsTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Does the required transformation to produce an SQL snippet that adds numberOfYears years to the dateValue.java.lang.StringdoDayDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Convert the 2 SQL date values into a difference in days.java.lang.StringdoDayOfWeekTransform(java.lang.String dateSQL)Extracts the weekday from the date provided as a number from 1 to 7.java.lang.StringdoFindIntegerInStringTransform(java.lang.String toSQLString)java.lang.StringdoFindNumberInStringTransform(java.lang.String toSQLString)java.lang.StringdoHourDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Convert the 2 SQL date values into a difference in hours.java.lang.StringdoInstantAddDaysTransform(java.lang.String dateValue, java.lang.String numberOfDays)Does the required transformation to produce an SQL snippet that adds numberOfdays days to the dateValue.java.lang.StringdoInstantAddHoursTransform(java.lang.String dateValue, java.lang.String numberOfHours)Does the required transformation to produce an SQL snippet that adds numberOfHours hours to the dateValue.java.lang.StringdoInstantAddMinutesTransform(java.lang.String dateValue, java.lang.String numberOfMinutes)Does the required transformation to produce an SQL snippet that adds numberOfMinutes minutes to the dateValue.java.lang.StringdoInstantAddMonthsTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Does the required transformation to produce an SQL snippet that adds numberOfMonths months to the dateValue.java.lang.StringdoInstantAddSecondsTransform(java.lang.String dateValue, java.lang.String numberOfSeconds)Does the required transformation to produce an SQL snippet that adds numberOfSeconds seconds to the dateValue.java.lang.StringdoInstantAddWeeksTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Does the required transformation to produce an SQL snippet that adds numberOfWeeks weeks to the dateValue.java.lang.StringdoInstantAddYearsTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Does the required transformation to produce an SQL snippet that adds numberOfYears years to the dateValue.java.lang.StringdoInstantDayOfWeekTransform(java.lang.String dateSQL)Extracts the weekday from the date provided as a number from 1 to 7.java.lang.StringdoInstantDayTransform(java.lang.String dateExpression)Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the day part of the date.java.lang.StringdoInstantHourTransform(java.lang.String dateExpression)Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the hour part of the date.java.lang.StringdoInstantMinuteTransform(java.lang.String dateExpression)Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the minute part of the date.java.lang.StringdoInstantMonthTransform(java.lang.String dateExpression)Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the month part of the date.java.lang.StringdoInstantSecondTransform(java.lang.String dateExpression)Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the second part of the date.java.lang.StringdoInstantSubsecondTransform(java.lang.String dateExpression)Returns the partial second value from the date.java.lang.StringdoInstantYearTransform(java.lang.String dateExpression)Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the year part of the date.java.lang.StringdoIntegerToBitTransform(java.lang.String columnName)Transforms a integer expression into an bit expression.java.lang.StringdoLine2DAllIntersectionPointsWithLine2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Generate the SQL required to find the complete set of all points of intersection between the tow 2 lines.java.lang.StringdoLine2DAsTextTransform(java.lang.String line2DSQL)Provide the SQL to derive the WKT version of the Line2D.java.lang.StringdoLine2DEqualsTransform(java.lang.String firstLineSQL, java.lang.String secondLineSQL)Transform the 2 Line2D SQL snippets into an EQUALS comparison of the 2java.lang.StringdoLine2DGetBoundingBoxTransform(java.lang.String toSQLString)Create the SQL to derive the bounding box of this Line2D SQLjava.lang.StringdoLine2DGetMaxXTransform(java.lang.String toSQLString)Generate the SQL that will return the largest X value within the Line2D expression.java.lang.StringdoLine2DGetMaxYTransform(java.lang.String toSQLString)Generate the SQL that will return the largest Y value within the Line2D expression.java.lang.StringdoLine2DGetMinXTransform(java.lang.String toSQLString)Generate the SQL that will return the smallest X value within the Line2D expression.java.lang.StringdoLine2DGetMinYTransform(java.lang.String toSQLString)Generate the SQL that will return the smallest Y value within the Line2D expression.java.lang.StringdoLine2DIntersectionPointWithLine2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Generate the SQL required to find the intersection point of the 2 line segment SQL expressions.java.lang.StringdoLine2DIntersectsLine2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Generates the SQL required to find whether the 2 lines cross at any point.java.lang.StringdoLineSegment2DAsTextTransform(java.lang.String toSQLString)Generate the SQL required to convert the line segment SQL expression into the WKT string format.java.lang.StringdoLineSegment2DEqualsTransform(java.lang.String toSQLString, java.lang.String toSQLString0)Generate the SQL required to find whether the 2 line segment SQL expressions are equal.java.lang.StringdoLineSegment2DGetBoundingBoxTransform(java.lang.String toSQLString)Generate the SQL required to the rectangular boundary that fully encloses the line segment SQL expression.java.lang.StringdoLineSegment2DGetMaxXTransform(java.lang.String toSQLString)Generate the SQL required to find the largest X value in the line segment SQL expression.java.lang.StringdoLineSegment2DGetMaxYTransform(java.lang.String toSQLString)Generate the SQL required to find the largest Y value in the line segment SQL expression.java.lang.StringdoLineSegment2DGetMinXTransform(java.lang.String toSQLString)Generate the SQL required to find the smallest X value in the line segment SQL expression.java.lang.StringdoLineSegment2DGetMinYTransform(java.lang.String toSQLString)Generate the SQL required to find the smallest Y value in the line segment SQL expression.java.lang.StringdoLineSegment2DIntersectionPointWithLineSegment2DTransform(java.lang.String firstLineSegment, java.lang.String secondLineSegment)Generate the SQL required to find the intersection point of the 2 line segment SQL expressions.java.lang.StringdoLineSegment2DIntersectsLineSegment2DTransform(java.lang.String toSQLString, java.lang.String toSQLString0)Generates the database specific SQL for testing whether the 2 line segment expressions ever cross.java.lang.StringdoLineSegment2DNotEqualsTransform(java.lang.String toSQLString, java.lang.String toSQLString0)Generate the SQL required to find whether the 2 line segment SQL expressions are NOT equal.java.lang.StringdoLogBase10NumberTransform(java.lang.String sql)Return the Natural Logarithm.java.lang.StringdoMinuteDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Convert the 2 SQL date values into a difference in minutes.java.lang.StringdoMonthDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Convert the 2 SQL date values into a difference in months.java.lang.StringdoMultiPoint2DAsTextTransform(java.lang.String first)Provides the SQL the transform the MultiPoint2D value into a WKT value.java.lang.StringdoMultiPoint2DEqualsTransform(java.lang.String first, java.lang.String second)Provide the SQL to compare 2 MultiPoint2Ds using the equivalent of EQUALS.java.lang.StringdoMultiPoint2DGetBoundingBoxTransform(java.lang.String first)Provides the SQL the derive the bounding box containing all the points in the MultiPoint2D value.java.lang.StringdoMultiPoint2DGetMaxXTransform(java.lang.String toSQLString)Provides the SQL that will derive the largest X value of all the points in the MultiPoint2D valuejava.lang.StringdoMultiPoint2DGetMaxYTransform(java.lang.String toSQLString)Provides the SQL that will derive the largest Y value of all the points in the MultiPoint2D valuejava.lang.StringdoMultiPoint2DGetMinXTransform(java.lang.String toSQLString)Provides the SQL that will derive the smallest X value of all the points in the MultiPoint2D valuejava.lang.StringdoMultiPoint2DGetMinYTransform(java.lang.String toSQLString)Provides the SQL that will derive the smallest Y value of all the points in the MultiPoint2D valuejava.lang.StringdoMultiPoint2DGetNumberOfPointsTransform(java.lang.String first)Provides the SQL the derive the number of points in the multipoint2d value.java.lang.StringdoMultiPoint2DGetPointAtIndexTransform(java.lang.String first, java.lang.String index)Provide the SQL to get point at the supplied index within the MultiPoint2Djava.lang.StringdoMultiPoint2DMeasurableDimensionsTransform(java.lang.String first)Provides the SQL the derive the dimension (2 basically) of the MultiPoint2D value.java.lang.StringdoMultiPoint2DToLine2DTransform(java.lang.String first)Provides the SQL the transform the MultiPoint2D value into aLine2DResultvalue.java.lang.StringdoNumberToIntegerTransform(java.lang.String sql)java.lang.StringdoPoint2DAsTextTransform(java.lang.String point2DString)Provide the SQL to derive the WKT version of the Point2D.java.lang.StringdoPoint2DEqualsTransform(java.lang.String firstPoint, java.lang.String secondPoint)Provide the SQL to compare 2 Point2Dsjava.lang.StringdoPoint2DGetBoundingBoxTransform(java.lang.String point2D)Provide the SQL to derive the Polygon2D representing the Bounding Box of the Point2D.java.lang.StringdoPoint2DGetXTransform(java.lang.String point2D)Provide the SQL to return the X coordinate of the Point2Djava.lang.StringdoPoint2DGetYTransform(java.lang.String point2D)Provide the SQL to return the Y coordinate of the Point2Djava.lang.StringdoPoint2DMeasurableDimensionsTransform(java.lang.String point2D)Provide the SQL to return the dimension of the Point2Djava.lang.StringdoPolygon2DAsTextTransform(java.lang.String toSQLString)Generates the SQL to convert the polygon to the standard text version of a polygon.java.lang.StringdoPolygon2DContainsPoint2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Generates the SQL to determine whether the first (polygon) argument contains the second point argument.java.lang.StringdoPolygon2DContainsPolygon2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Test whether the first polygon completely contains the second polygon.java.lang.StringdoPolygon2DDoesNotIntersectTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Inverse ofDBDefinition.doPolygon2DIntersectsTransform(java.lang.String, java.lang.String), tests whether the 2 polygons are non-coincident.java.lang.StringdoPolygon2DEqualsTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Compare 2 polygons with EQUALS.java.lang.StringdoPolygon2DGetAreaTransform(java.lang.String toSQLString)Retrieve the area of the polygon.java.lang.StringdoPolygon2DGetBoundingBoxTransform(java.lang.String toSQLString)Create a simple four sided bounding for the polygon.java.lang.StringdoPolygon2DGetExteriorRingTransform(java.lang.String polygon2DSQL)Defines the transformation require to transform an SQL Polygon2D into a linestring representing the exterior ring of the polygon.java.lang.StringdoPolygon2DGetMaxXTransform(java.lang.String polygon2DSQL)Generate the SQL that will return the largest X value within the Polygon2D expression.java.lang.StringdoPolygon2DGetMaxYTransform(java.lang.String polygon2DSQL)Generate the SQL that will return the largest X value within the Polygon2D expression.java.lang.StringdoPolygon2DGetMinXTransform(java.lang.String polygon2DSQL)Generate the SQL that will return the smallest X value within the Polygon2D expression.java.lang.StringdoPolygon2DGetMinYTransform(java.lang.String polygon2DSQL)Generate the SQL that will return the smallest Y value within the Polygon2D expression.java.lang.StringdoPolygon2DIntersectionTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Creates a Polygon2D representing the intersection of the Polygon2Ds.java.lang.StringdoPolygon2DIntersectsTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Test whether the 2 polygons intersect.java.lang.StringdoPolygon2DMeasurableDimensionsTransform(java.lang.String toSQLString)Returns the dimension of the polygon.java.lang.StringdoPolygon2DOverlapsTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Test whether the 2 polygons intersect but not contained or within.java.lang.StringdoPolygon2DTouchesTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Tests whether the polygons touch.java.lang.StringdoPolygon2DWithinTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Test whether the first polygon is completely within the second polygon.java.lang.StringdoRandomNumberTransform()Returns the required code to generate a random number.java.lang.StringdoRoundWithDecimalPlacesTransform(java.lang.String number, java.lang.String decimalPlaces)Generate the SQL to apply rounding to the Number expressions with the specified number of decimal places.java.lang.StringdoSecondDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Convert the 2 SQL date values into a difference in whole seconds.java.lang.StringdoStringAccumulateTransform(java.lang.String accumulateColumn, java.lang.String separator, java.lang.String referencedTable)java.lang.StringdoStringAccumulateTransform(java.lang.String accumulateColumn, java.lang.String separator, java.lang.String orderByColumnName, java.lang.String referencedTable)java.lang.StringdoStringToNumberTransform(java.lang.String stringResultContainingANumber)Provide SQL to interpret the String value as a number.java.lang.StringdoSubsecondTransform(java.lang.String dateExpression)Returns the partial second value from the date.java.lang.StringdoSubstringAfterTransform(java.lang.String fromThis, java.lang.String afterThis)Generate the SQL to use the SUBSTRING_AFTER function with the 2 String expressions.java.lang.StringdoSubstringBeforeTransform(java.lang.String fromThis, java.lang.String beforeThis)Generate the SQL to use the SUBSTRING_BEFORE function with the 2 String expressions.java.lang.StringdoTruncTransform(java.lang.String firstString, java.lang.String secondString)Transforms 2 SQL snippets that represent a real number and a integer into a real number with the decimal places reduced to the integer.java.lang.StringdoWeekDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Convert the 2 SQL date values into a difference in days.java.lang.StringdoYearDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Convert the 2 SQL date values into a difference in years.protected java.lang.StringformatNameForDatabase(java.lang.String sqlObjectName)Apply standard object name transformations required by the database.java.lang.StringformatPrimaryKeyForRetrievingGeneratedKeys(java.lang.String primaryKeyColumnName)Allows the database to have a different format for the primary key column name.java.lang.StringgetColumnAutoIncrementSuffix()Returns the suffix added to a column definition to support auto-incrementing a column.java.lang.StringgetDatabaseDataTypeOfQueryableDatatype(QueryableDatatype<?> qdt)Supplied to allow the DBDefintion to override the standard QDT datatype.java.lang.StringgetDateFormattedForQuery(java.util.Date date)Transforms the Date instance into a SQL snippet that can be used as a date in a query.java.lang.StringgetDatePartsFormattedForQuery(java.lang.String years, java.lang.String months, java.lang.String days, java.lang.String hours, java.lang.String minutes, java.lang.String seconds, java.lang.String subsecond, java.lang.String timeZoneSign, java.lang.String timeZoneHourOffset, java.lang.String timeZoneMinuteOffSet)Transforms the specific parts of a date from their SQL snippets into a SQL snippet that can be used as a date in a query.java.lang.StringgetDropDatabase(java.lang.String databaseName)Provides the SQL statement required to drop the named database.java.lang.StringgetLocalDatePartsFormattedForQuery(java.lang.String years, java.lang.String months, java.lang.String days, java.lang.String hours, java.lang.String minutes, java.lang.String seconds, java.lang.String subsecond, java.lang.String timeZoneSign, java.lang.String timeZoneHourOffset, java.lang.String timeZoneMinuteOffSet)Transforms the specific parts of a date from their SQL snippets into a SQL snippet that can be used as a date in a query.java.lang.StringgetLogBase10FunctionName()Return the function name for the Logarithm Base10 function.java.lang.StringgetOrderByAscending()java.lang.StringgetOrderByDescending()java.lang.Class<? extends QueryableDatatype<?>>getQueryableDatatypeClassForSQLDatatype(java.lang.String typeName)Returns theQueryableDatatypeclass to be used with the named database specific datatype.java.lang.StringgetSequenceUpdateSQL(java.lang.String tableName, java.lang.String columnName, long primaryKeyGenerated)protected java.lang.StringgetSpecialAutoIncrementType()Provides the special auto-increment type used by this database if it has one.protected booleanhasSpecialAutoIncrementType()Indicates whether the database uses a special type for it's auto-increment columns.LargeObjectHandlerTypepreferredLargeObjectReader(DBLargeObject<?> lob)LargeObjectHandlerTypepreferredLargeObjectWriter(DBLargeObject<?> lob)booleanrequiresOnClauseForAllJoins()booleanrequiresSequenceUpdateAfterManualInsert()booleansupportsArcSineFunction()Indicates that the database supports the ARCSINE function.booleansupportsHyperbolicFunctionsNatively()Indicates that this database supports hyperbolic functions natively.booleansupportsModulusFunction()Indicates whether the database supports the modulus function.booleansupportsTableCheckingViaMetaData()java.lang.StringtransformCoordinateArrayToDatabasePolygon2DFormat(java.util.List<java.lang.String> coordinateSQL)Override this method to provide the SQL that will create a database Polygon2D value from the list of presumed coordinates.java.lang.StringtransformCoordinatesIntoDatabasePoint2DFormat(java.lang.String xValue, java.lang.String yValue)Provide the SQL that correctly represents these coordinates in this database.com.vividsolutions.jts.geom.LineStringtransformDatabaseLine2DValueToJTSLineString(java.lang.String lineStringAsString)From the database's representation of a Lin2D create a JTS LineString.com.vividsolutions.jts.geom.LineSegmenttransformDatabaseLineSegment2DValueToJTSLineSegment(java.lang.String lineStringAsString)Convert the String object returned by the database into a JTS LineSegment object.com.vividsolutions.jts.geom.MultiPointtransformDatabaseMultiPoint2DValueToJTSMultiPoint(java.lang.String pointsAsString)Convert the database's string representation of a MultiPoint2D value into a MultiPoint..com.vividsolutions.jts.geom.PointtransformDatabasePoint2DValueToJTSPoint(java.lang.String pointAsString)From the database's representation of a Point2D create a JTS Point.com.vividsolutions.jts.geom.PolygontransformDatabasePolygon2DToJTSPolygon(java.lang.String geometryAsString)From the database's representation of a Polygon2D create a JTS Polygon.java.lang.StringtransformLineSegmentIntoDatabaseLineSegment2DFormat(com.vividsolutions.jts.geom.LineSegment lineSegment)Convert the JTS LineSegment object into a SQL expression that the database will accept as a line segment.java.lang.StringtransformLineStringIntoDatabaseLine2DFormat(com.vividsolutions.jts.geom.LineString line)Provide the SQL that correctly represents this LineString in this database.java.lang.StringtransformMultiPoint2DToDatabaseMultiPoint2DValue(com.vividsolutions.jts.geom.MultiPoint points)Provide the SQL that correctly represents this MultiPoint2D value in this database.java.lang.StringtransformPoint2DArrayToDatabasePolygon2DFormat(java.util.List<java.lang.String> pointSQL)Create the SQL to transform a Point2DArray SQL into a Polygon2Djava.lang.StringtransformPoint2DIntoDatabaseFormat(com.vividsolutions.jts.geom.Point point)Provide the SQL that correctly represents this Point2D in this database.java.lang.StringtransformPolygonIntoDatabasePolygon2DFormat(com.vividsolutions.jts.geom.Polygon polygon)Generate the SQL that will transform a WKT version of a Polygon2D into the database's version of a Polygon2D.DBExpressiontransformToStorableType(DBExpression columnExpression)Transform a datatype not supported by the database into a type that the database does support.-
Methods inherited from class nz.co.gregs.dbvolution.databases.definitions.DBDefinition
beginAndLine, beginConditionClauseLine, beginDeleteLine, beginFromClause, beginFullOuterJoin, beginGroupByClause, beginInnerJoin, beginInsertColumnList, beginInsertLine, beginJoinClauseLine, beginLeftOuterJoin, beginNumberValue, beginOnClause, beginOrderByClause, beginOrLine, beginRightOuterJoin, beginSelectStatement, beginSetClause, beginStringValue, beginTableAlias, beginUpdateLine, beginValueClause, beginValueSeparatorClause, beginWhereClause, beginWhereClauseLine, beginWithClause, beginWithClausePrimingQuery, beginWithClauseRecursiveQuery, countStarClause, doBooleanArrayElementTransform, doBooleanArrayResultInterpretation, doBooleanStatementToBooleanComparisonValueTransform, doBooleanValueToBooleanComparisonValueTransform, doChooseTransformation, doComparableInstantTransform, doConcatTransform, doConcatTransform, doCurrentDateTimeTransform, doCurrentTimeTransform, doDateAtTimeZoneTransform, doDateIfNullTransform, doDateMinusDateRepeatTransform, doDateMinusToDateRepeatTransformation, doDatePlusDateRepeatTransform, doDateRepeatEqualsTransform, doDateRepeatGetDaysTransform, doDateRepeatGetHoursTransform, doDateRepeatGetMinutesTransform, doDateRepeatGetMonthsTransform, doDateRepeatGetSecondsTransform, doDateRepeatGetYearsTransform, doDateRepeatGreaterThanEqualsTransform, doDateRepeatGreaterThanTransform, doDateRepeatLessThanEqualsTransform, doDateRepeatLessThanTransform, doDateRepeatNotEqualsTransform, doDateRepeatToStringTransform, doDayTransform, doDegreesTransform, doEndOfMonthTransform, doGreatestOfTransformation, doHourTransform, doIfThenElseTransform, doIntegerEqualsTransform, doIntegerIfNullTransform, doIntegerToNumberTransform, doIntegerToStringTransform, doInTransform, doLeastOfTransformation, doLeftPadTransform, doLeftTrimTransform, doLine2DGetMagnitudeTransform, doLine2DHasMagnitudeTransform, doLine2DMeasurableDimensionsTransform, doLine2DNotEqualsTransform, doLine2DSpatialDimensionsTransform, doLineSegment2DDimensionTransform, doLineSegment2DEndPointTransform, doLineSegment2DGetMagnitudeTransform, doLineSegment2DHasMagnitudeTransform, doLineSegment2DSpatialDimensionsTransform, doLineSegment2DStartPointTransform, doLogBase10IntegerTransform, doLowercaseTransform, doMinuteTransform, doModulusTransform, doMonthTransform, doMultiPoint2DGetMagnitudeTransform, doMultiPoint2DHasMagnitudeTransform, doMultiPoint2DNotEqualsTransform, doMultiPoint2DSpatialDimensionsTransform, doNewLocalDateFromYearMonthDayTransform, doNotInTransform, doNumberEqualsTransform, doNumberIfNullTransform, doNumberToStringTransform, doPoint2DDistanceBetweenTransform, doPoint2DGetMagnitudeTransform, doPoint2DHasMagnitudeTransform, doPoint2DSpatialDimensionsTransform, doPolygon2DGetMagnitudeTransform, doPolygon2DHasMagnitudeTransform, doPolygon2DSpatialDimensionsTransform, doPolygon2DUnionTransform, doPositionInStringTransform, doRadiansTransform, doRandomIntegerTransform, doReplaceTransform, doRightPadTransform, doRightTrimTransform, doRoundTransform, doSecondTransform, doSelectFromRecursiveTable, doStringAccumulateTransform, doStringEqualsTransform, doStringIfNullTransform, doStringLengthTransform, doSubstringTransform, doTrimFunction, doUppercaseTransform, doWrapQueryForPaging, doYearTransform, dropTriggerBasedIdentitySQL, endDeleteLine, endInsertColumnList, endInsertLine, endMultilineComment, endNumberValue, endOnClause, endOrderByClause, endSQLStatement, endStringValue, endTableAlias, endValueClause, endWithClausePrimingQuery, endWithClauseRecursiveQuery, formatColumnName, formatColumnNameForDBQueryResultSet, formatExpressionAlias, formatForColumnAlias, formatTableAlias, formatTableAliasAndColumnName, formatTableAliasAndColumnNameForSelectClause, formatTableAndColumnName, formatTableName, formatWithClauseTableDefinition, getAddColumnColumnSQL, getAlterTableAddColumnSQL, getAlterTableAddForeignKeyStatement, getAlterTableDropForeignKeyStatement, getArctan2FunctionName, getAverageFunctionName, getCheezBurger, getChooseFunctionName, getCountFunctionName, getCreateTableColumnsEnd, getCreateTableColumnsNameAndTypeSeparator, getCreateTableColumnsSeparator, getCreateTableColumnsStart, getCreateTablePrimaryKeyClauseEnd, getCreateTablePrimaryKeyClauseMiddle, getCreateTablePrimaryKeyClauseStart, getCreateTableStart, getCurrentDateOnlyFunctionName, getCurrentDateTimeFunction, getCurrentTimeFunction, getCurrentUserFunctionName, getDefaultTimeZoneHour, getDefaultTimeZoneMinute, getDefaultTimeZoneSign, getDenseRankFunctionName, getDropTableIfExistsClause, getDropTableStart, getEmptyString, getEqualsComparator, getExpFunctionName, getFalseOperation, getFalseValue, getFirstValueFunctionName, getForeignKeyClauseForCreateTable, getFromClause, getGreatestOfFunctionName, getHavingClauseStart, getIfNullFunctionName, getIndexClauseForCreateTable, getInsertCleanUp, getInsertPreparation, getInstantFormattedForQuery, getInstantPartsFormattedForQuery, getLastValueFunctionName, getLeastOfFunctionName, getLimitRowsSubClauseAfterWhereClause, getLimitRowsSubClauseDuringSelectClause, getLocalDateFormattedForQuery, getLocalDateTimeFormattedForQuery, getLowercaseFunctionName, getMaxFunctionName, getMinFunctionName, getNaturalLogFunctionName, getNegationFunctionName, getNextSequenceValueFunctionName, getNotEqualsComparator, getNthValueFunctionName, getNTilesFunctionName, getNull, getNullsAnyOrder, getNullsFirst, getNullsLast, getNumericPrecision, getNumericScale, getOrderByDirectionClause, getOrderByDirectionClause, getPercentRankFunctionName, getPreparedVariableSymbol, getPrimaryKeySequenceName, getPrimaryKeyTriggerName, getRankFunctionName, getRecursiveQueryDepthColumnName, getRetrieveLastInsertedRowSQL, getRightTrimFunctionName, getRoundUpFunctionName, getRowNumberFunctionName, getSpatial2DIndexSQL, getSpecialPrimaryKeyTypeOfDBDatatype, getSQLToCheckTableExists, getSQLTypeAndModifiersOfDBDatatype, getStandardDeviationFunctionName, getStartingOrderByClauseSeparator, getStartingSelectSubClauseSeparator, getStartingSetSubClauseSeparator, getStringLengthFunctionName, getSubsequentGroupBySubClauseSeparator, getSubsequentOrderByClauseSeparator, getSubsequentSelectSubClauseSeparator, getSubsequentSetSubClauseSeparator, getSumFunctionName, getSystemTableExclusionPattern, getTableAlias, getTableAliasForObject, getTableExistsSQL, getTriggerBasedIdentitySQL, getTrueOperation, getTrueValue, getTruncFunctionName, getUnionDistinctOperator, getUnionOperator, getUppercaseFunctionName, getUTCDateFormattedForQuery, getValuesClauseColumnSeparator, getValuesClauseValueSeparator, getWhereClauseBeginningCondition, getWhereClauseBeginningCondition, hasSpecialPrimaryKeyTypeForDBDatatype, isColumnNamesCaseSensitive, parseDateFromGetString, parseDateRepeatFromGetString, parseInstantFromGetString, parseLocalDateFromGetString, parseLocalDateTimeFromGetString, persistentConnectionRequired, prefersDatesReadAsStrings, prefersIndexBasedGroupByClause, prefersIndexBasedOrderByClause, prefersLargeObjectsReadAsBase64CharacterStream, prefersLargeObjectsReadAsBLOB, prefersLargeObjectsReadAsBytes, prefersLargeObjectsReadAsCLOB, prefersLargeObjectsSetAsBase64String, prefersLargeObjectsSetAsBLOB, prefersLargeObjectsSetAsCharacterStream, prefersTrailingPrimaryKeyDefinition, prefersTriggerBasedIdentities, propertyWrapperConformsToAutoIncrementType, requiresClosedPolygons, requiresRecursiveTableAlias, requiresReversingLineStringsFromDatabase, requiresSortedSubselectForStringAggregate, requiresSpatial2DIndexes, safeString, sanityCheckDBTableField, startMultilineComment, supportsAlterTableAddConstraint, supportsArraysNatively, supportsBulkInserts, supportsChooseNatively, supportsComparingBooleanResults, supportsCotangentFunction, supportsDegreesFunction, supportsDifferenceBetweenNullAndEmptyString, supportsDropTableIfExists, supportsExpFunction, supportsFullOuterJoin, supportsFullOuterJoinNatively, supportsGeneratedKeys, supportsGreatestOfNatively, supportsLeastOfNatively, supportsLeftPadTransform, supportsNullsOrderingStandard, supportsPagingNatively, supportsPurelyFunctionalGroupByColumns, supportsRadiansFunction, supportsRecursiveQueriesNatively, supportsRetrievingLastInsertedRowViaSQL, supportsRightOuterJoinNatively, supportsRightPadTransform, supportsRowLimitsNatively, supportsStandardDeviationFunction, supportsStatementIsClosed, supportsTimeZones, supportsUnionDistinct, supportsWindowingFunctionsInTheHavingClause, supportsWindowingFunctionsInTheOrderByClause, supportsXOROperator, toLowerCase, transformPeriodIntoDateRepeat, transformToSelectableType, willCloseConnectionOnStatementCancel
-
-
-
-
Field Detail
-
serialVersionUID
public static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Method Detail
-
getDropDatabase
public java.lang.String getDropDatabase(java.lang.String databaseName) throws java.lang.UnsupportedOperationExceptionDescription copied from class:DBDefinitionProvides the SQL statement required to drop the named database.- Overrides:
getDropDatabasein classDBDefinition- Parameters:
databaseName- databaseNameSupport DBvolution at Patreon
- Returns:
- the default implementation does not support dropping databases.
- Throws:
java.lang.UnsupportedOperationException
-
formatPrimaryKeyForRetrievingGeneratedKeys
public java.lang.String formatPrimaryKeyForRetrievingGeneratedKeys(java.lang.String primaryKeyColumnName)
Description copied from class:DBDefinitionAllows the database to have a different format for the primary key column name.Most databases do not have a problem with this method but PostgreSQL likes the column name to be lowercase in this particular instance.
- Overrides:
formatPrimaryKeyForRetrievingGeneratedKeysin classDBDefinition- Parameters:
primaryKeyColumnName- the name of the primary key column formatted for this databaseSupport DBvolution at Patreon
- Returns:
- the Primary Key formatted for this database.
-
formatNameForDatabase
protected java.lang.String formatNameForDatabase(java.lang.String sqlObjectName)
Description copied from class:DBDefinitionApply standard object name transformations required by the database.This methods helps support database specific naming rules by allowing post-processing of the object names to conform to the rules.
- Overrides:
formatNameForDatabasein classDBDefinition- Parameters:
sqlObjectName- the Java object name to be transformed into a database object name.Support DBvolution at Patreon
- Returns:
- the object name formatted for use with this database
-
getDateFormattedForQuery
public java.lang.String getDateFormattedForQuery(java.util.Date date)
Description copied from class:DBDefinitionTransforms the Date instance into a SQL snippet that can be used as a date in a query.For instance the date might be transformed into a string like " DATETIME('2013-03-23 00:00:00') "
- Specified by:
getDateFormattedForQueryin classDBDefinition- Parameters:
date- dateSupport DBvolution at Patreon
- Returns:
- the date formatted as a string that the database will correctly interpret as a date.
-
getLocalDatePartsFormattedForQuery
public java.lang.String getLocalDatePartsFormattedForQuery(java.lang.String years, java.lang.String months, java.lang.String days, java.lang.String hours, java.lang.String minutes, java.lang.String seconds, java.lang.String subsecond, java.lang.String timeZoneSign, java.lang.String timeZoneHourOffset, java.lang.String timeZoneMinuteOffSet)Description copied from class:DBDefinitionTransforms the specific parts of a date from their SQL snippets into a SQL snippet that can be used as a date in a query.For instance the date parts might be transformed into a string like " DATETIME('2013-03-23 00:00:00') "
- Overrides:
getLocalDatePartsFormattedForQueryin classDBDefinition- Parameters:
years- the sql representing the years part of the datemonths- the sql representing the months (1-12) part of the datedays- the sql representing the days (0-31) part of the datehours- the sql representing the hours (0-24) part of the dateminutes- the sql representing the minutes (0-60) part of the dateseconds- the sql representing the seconds (0-59) part of the datesubsecond- the sql representing the subsecond (0.0-0.9999) part of the date, precision is based on the database's limitationstimeZoneSign- + or -timeZoneHourOffset- the sql representing the minutes (0-59) part of the date's time zoneSupport DBvolution at Patreon
timeZoneMinuteOffSet- the sql representing the hours (0-13) part of the date's time zone- Returns:
- the date formatted as a string that the database will be correctly interpret as a date.
-
getDatePartsFormattedForQuery
public java.lang.String getDatePartsFormattedForQuery(java.lang.String years, java.lang.String months, java.lang.String days, java.lang.String hours, java.lang.String minutes, java.lang.String seconds, java.lang.String subsecond, java.lang.String timeZoneSign, java.lang.String timeZoneHourOffset, java.lang.String timeZoneMinuteOffSet)Description copied from class:DBDefinitionTransforms the specific parts of a date from their SQL snippets into a SQL snippet that can be used as a date in a query.For instance the date parts might be transformed into a string like " DATETIME('2013-03-23 00:00:00') "
- Specified by:
getDatePartsFormattedForQueryin classDBDefinition- Parameters:
years- the sql representing the years part of the datemonths- the sql representing the months (1-12) part of the datedays- the sql representing the days (0-31) part of the datehours- the sql representing the hours (0-24) part of the dateminutes- the sql representing the minutes (0-60) part of the dateseconds- the sql representing the seconds (0-59) part of the datesubsecond- the sql representing the subsecond (0.0-0.9999) part of the date, precision is based on the database's limitationstimeZoneSign- + or -timeZoneHourOffset- the sql representing the minutes (0-59) part of the date's time zoneSupport DBvolution at Patreon
timeZoneMinuteOffSet- the sql representing the hours (0-13) part of the date's time zone- Returns:
- the date formatted as a string that the database will be correctly interpret as a date.
-
getDatabaseDataTypeOfQueryableDatatype
public java.lang.String getDatabaseDataTypeOfQueryableDatatype(QueryableDatatype<?> qdt)
Description copied from class:DBDefinitionSupplied to allow the DBDefintion to override the standard QDT datatype.When the
- Overrides:
getDatabaseDataTypeOfQueryableDatatypein classDBDefinition- Parameters:
qdt- qdtSupport DBvolution at Patreon
- Returns:
- the databases type for the QDT as a string
-
getQueryableDatatypeClassForSQLDatatype
public java.lang.Class<? extends QueryableDatatype<?>> getQueryableDatatypeClassForSQLDatatype(java.lang.String typeName)
Description copied from class:DBDefinitionReturns theQueryableDatatypeclass to be used with the named database specific datatype.This method is called during
DBTableClassGeneratorto resolve data types that JDBC doesn't recognize into a QDT. In particular anything that JDBC reports asTypes.OTHERwill be resolved using this method.The default method returns NULL which causes the generator to use a DBJavaObject.
- Overrides:
getQueryableDatatypeClassForSQLDatatypein classDBDefinition- Parameters:
typeName- the name of the SQL data type as reported by JDBCSupport DBvolution at Patreon
- Returns:
- the class of the QDT that can be used with this columns of this type name.
-
getOrderByDescending
public java.lang.String getOrderByDescending()
- Overrides:
getOrderByDescendingin classDBDefinition
-
getOrderByAscending
public java.lang.String getOrderByAscending()
- Overrides:
getOrderByAscendingin classDBDefinition
-
doTruncTransform
public java.lang.String doTruncTransform(java.lang.String firstString, java.lang.String secondString)Description copied from class:DBDefinitionTransforms 2 SQL snippets that represent a real number and a integer into a real number with the decimal places reduced to the integer.0 decimal places transforms the real number into an integer.
- Overrides:
doTruncTransformin classDBDefinition- Parameters:
firstString- realNumberExpressionsecondString- numberOfDecimalPlacesExpressionSupport DBvolution at Patreon
- Returns:
- an expression that reduces the realNumberExpression to only the number of decimal places in numberOfDecimalPlacesExpression.
-
doNumberToIntegerTransform
public java.lang.String doNumberToIntegerTransform(java.lang.String sql)
- Overrides:
doNumberToIntegerTransformin classDBDefinition
-
doBooleanToIntegerTransform
public java.lang.String doBooleanToIntegerTransform(java.lang.String columnName)
Description copied from class:DBDefinitionTransforms a bit expression into an integer expression.Used to allow comparison of bit columns in some databases.
- Overrides:
doBooleanToIntegerTransformin classDBDefinition- Parameters:
columnName- bitExpressionSupport DBvolution at Patreon
- Returns:
- the transformation necessary to transform bitExpression into an integer expression in the SQL.
-
doIntegerToBitTransform
public java.lang.String doIntegerToBitTransform(java.lang.String columnName)
Description copied from class:DBDefinitionTransforms a integer expression into an bit expression.Used to allow comparison of integer columns in some databases.
- Overrides:
doIntegerToBitTransformin classDBDefinition- Parameters:
columnName- bitExpressionSupport DBvolution at Patreon
- Returns:
- the transformation necessary to transform bitExpression into an integer expression in the SQL.
-
doBitsValueTransform
public java.lang.String doBitsValueTransform(boolean[] boolArray)
Description copied from class:DBDefinitionConvert the boolean array of bit values into the SQL equivalent.- Overrides:
doBitsValueTransformin classDBDefinition- Parameters:
boolArray- booleanArraySupport DBvolution at Patreon
- Returns:
- SQL snippet.
-
getColumnAutoIncrementSuffix
public java.lang.String getColumnAutoIncrementSuffix()
Description copied from class:DBDefinitionReturns the suffix added to a column definition to support auto-incrementing a column.Support DBvolution at Patreon
- Overrides:
getColumnAutoIncrementSuffixin classDBDefinition- Returns:
- " GENERATED BY DEFAULT AS IDENTITY "
-
hasSpecialAutoIncrementType
protected boolean hasSpecialAutoIncrementType()
Description copied from class:DBDefinitionIndicates whether the database uses a special type for it's auto-increment columns.Support DBvolution at Patreon
- Overrides:
hasSpecialAutoIncrementTypein classDBDefinition- Returns:
- the default implementation returns FALSE.
-
getSpecialAutoIncrementType
protected java.lang.String getSpecialAutoIncrementType()
Description copied from class:DBDefinitionProvides the special auto-increment type used by this database if it has one.Support DBvolution at Patreon
- Overrides:
getSpecialAutoIncrementTypein classDBDefinition- Returns:
- the default implementation returns ""
-
supportsModulusFunction
public boolean supportsModulusFunction()
Description copied from class:DBDefinitionIndicates whether the database supports the modulus function.Support DBvolution at Patreon
- Overrides:
supportsModulusFunctionin classDBDefinition- Returns:
- the default implementation returns TRUE.
-
doSubsecondTransform
public java.lang.String doSubsecondTransform(java.lang.String dateExpression)
Description copied from class:DBDefinitionReturns the partial second value from the date.This should return the most detailed possible value less than a second for the date expression provided. It should always return a value less than 1s.
- Overrides:
doSubsecondTransformin classDBDefinition- Parameters:
dateExpression- the date from which to get the subsecond part of.Support DBvolution at Patreon
- Returns:
- SQL
-
doDateAddSecondsTransform
public java.lang.String doDateAddSecondsTransform(java.lang.String dateValue, java.lang.String numberOfSeconds)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfSeconds seconds to the dateValue.- Overrides:
doDateAddSecondsTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfSeconds- numberOfSecondsSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doDateAddMinutesTransform
public java.lang.String doDateAddMinutesTransform(java.lang.String dateValue, java.lang.String numberOfMinutes)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfMinutes minutes to the dateValue.- Overrides:
doDateAddMinutesTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfMinutes- numberOfMinutesSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doDateAddDaysTransform
public java.lang.String doDateAddDaysTransform(java.lang.String dateValue, java.lang.String numberOfDays)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfdays days to the dateValue.- Overrides:
doDateAddDaysTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfDays- numberOfDaysSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doDateAddHoursTransform
public java.lang.String doDateAddHoursTransform(java.lang.String dateValue, java.lang.String numberOfHours)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfHours hours to the dateValue.- Overrides:
doDateAddHoursTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfHours- numberOfHoursSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doDateAddWeeksTransform
public java.lang.String doDateAddWeeksTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfWeeks weeks to the dateValue.- Overrides:
doDateAddWeeksTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfWeeks- numberOfWeeksSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doDateAddMonthsTransform
public java.lang.String doDateAddMonthsTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfMonths months to the dateValue.- Overrides:
doDateAddMonthsTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfWeeks- numberOfMonthsSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doDateAddYearsTransform
public java.lang.String doDateAddYearsTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfYears years to the dateValue.- Overrides:
doDateAddYearsTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfWeeks- numberOfYearsSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doInstantAddSecondsTransform
public java.lang.String doInstantAddSecondsTransform(java.lang.String dateValue, java.lang.String numberOfSeconds)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfSeconds seconds to the dateValue.- Overrides:
doInstantAddSecondsTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfSeconds- numberOfSecondsSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doInstantAddMinutesTransform
public java.lang.String doInstantAddMinutesTransform(java.lang.String dateValue, java.lang.String numberOfMinutes)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfMinutes minutes to the dateValue.- Overrides:
doInstantAddMinutesTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfMinutes- numberOfMinutesSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doInstantAddDaysTransform
public java.lang.String doInstantAddDaysTransform(java.lang.String dateValue, java.lang.String numberOfDays)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfdays days to the dateValue.- Overrides:
doInstantAddDaysTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfDays- numberOfDaysSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doInstantAddHoursTransform
public java.lang.String doInstantAddHoursTransform(java.lang.String dateValue, java.lang.String numberOfHours)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfHours hours to the dateValue.- Overrides:
doInstantAddHoursTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfHours- numberOfHoursSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doInstantAddWeeksTransform
public java.lang.String doInstantAddWeeksTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfWeeks weeks to the dateValue.- Overrides:
doInstantAddWeeksTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfWeeks- numberOfWeeksSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doInstantAddMonthsTransform
public java.lang.String doInstantAddMonthsTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfMonths months to the dateValue.- Overrides:
doInstantAddMonthsTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfWeeks- numberOfMonthsSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doInstantAddYearsTransform
public java.lang.String doInstantAddYearsTransform(java.lang.String dateValue, java.lang.String numberOfWeeks)Description copied from class:DBDefinitionDoes the required transformation to produce an SQL snippet that adds numberOfYears years to the dateValue.- Overrides:
doInstantAddYearsTransformin classDBDefinition- Parameters:
dateValue- dateValuenumberOfWeeks- numberOfYearsSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doBooleanValueTransform
public java.lang.String doBooleanValueTransform(java.lang.Boolean boolValue)
Description copied from class:DBDefinitionTransform a Java Boolean into the equivalent in an SQL snippet.- Overrides:
doBooleanValueTransformin classDBDefinition- Parameters:
boolValue- boolValueSupport DBvolution at Patreon
- Returns:
- an SQL snippet
-
doCurrentDateOnlyTransform
public java.lang.String doCurrentDateOnlyTransform()
Description copied from class:DBDefinitionCreates the CURRENTDATE function for this database.Support DBvolution at Patreon
- Overrides:
doCurrentDateOnlyTransformin classDBDefinition- Returns:
- a String of the SQL required to get the CurrentDateOnly value.
-
doDayDifferenceTransform
public java.lang.String doDayDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Description copied from class:DBDefinitionConvert the 2 SQL date values into a difference in days.- Overrides:
doDayDifferenceTransformin classDBDefinition- Parameters:
dateValue- dateValueotherDateValue- otherDateValueSupport DBvolution at Patreon
- Returns:
- SQL
-
doWeekDifferenceTransform
public java.lang.String doWeekDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Description copied from class:DBDefinitionConvert the 2 SQL date values into a difference in days.- Overrides:
doWeekDifferenceTransformin classDBDefinition- Parameters:
dateValue- dateValueotherDateValue- otherDateValueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMonthDifferenceTransform
public java.lang.String doMonthDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Description copied from class:DBDefinitionConvert the 2 SQL date values into a difference in months.- Overrides:
doMonthDifferenceTransformin classDBDefinition- Parameters:
dateValue- dateValueotherDateValue- otherDateValueSupport DBvolution at Patreon
- Returns:
- SQL
-
doYearDifferenceTransform
public java.lang.String doYearDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Description copied from class:DBDefinitionConvert the 2 SQL date values into a difference in years.- Overrides:
doYearDifferenceTransformin classDBDefinition- Parameters:
dateValue- dateValueotherDateValue- otherDateValueSupport DBvolution at Patreon
- Returns:
- SQL
-
doHourDifferenceTransform
public java.lang.String doHourDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Description copied from class:DBDefinitionConvert the 2 SQL date values into a difference in hours.- Overrides:
doHourDifferenceTransformin classDBDefinition- Parameters:
dateValue- dateValueotherDateValue- otherDateValueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMinuteDifferenceTransform
public java.lang.String doMinuteDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Description copied from class:DBDefinitionConvert the 2 SQL date values into a difference in minutes.- Overrides:
doMinuteDifferenceTransformin classDBDefinition- Parameters:
dateValue- dateValueotherDateValue- otherDateValueSupport DBvolution at Patreon
- Returns:
- SQL
-
doSecondDifferenceTransform
public java.lang.String doSecondDifferenceTransform(java.lang.String dateValue, java.lang.String otherDateValue)Description copied from class:DBDefinitionConvert the 2 SQL date values into a difference in whole seconds.- Overrides:
doSecondDifferenceTransformin classDBDefinition- Parameters:
dateValue- dateValueotherDateValue- otherDateValueSupport DBvolution at Patreon
- Returns:
- SQL
-
doDayOfWeekTransform
public java.lang.String doDayOfWeekTransform(java.lang.String dateSQL)
Description copied from class:DBDefinitionExtracts the weekday from the date provided as a number from 1 to 7.Provides access to the day of the week as a number from 1 for Sunday to 7 for Saturday.
- Specified by:
doDayOfWeekTransformin classDBDefinition- Parameters:
dateSQL- the date to get the day of the week for.Support DBvolution at Patreon
- Returns:
- a number between 1 and 7 for the weekday.
-
doInstantDayOfWeekTransform
public java.lang.String doInstantDayOfWeekTransform(java.lang.String dateSQL)
Description copied from class:DBDefinitionExtracts the weekday from the date provided as a number from 1 to 7.Provides access to the day of the week as a number from 1 for Sunday to 7 for Saturday.
- Specified by:
doInstantDayOfWeekTransformin classDBDefinition- Parameters:
dateSQL- the date to get the day of the week for.Support DBvolution at Patreon
- Returns:
- a number between 1 and 7 for the weekday.
-
doBooleanArrayTransform
public java.lang.String doBooleanArrayTransform(java.lang.Boolean[] bools)
Description copied from class:DBDefinitionTransforms the array of booleans into the database format.The default implementation changes the array into a string of 0s and 1s.
- Overrides:
doBooleanArrayTransformin classDBDefinition- Parameters:
bools- all the true/false valuesSupport DBvolution at Patreon
- Returns:
- a string of 1s and 0s representing the boolean array.
-
doPolygon2DIntersectionTransform
public java.lang.String doPolygon2DIntersectionTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionCreates a Polygon2D representing the intersection of the Polygon2Ds.- Overrides:
doPolygon2DIntersectionTransformin classDBDefinition- Parameters:
firstGeometry- the first polygon2d valuesecondGeometry- the second polygon2d valueSupport DBvolution at Patreon
- Returns:
- SQL that represents a polygon of the intersection, null if there is no intersection.
-
doPolygon2DOverlapsTransform
public java.lang.String doPolygon2DOverlapsTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionTest whether the 2 polygons intersect but not contained or within.- Overrides:
doPolygon2DOverlapsTransformin classDBDefinition- Parameters:
firstGeometry- the first polygon2d value to comparesecondGeometry- the second polygon2d value to compareSupport DBvolution at Patreon
- Returns:
- SQL that is TRUE if the polygons have intersecting and non-intersecting parts.
-
doPolygon2DIntersectsTransform
public java.lang.String doPolygon2DIntersectsTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionTest whether the 2 polygons intersect.- Overrides:
doPolygon2DIntersectsTransformin classDBDefinition- Parameters:
firstGeometry- the first polygon2d value to comparesecondGeometry- the second polygon2d value to compareSupport DBvolution at Patreon
- Returns:
- SQL that returns TRUE if they intersect.
-
doPolygon2DTouchesTransform
public java.lang.String doPolygon2DTouchesTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionTests whether the polygons touch.Checks that a) the polygons have at least on point in common and b) that their interiors do not overlap.
- Overrides:
doPolygon2DTouchesTransformin classDBDefinition- Parameters:
firstGeometry- the first polygon2d value to comparesecondGeometry- the second polygon2d value to compareSupport DBvolution at Patreon
- Returns:
- SQL snippet
-
doPolygon2DGetAreaTransform
public java.lang.String doPolygon2DGetAreaTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionRetrieve the area of the polygon.- Overrides:
doPolygon2DGetAreaTransformin classDBDefinition- Parameters:
toSQLString- a polygon2D valueSupport DBvolution at Patreon
- Returns:
- SQL that will return the area of the Polygon2D
-
doPolygon2DGetBoundingBoxTransform
public java.lang.String doPolygon2DGetBoundingBoxTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionCreate a simple four sided bounding for the polygon.- Overrides:
doPolygon2DGetBoundingBoxTransformin classDBDefinition- Parameters:
toSQLString- a polygon2D valueSupport DBvolution at Patreon
- Returns:
- the SQL required to create a bounding box for the polygon.
-
doPolygon2DEqualsTransform
public java.lang.String doPolygon2DEqualsTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionCompare 2 polygons with EQUALS.- Overrides:
doPolygon2DEqualsTransformin classDBDefinition- Parameters:
firstGeometry- the first polygon2d value to comparesecondGeometry- the second polygon2d value to compareSupport DBvolution at Patreon
- Returns:
- SQL
-
doPolygon2DContainsPolygon2DTransform
public java.lang.String doPolygon2DContainsPolygon2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionTest whether the first polygon completely contains the second polygon.- Overrides:
doPolygon2DContainsPolygon2DTransformin classDBDefinition- Parameters:
firstGeometry- the first polygon2d value to comparesecondGeometry- the second polygon2d value to compareSupport DBvolution at Patreon
- Returns:
- SQL that is TRUE if the first polygon contains the second.
-
doPolygon2DContainsPoint2DTransform
public java.lang.String doPolygon2DContainsPoint2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionGenerates the SQL to determine whether the first (polygon) argument contains the second point argument.- Overrides:
doPolygon2DContainsPoint2DTransformin classDBDefinition- Parameters:
firstGeometry- the polygon2d to compare withsecondGeometry- the point2d value that might be inside the polygon2dSupport DBvolution at Patreon
- Returns:
- SQL
-
doPolygon2DDoesNotIntersectTransform
public java.lang.String doPolygon2DDoesNotIntersectTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionInverse ofDBDefinition.doPolygon2DIntersectsTransform(java.lang.String, java.lang.String), tests whether the 2 polygons are non-coincident.- Overrides:
doPolygon2DDoesNotIntersectTransformin classDBDefinition- Parameters:
firstGeometry- the first polygon2d value to comparesecondGeometry- the second polygon2d value to compareSupport DBvolution at Patreon
- Returns:
- SQL that is FALSE if the polygons intersect.
-
doPolygon2DWithinTransform
public java.lang.String doPolygon2DWithinTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionTest whether the first polygon is completely within the second polygon.Compare this to
DBDefinition.doPolygon2DContainsPolygon2DTransform(java.lang.String, java.lang.String)- Overrides:
doPolygon2DWithinTransformin classDBDefinition- Parameters:
firstGeometry- the first polygon2d value to comparesecondGeometry- the second polygon2d value to compareSupport DBvolution at Patreon
- Returns:
- SQL that is TRUE if the first polygon is within the second.
-
doPolygon2DMeasurableDimensionsTransform
public java.lang.String doPolygon2DMeasurableDimensionsTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionReturns the dimension of the polygon.This will be "2"
- Overrides:
doPolygon2DMeasurableDimensionsTransformin classDBDefinition- Parameters:
toSQLString- a polygon2d valueSupport DBvolution at Patreon
- Returns:
- "2" unless something has gone horribly wrong.
-
doPolygon2DGetExteriorRingTransform
public java.lang.String doPolygon2DGetExteriorRingTransform(java.lang.String polygon2DSQL)
Description copied from class:DBDefinitionDefines the transformation require to transform an SQL Polygon2D into a linestring representing the exterior ring of the polygon.- Overrides:
doPolygon2DGetExteriorRingTransformin classDBDefinition- Parameters:
polygon2DSQL- a polygon2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPolygon2DGetMaxXTransform
public java.lang.String doPolygon2DGetMaxXTransform(java.lang.String polygon2DSQL)
Description copied from class:DBDefinitionGenerate the SQL that will return the largest X value within the Polygon2D expression.- Overrides:
doPolygon2DGetMaxXTransformin classDBDefinition- Parameters:
polygon2DSQL- the polygon2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPolygon2DGetMinXTransform
public java.lang.String doPolygon2DGetMinXTransform(java.lang.String polygon2DSQL)
Description copied from class:DBDefinitionGenerate the SQL that will return the smallest X value within the Polygon2D expression.- Overrides:
doPolygon2DGetMinXTransformin classDBDefinition- Parameters:
polygon2DSQL- the polygon2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPolygon2DGetMaxYTransform
public java.lang.String doPolygon2DGetMaxYTransform(java.lang.String polygon2DSQL)
Description copied from class:DBDefinitionGenerate the SQL that will return the largest X value within the Polygon2D expression.- Overrides:
doPolygon2DGetMaxYTransformin classDBDefinition- Parameters:
polygon2DSQL- the polygon2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPolygon2DGetMinYTransform
public java.lang.String doPolygon2DGetMinYTransform(java.lang.String polygon2DSQL)
Description copied from class:DBDefinitionGenerate the SQL that will return the smallest Y value within the Polygon2D expression.- Overrides:
doPolygon2DGetMinYTransformin classDBDefinition- Parameters:
polygon2DSQL- the polygon2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPolygon2DAsTextTransform
public java.lang.String doPolygon2DAsTextTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerates the SQL to convert the polygon to the standard text version of a polygon.- Overrides:
doPolygon2DAsTextTransformin classDBDefinition- Parameters:
toSQLString- the polygon2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
supportsHyperbolicFunctionsNatively
public boolean supportsHyperbolicFunctionsNatively()
Description copied from class:DBDefinitionIndicates that this database supports hyperbolic functions natively.Support DBvolution at Patreon
- Overrides:
supportsHyperbolicFunctionsNativelyin classDBDefinition- Returns:
- TRUE by default.
-
doStringToNumberTransform
public java.lang.String doStringToNumberTransform(java.lang.String stringResultContainingANumber)
Description copied from class:DBDefinitionProvide SQL to interpret the String value as a number.Full of ways to fail this is.
- Overrides:
doStringToNumberTransformin classDBDefinition- Parameters:
stringResultContainingANumber- a number value to be coerced to stringSupport DBvolution at Patreon
- Returns:
- SQL that converts the string value into number.
-
supportsArcSineFunction
public boolean supportsArcSineFunction()
Description copied from class:DBDefinitionIndicates that the database supports the ARCSINE function.Support DBvolution at Patreon
- Overrides:
supportsArcSineFunctionin classDBDefinition- Returns:
- true by default.
-
transformCoordinatesIntoDatabasePoint2DFormat
public java.lang.String transformCoordinatesIntoDatabasePoint2DFormat(java.lang.String xValue, java.lang.String yValue)Description copied from class:DBDefinitionProvide the SQL that correctly represents these coordinates in this database.The same as
DBDefinition.transformPoint2DIntoDatabaseFormat(com.vividsolutions.jts.geom.Point)but for two coordinates as SQL.- Overrides:
transformCoordinatesIntoDatabasePoint2DFormatin classDBDefinition- Parameters:
xValue- a number valueyValue- a number valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPoint2DEqualsTransform
public java.lang.String doPoint2DEqualsTransform(java.lang.String firstPoint, java.lang.String secondPoint)Description copied from class:DBDefinitionProvide the SQL to compare 2 Point2Ds- Overrides:
doPoint2DEqualsTransformin classDBDefinition- Parameters:
firstPoint- a point2d value to comparesecondPoint- a point2d value to compareSupport DBvolution at Patreon
- Returns:
- SQL
-
doPoint2DGetXTransform
public java.lang.String doPoint2DGetXTransform(java.lang.String point2D)
Description copied from class:DBDefinitionProvide the SQL to return the X coordinate of the Point2D- Overrides:
doPoint2DGetXTransformin classDBDefinition- Parameters:
point2D- a point2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPoint2DGetYTransform
public java.lang.String doPoint2DGetYTransform(java.lang.String point2D)
Description copied from class:DBDefinitionProvide the SQL to return the Y coordinate of the Point2D- Overrides:
doPoint2DGetYTransformin classDBDefinition- Parameters:
point2D- a point2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPoint2DMeasurableDimensionsTransform
public java.lang.String doPoint2DMeasurableDimensionsTransform(java.lang.String point2D)
Description copied from class:DBDefinitionProvide the SQL to return the dimension of the Point2DPoint is a 0-dimensional objects for this purpose.
- Overrides:
doPoint2DMeasurableDimensionsTransformin classDBDefinition- Parameters:
point2D- a point2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPoint2DGetBoundingBoxTransform
public java.lang.String doPoint2DGetBoundingBoxTransform(java.lang.String point2D)
Description copied from class:DBDefinitionProvide the SQL to derive the Polygon2D representing the Bounding Box of the Point2D.- Overrides:
doPoint2DGetBoundingBoxTransformin classDBDefinition- Parameters:
point2D- a point2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doPoint2DAsTextTransform
public java.lang.String doPoint2DAsTextTransform(java.lang.String point2DString)
Description copied from class:DBDefinitionProvide the SQL to derive the WKT version of the Point2D.- Overrides:
doPoint2DAsTextTransformin classDBDefinition- Parameters:
point2DString- a point2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
transformPoint2DIntoDatabaseFormat
public java.lang.String transformPoint2DIntoDatabaseFormat(com.vividsolutions.jts.geom.Point point)
Description copied from class:DBDefinitionProvide the SQL that correctly represents this Point2D in this database.- Overrides:
transformPoint2DIntoDatabaseFormatin classDBDefinition- Parameters:
point- a point to be turned into an SQL point2d value.Support DBvolution at Patreon
- Returns:
- SQL
-
transformLineStringIntoDatabaseLine2DFormat
public java.lang.String transformLineStringIntoDatabaseLine2DFormat(com.vividsolutions.jts.geom.LineString line)
Description copied from class:DBDefinitionProvide the SQL that correctly represents this LineString in this database.- Overrides:
transformLineStringIntoDatabaseLine2DFormatin classDBDefinition- Parameters:
line- a linestring to transform in to a Line2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doColumnTransformForSelect
public java.lang.String doColumnTransformForSelect(QueryableDatatype<?> qdt, java.lang.String selectableName)
Description copied from class:DBDefinitionPerform necessary transformations on the stored value to make it readable by Java.Primarily used on Spatial types, this method allows a data type unknown to JDBC to be transformed into the necessary type (usually a String) to be read by Java and DBvolution.
- Overrides:
doColumnTransformForSelectin classDBDefinition- Parameters:
qdt- the DBV value to be storedselectableName- the selectable valueSupport DBvolution at Patreon
- Returns:
- SQL
-
transformDatabasePoint2DValueToJTSPoint
public com.vividsolutions.jts.geom.Point transformDatabasePoint2DValueToJTSPoint(java.lang.String pointAsString) throws com.vividsolutions.jts.io.ParseExceptionDescription copied from class:DBDefinitionFrom the database's representation of a Point2D create a JTS Point.This is the inverse of
DBDefinition.transformPoint2DIntoDatabaseFormat(com.vividsolutions.jts.geom.Point).- Overrides:
transformDatabasePoint2DValueToJTSPointin classDBDefinition- Parameters:
pointAsString- a point2d valueSupport DBvolution at Patreon
- Returns:
- a point created from the point2d value
- Throws:
com.vividsolutions.jts.io.ParseException- if the database result is not a valid WKT
-
transformDatabasePolygon2DToJTSPolygon
public com.vividsolutions.jts.geom.Polygon transformDatabasePolygon2DToJTSPolygon(java.lang.String geometryAsString) throws com.vividsolutions.jts.io.ParseExceptionDescription copied from class:DBDefinitionFrom the database's representation of a Polygon2D create a JTS Polygon.This is the inverse of
DBDefinition.transformPolygonIntoDatabasePolygon2DFormat(com.vividsolutions.jts.geom.Polygon).- Overrides:
transformDatabasePolygon2DToJTSPolygonin classDBDefinition- Parameters:
geometryAsString- a polygon2d valueSupport DBvolution at Patreon
- Returns:
- a polygon created from the polygon2d value
- Throws:
com.vividsolutions.jts.io.ParseException- if the database result is not a valid WKT
-
transformDatabaseLine2DValueToJTSLineString
public com.vividsolutions.jts.geom.LineString transformDatabaseLine2DValueToJTSLineString(java.lang.String lineStringAsString) throws com.vividsolutions.jts.io.ParseExceptionDescription copied from class:DBDefinitionFrom the database's representation of a Lin2D create a JTS LineString.This is the inverse of
DBDefinition.transformPolygonIntoDatabasePolygon2DFormat(com.vividsolutions.jts.geom.Polygon).- Overrides:
transformDatabaseLine2DValueToJTSLineStringin classDBDefinition- Parameters:
lineStringAsString- a line2d valueSupport DBvolution at Patreon
- Returns:
- a linestring created from the line2d
- Throws:
com.vividsolutions.jts.io.ParseException- if the database result is not a valid WKT
-
doLine2DEqualsTransform
public java.lang.String doLine2DEqualsTransform(java.lang.String firstLineSQL, java.lang.String secondLineSQL)Description copied from class:DBDefinitionTransform the 2 Line2D SQL snippets into an EQUALS comparison of the 2- Overrides:
doLine2DEqualsTransformin classDBDefinition- Parameters:
firstLineSQL- the first line2d value to comparesecondLineSQL- the second line2d value to compareSupport DBvolution at Patreon
- Returns:
- SQL
-
doLine2DAsTextTransform
public java.lang.String doLine2DAsTextTransform(java.lang.String line2DSQL)
Description copied from class:DBDefinitionProvide the SQL to derive the WKT version of the Line2D.- Overrides:
doLine2DAsTextTransformin classDBDefinition- Parameters:
line2DSQL- a line2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLine2DGetBoundingBoxTransform
public java.lang.String doLine2DGetBoundingBoxTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionCreate the SQL to derive the bounding box of this Line2D SQL- Overrides:
doLine2DGetBoundingBoxTransformin classDBDefinition- Parameters:
toSQLString- the line2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLine2DGetMaxXTransform
public java.lang.String doLine2DGetMaxXTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL that will return the largest X value within the Line2D expression.- Overrides:
doLine2DGetMaxXTransformin classDBDefinition- Parameters:
toSQLString- the line2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLine2DGetMinXTransform
public java.lang.String doLine2DGetMinXTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL that will return the smallest X value within the Line2D expression.- Overrides:
doLine2DGetMinXTransformin classDBDefinition- Parameters:
toSQLString- the line2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLine2DGetMaxYTransform
public java.lang.String doLine2DGetMaxYTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL that will return the largest Y value within the Line2D expression.- Overrides:
doLine2DGetMaxYTransformin classDBDefinition- Parameters:
toSQLString- the line2 valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLine2DGetMinYTransform
public java.lang.String doLine2DGetMinYTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL that will return the smallest Y value within the Line2D expression.- Overrides:
doLine2DGetMinYTransformin classDBDefinition- Parameters:
toSQLString- the line2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLine2DIntersectsLine2DTransform
public java.lang.String doLine2DIntersectsLine2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionGenerates the SQL required to find whether the 2 lines cross at any point.- Overrides:
doLine2DIntersectsLine2DTransformin classDBDefinition- Parameters:
firstGeometry- the first line2d value to comparesecondGeometry- the second line2d value to compareSupport DBvolution at Patreon
- Returns:
- an SQL expression that will evaluate to TRUE FALSE or NULL, depending on whether the lines cross at any point.
-
doLine2DIntersectionPointWithLine2DTransform
public java.lang.String doLine2DIntersectionPointWithLine2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionGenerate the SQL required to find the intersection point of the 2 line segment SQL expressions.- Overrides:
doLine2DIntersectionPointWithLine2DTransformin classDBDefinition- Parameters:
firstGeometry- the first line2d to comparesecondGeometry- the second line2d to compareSupport DBvolution at Patreon
- Returns:
- an SQL expression that will evaluate to the intersection point of the 2 line segments or NULL.
-
doLine2DAllIntersectionPointsWithLine2DTransform
public java.lang.String doLine2DAllIntersectionPointsWithLine2DTransform(java.lang.String firstGeometry, java.lang.String secondGeometry)Description copied from class:DBDefinitionGenerate the SQL required to find the complete set of all points of intersection between the tow 2 lines.- Overrides:
doLine2DAllIntersectionPointsWithLine2DTransformin classDBDefinition- Parameters:
firstGeometry- the first line2d to comparesecondGeometry- the second line2d to compareSupport DBvolution at Patreon
- Returns:
- an SQL expression that will evaluate to the intersection point of the 2 line segments or NULL.
-
doSubstringBeforeTransform
public java.lang.String doSubstringBeforeTransform(java.lang.String fromThis, java.lang.String beforeThis)Description copied from class:DBDefinitionGenerate the SQL to use the SUBSTRING_BEFORE function with the 2 String expressions.- Overrides:
doSubstringBeforeTransformin classDBDefinition- Parameters:
fromThis- the string value to be dissectedbeforeThis- the string value that indicates the end of the required text. Not included in the returned valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doSubstringAfterTransform
public java.lang.String doSubstringAfterTransform(java.lang.String fromThis, java.lang.String afterThis)Description copied from class:DBDefinitionGenerate the SQL to use the SUBSTRING_AFTER function with the 2 String expressions.- Overrides:
doSubstringAfterTransformin classDBDefinition- Parameters:
fromThis- the string value to be dissectedafterThis- the string value that indicates the beginning of the required text. Not included in the returned value.Support DBvolution at Patreon
- Returns:
- SQL
-
transformPolygonIntoDatabasePolygon2DFormat
public java.lang.String transformPolygonIntoDatabasePolygon2DFormat(com.vividsolutions.jts.geom.Polygon polygon)
Description copied from class:DBDefinitionGenerate the SQL that will transform a WKT version of a Polygon2D into the database's version of a Polygon2D.- Overrides:
transformPolygonIntoDatabasePolygon2DFormatin classDBDefinition- Parameters:
polygon- the polygon2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
transformCoordinateArrayToDatabasePolygon2DFormat
public java.lang.String transformCoordinateArrayToDatabasePolygon2DFormat(java.util.List<java.lang.String> coordinateSQL)
Description copied from class:DBDefinitionOverride this method to provide the SQL that will create a database Polygon2D value from the list of presumed coordinates.Coordinates are a series of number values that are presumed to be pairs of X and Y values. That is to say the list is a list number values with no formatting other than that required to express the values as numbers.
- Overrides:
transformCoordinateArrayToDatabasePolygon2DFormatin classDBDefinition- Parameters:
coordinateSQL- lots of numbersSupport DBvolution at Patreon
- Returns:
- a polygon2d value
-
transformPoint2DArrayToDatabasePolygon2DFormat
public java.lang.String transformPoint2DArrayToDatabasePolygon2DFormat(java.util.List<java.lang.String> pointSQL)
Description copied from class:DBDefinitionCreate the SQL to transform a Point2DArray SQL into a Polygon2D- Overrides:
transformPoint2DArrayToDatabasePolygon2DFormatin classDBDefinition- Parameters:
pointSQL- the point2d valueSupport DBvolution at Patreon
- Returns:
- SQL
-
transformToStorableType
public DBExpression transformToStorableType(DBExpression columnExpression)
Description copied from class:DBDefinitionTransform a datatype not supported by the database into a type that the database does support.Used mostly to turn Booleans into numbers.
By default this method just returns the input DBExpression.
- Overrides:
transformToStorableTypein classDBDefinition- Parameters:
columnExpression- a column expression that might need to change type for this databaseSupport DBvolution at Patreon
- Returns:
- The DBExpression as a DBExpression supported by the database.
-
transformLineSegmentIntoDatabaseLineSegment2DFormat
public java.lang.String transformLineSegmentIntoDatabaseLineSegment2DFormat(com.vividsolutions.jts.geom.LineSegment lineSegment)
Description copied from class:DBDefinitionConvert the JTS LineSegment object into a SQL expression that the database will accept as a line segment.By default, creates a WKT representation
- Overrides:
transformLineSegmentIntoDatabaseLineSegment2DFormatin classDBDefinition- Parameters:
lineSegment- the LineSegment to convert to database format.Support DBvolution at Patreon
- Returns:
- an SQL expression that can be interpreted by the database as a line segment.
-
transformDatabaseLineSegment2DValueToJTSLineSegment
public com.vividsolutions.jts.geom.LineSegment transformDatabaseLineSegment2DValueToJTSLineSegment(java.lang.String lineStringAsString) throws com.vividsolutions.jts.io.ParseExceptionDescription copied from class:DBDefinitionConvert the String object returned by the database into a JTS LineSegment object.- Overrides:
transformDatabaseLineSegment2DValueToJTSLineSegmentin classDBDefinition- Parameters:
lineStringAsString- the database linesegment2d value to create aJTS LineSegmentwithSupport DBvolution at Patreon
- Returns:
- a JTS LineSegment derived from the database's response, may be null.
- Throws:
com.vividsolutions.jts.io.ParseException- malformed WKT will throw an exception
-
doLineSegment2DIntersectsLineSegment2DTransform
public java.lang.String doLineSegment2DIntersectsLineSegment2DTransform(java.lang.String toSQLString, java.lang.String toSQLString0)Description copied from class:DBDefinitionGenerates the database specific SQL for testing whether the 2 line segment expressions ever cross.- Overrides:
doLineSegment2DIntersectsLineSegment2DTransformin classDBDefinition- Parameters:
toSQLString- the first Line2D value to comparetoSQLString0- the second Line2D value to compareSupport DBvolution at Patreon
- Returns:
- an SQL expression that will report whether the 2 line segments intersect.
- See Also:
DBDefinition.doLineSegment2DIntersectionPointWithLineSegment2DTransform(java.lang.String, java.lang.String)
-
doLineSegment2DGetMaxXTransform
public java.lang.String doLineSegment2DGetMaxXTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL required to find the largest X value in the line segment SQL expression.- Overrides:
doLineSegment2DGetMaxXTransformin classDBDefinition- Parameters:
toSQLString- the LineSegment2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLineSegment2DGetMinXTransform
public java.lang.String doLineSegment2DGetMinXTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL required to find the smallest X value in the line segment SQL expression.- Overrides:
doLineSegment2DGetMinXTransformin classDBDefinition- Parameters:
toSQLString- the LineSegment2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLineSegment2DGetMaxYTransform
public java.lang.String doLineSegment2DGetMaxYTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL required to find the largest Y value in the line segment SQL expression.- Overrides:
doLineSegment2DGetMaxYTransformin classDBDefinition- Parameters:
toSQLString- the LineSegment2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLineSegment2DGetMinYTransform
public java.lang.String doLineSegment2DGetMinYTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL required to find the smallest Y value in the line segment SQL expression.- Overrides:
doLineSegment2DGetMinYTransformin classDBDefinition- Parameters:
toSQLString- the LineSegment2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLineSegment2DGetBoundingBoxTransform
public java.lang.String doLineSegment2DGetBoundingBoxTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL required to the rectangular boundary that fully encloses the line segment SQL expression.- Overrides:
doLineSegment2DGetBoundingBoxTransformin classDBDefinition- Parameters:
toSQLString- the LineSegment2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLineSegment2DNotEqualsTransform
public java.lang.String doLineSegment2DNotEqualsTransform(java.lang.String toSQLString, java.lang.String toSQLString0)Description copied from class:DBDefinitionGenerate the SQL required to find whether the 2 line segment SQL expressions are NOT equal.- Overrides:
doLineSegment2DNotEqualsTransformin classDBDefinition- Parameters:
toSQLString- the first LineSegment2D valuetoSQLString0- the second LineSegment2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLineSegment2DEqualsTransform
public java.lang.String doLineSegment2DEqualsTransform(java.lang.String toSQLString, java.lang.String toSQLString0)Description copied from class:DBDefinitionGenerate the SQL required to find whether the 2 line segment SQL expressions are equal.- Overrides:
doLineSegment2DEqualsTransformin classDBDefinition- Parameters:
toSQLString- the first LineSegment2D valuetoSQLString0- the second LineSegment2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLineSegment2DAsTextTransform
public java.lang.String doLineSegment2DAsTextTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionGenerate the SQL required to convert the line segment SQL expression into the WKT string format.- Overrides:
doLineSegment2DAsTextTransformin classDBDefinition- Parameters:
toSQLString- the LineSegment2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doLineSegment2DIntersectionPointWithLineSegment2DTransform
public java.lang.String doLineSegment2DIntersectionPointWithLineSegment2DTransform(java.lang.String firstLineSegment, java.lang.String secondLineSegment)Description copied from class:DBDefinitionGenerate the SQL required to find the intersection point of the 2 line segment SQL expressions.- Overrides:
doLineSegment2DIntersectionPointWithLineSegment2DTransformin classDBDefinition- Parameters:
firstLineSegment- the first LineSegment2D valuesecondLineSegment- the second LineSegment2D valueSupport DBvolution at Patreon
- Returns:
- an SQL expression that will evaluate to the intersection point of the 2 line segments or NULL.
-
transformMultiPoint2DToDatabaseMultiPoint2DValue
public java.lang.String transformMultiPoint2DToDatabaseMultiPoint2DValue(com.vividsolutions.jts.geom.MultiPoint points)
Description copied from class:DBDefinitionProvide the SQL that correctly represents this MultiPoint2D value in this database.- Overrides:
transformMultiPoint2DToDatabaseMultiPoint2DValuein classDBDefinition- Parameters:
points- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
transformDatabaseMultiPoint2DValueToJTSMultiPoint
public com.vividsolutions.jts.geom.MultiPoint transformDatabaseMultiPoint2DValueToJTSMultiPoint(java.lang.String pointsAsString) throws com.vividsolutions.jts.io.ParseExceptionDescription copied from class:DBDefinitionConvert the database's string representation of a MultiPoint2D value into a MultiPoint..- Overrides:
transformDatabaseMultiPoint2DValueToJTSMultiPointin classDBDefinition- Parameters:
pointsAsString- the MultiPoint2D value to create aJTS MultiPointwith.Support DBvolution at Patreon
- Returns:
- the MultiPoint2D as a
JTS MultiPointinstance - Throws:
com.vividsolutions.jts.io.ParseException- malformed WKT values will throw an exception
-
doMultiPoint2DEqualsTransform
public java.lang.String doMultiPoint2DEqualsTransform(java.lang.String first, java.lang.String second)Description copied from class:DBDefinitionProvide the SQL to compare 2 MultiPoint2Ds using the equivalent of EQUALS.- Overrides:
doMultiPoint2DEqualsTransformin classDBDefinition- Parameters:
first- the first MultiPoint2D value to comparesecond- the second MultiPoint2D value to compareSupport DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DGetPointAtIndexTransform
public java.lang.String doMultiPoint2DGetPointAtIndexTransform(java.lang.String first, java.lang.String index)Description copied from class:DBDefinitionProvide the SQL to get point at the supplied index within the MultiPoint2D- Overrides:
doMultiPoint2DGetPointAtIndexTransformin classDBDefinition- Parameters:
first- the first MultiPoint2D value to retrieve a point from.index- the index at which the required point is at.Support DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DGetNumberOfPointsTransform
public java.lang.String doMultiPoint2DGetNumberOfPointsTransform(java.lang.String first)
Description copied from class:DBDefinitionProvides the SQL the derive the number of points in the multipoint2d value.- Overrides:
doMultiPoint2DGetNumberOfPointsTransformin classDBDefinition- Parameters:
first- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DMeasurableDimensionsTransform
public java.lang.String doMultiPoint2DMeasurableDimensionsTransform(java.lang.String first)
Description copied from class:DBDefinitionProvides the SQL the derive the dimension (2 basically) of the MultiPoint2D value.- Overrides:
doMultiPoint2DMeasurableDimensionsTransformin classDBDefinition- Parameters:
first- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DGetBoundingBoxTransform
public java.lang.String doMultiPoint2DGetBoundingBoxTransform(java.lang.String first)
Description copied from class:DBDefinitionProvides the SQL the derive the bounding box containing all the points in the MultiPoint2D value.- Overrides:
doMultiPoint2DGetBoundingBoxTransformin classDBDefinition- Parameters:
first- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DAsTextTransform
public java.lang.String doMultiPoint2DAsTextTransform(java.lang.String first)
Description copied from class:DBDefinitionProvides the SQL the transform the MultiPoint2D value into a WKT value.- Overrides:
doMultiPoint2DAsTextTransformin classDBDefinition- Parameters:
first- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DToLine2DTransform
public java.lang.String doMultiPoint2DToLine2DTransform(java.lang.String first)
Description copied from class:DBDefinitionProvides the SQL the transform the MultiPoint2D value into aLine2DResultvalue.- Overrides:
doMultiPoint2DToLine2DTransformin classDBDefinition- Parameters:
first- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DGetMinYTransform
public java.lang.String doMultiPoint2DGetMinYTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionProvides the SQL that will derive the smallest Y value of all the points in the MultiPoint2D value- Overrides:
doMultiPoint2DGetMinYTransformin classDBDefinition- Parameters:
toSQLString- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DGetMinXTransform
public java.lang.String doMultiPoint2DGetMinXTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionProvides the SQL that will derive the smallest X value of all the points in the MultiPoint2D value- Overrides:
doMultiPoint2DGetMinXTransformin classDBDefinition- Parameters:
toSQLString- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DGetMaxYTransform
public java.lang.String doMultiPoint2DGetMaxYTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionProvides the SQL that will derive the largest Y value of all the points in the MultiPoint2D value- Overrides:
doMultiPoint2DGetMaxYTransformin classDBDefinition- Parameters:
toSQLString- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
doMultiPoint2DGetMaxXTransform
public java.lang.String doMultiPoint2DGetMaxXTransform(java.lang.String toSQLString)
Description copied from class:DBDefinitionProvides the SQL that will derive the largest X value of all the points in the MultiPoint2D value- Overrides:
doMultiPoint2DGetMaxXTransformin classDBDefinition- Parameters:
toSQLString- the MultiPoint2D valueSupport DBvolution at Patreon
- Returns:
- SQL
-
preferredLargeObjectWriter
public LargeObjectHandlerType preferredLargeObjectWriter(DBLargeObject<?> lob)
- Overrides:
preferredLargeObjectWriterin classDBDefinition
-
preferredLargeObjectReader
public LargeObjectHandlerType preferredLargeObjectReader(DBLargeObject<?> lob)
- Overrides:
preferredLargeObjectReaderin classDBDefinition
-
getLogBase10FunctionName
public java.lang.String getLogBase10FunctionName()
Return the function name for the Logarithm Base10 function.By default this method returns log10
Support DBvolution at Patreon
- Overrides:
getLogBase10FunctionNamein classDBDefinition- Returns:
- the name of the function to use when rounding numbers up
-
doLogBase10NumberTransform
public java.lang.String doLogBase10NumberTransform(java.lang.String sql)
Description copied from class:DBDefinitionReturn the Natural Logarithm.By default this method returns log10(sql)
- Overrides:
doLogBase10NumberTransformin classDBDefinition- Parameters:
sql-Support DBvolution at Patreon
- Returns:
- the name of the function to use when rounding numbers up
-
doFindNumberInStringTransform
public java.lang.String doFindNumberInStringTransform(java.lang.String toSQLString)
- Overrides:
doFindNumberInStringTransformin classDBDefinition
-
doFindIntegerInStringTransform
public java.lang.String doFindIntegerInStringTransform(java.lang.String toSQLString)
- Overrides:
doFindIntegerInStringTransformin classDBDefinition
-
doRandomNumberTransform
public java.lang.String doRandomNumberTransform()
Description copied from class:DBDefinitionReturns the required code to generate a random number.For each call of this method a new random number is generated.
By default this method returns rand()
Support DBvolution at Patreon
- Overrides:
doRandomNumberTransformin classDBDefinition- Returns:
- the name of the function to use when creating random numbers
-
supportsTableCheckingViaMetaData
public boolean supportsTableCheckingViaMetaData()
- Overrides:
supportsTableCheckingViaMetaDatain classDBDefinition
-
requiresOnClauseForAllJoins
public boolean requiresOnClauseForAllJoins()
- Overrides:
requiresOnClauseForAllJoinsin classDBDefinition
-
requiresSequenceUpdateAfterManualInsert
public boolean requiresSequenceUpdateAfterManualInsert()
- Overrides:
requiresSequenceUpdateAfterManualInsertin classDBDefinition
-
getSequenceUpdateSQL
public java.lang.String getSequenceUpdateSQL(java.lang.String tableName, java.lang.String columnName, long primaryKeyGenerated)- Overrides:
getSequenceUpdateSQLin classDBDefinition
-
doStringAccumulateTransform
public java.lang.String doStringAccumulateTransform(java.lang.String accumulateColumn, java.lang.String separator, java.lang.String referencedTable)- Overrides:
doStringAccumulateTransformin classDBDefinition
-
doStringAccumulateTransform
public java.lang.String doStringAccumulateTransform(java.lang.String accumulateColumn, java.lang.String separator, java.lang.String orderByColumnName, java.lang.String referencedTable)- Overrides:
doStringAccumulateTransformin classDBDefinition
-
doRoundWithDecimalPlacesTransform
public java.lang.String doRoundWithDecimalPlacesTransform(java.lang.String number, java.lang.String decimalPlaces)Generate the SQL to apply rounding to the Number expressions with the specified number of decimal places.- Overrides:
doRoundWithDecimalPlacesTransformin classDBDefinition- Parameters:
number- the number valuedecimalPlaces- the number value of the decimal places required.Support DBvolution at Patreon
- Returns:
- SQL
-
doCurrentUTCTimeTransform
public java.lang.String doCurrentUTCTimeTransform()
Creates the CURRENTTIME function for this database.Support DBvolution at Patreon
- Overrides:
doCurrentUTCTimeTransformin classDBDefinition- Returns:
- the default implementation returns " CURRENT_TIMESTAMP "
-
doCurrentUTCDateTimeTransform
public java.lang.String doCurrentUTCDateTimeTransform()
- Overrides:
doCurrentUTCDateTimeTransformin classDBDefinition
-
doInstantYearTransform
public java.lang.String doInstantYearTransform(java.lang.String dateExpression)
Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the year part of the date.- Overrides:
doInstantYearTransformin classDBDefinition- Parameters:
dateExpression- dateExpressionSupport DBvolution at Patreon
- Returns:
- a SQL snippet that will produce the year of the supplied date.
-
doInstantMonthTransform
public java.lang.String doInstantMonthTransform(java.lang.String dateExpression)
Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the month part of the date.- Overrides:
doInstantMonthTransformin classDBDefinition- Parameters:
dateExpression- dateExpressionSupport DBvolution at Patreon
- Returns:
- a SQL snippet that will produce the month of the supplied date.
-
doInstantDayTransform
public java.lang.String doInstantDayTransform(java.lang.String dateExpression)
Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the day part of the date.Day in this sense is the number of the day within the month: that is the 23 part of Monday 25th of August 2014
- Overrides:
doInstantDayTransformin classDBDefinition- Parameters:
dateExpression- dateExpressionSupport DBvolution at Patreon
- Returns:
- a SQL snippet that will produce the day of the supplied date.
-
doInstantHourTransform
public java.lang.String doInstantHourTransform(java.lang.String dateExpression)
Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the hour part of the date.- Overrides:
doInstantHourTransformin classDBDefinition- Parameters:
dateExpression- dateExpressionSupport DBvolution at Patreon
- Returns:
- a SQL snippet that will produce the hour of the supplied date.
-
doInstantMinuteTransform
public java.lang.String doInstantMinuteTransform(java.lang.String dateExpression)
Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the minute part of the date.- Overrides:
doInstantMinuteTransformin classDBDefinition- Parameters:
dateExpression- dateExpressionSupport DBvolution at Patreon
- Returns:
- a SQL snippet that will produce the minute of the supplied date.
-
doInstantSecondTransform
public java.lang.String doInstantSecondTransform(java.lang.String dateExpression)
Transforms a SQL snippet that is assumed to be a date into an SQL snippet that provides the second part of the date.- Overrides:
doInstantSecondTransformin classDBDefinition- Parameters:
dateExpression- dateExpressionSupport DBvolution at Patreon
- Returns:
- a SQL snippet that will produce the second of the supplied date.
-
doInstantSubsecondTransform
public java.lang.String doInstantSubsecondTransform(java.lang.String dateExpression)
Returns the partial second value from the date.This should return the most detailed possible value less than a second for the date expression provided. It should always return a value less than 1s.
- Overrides:
doInstantSubsecondTransformin classDBDefinition- Parameters:
dateExpression- the date from which to get the subsecond part of.Support DBvolution at Patreon
- Returns:
- SQL
-
-