Package org.h2.value
Class ValueTimestamp
Implementation of the TIMESTAMP data type.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final long
A bit field with bits for the year, month, and day (see DateTimeUtils for encoding)static final int
The default precision and display size of the textual representation of a timestamp.static final int
The default scale for timestamps.static final int
The maximum precision and display size of the textual representation of a timestamp.static final int
The maximum scale for timestamps.private final long
The nanoseconds since midnight.Fields inherited from class org.h2.value.Value
ARRAY, ASSIGN_TO, BIGINT, BINARY, BLOB, BOOLEAN, CAST_TO, CHAR, CLOB, CONVERT_TO, DATE, DECFLOAT, DOUBLE, EMPTY_VALUES, ENUM, GEOMETRY, GROUP_BINARY_STRING, GROUP_BOOLEAN, GROUP_CHARACTER_STRING, GROUP_COLLECTION, GROUP_DATETIME, GROUP_INTERVAL_DT, GROUP_INTERVAL_YM, GROUP_NULL, GROUP_NUMERIC, GROUP_OTHER, GROUPS, INTEGER, INTERVAL_DAY, INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE, INTERVAL_DAY_TO_SECOND, INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND, INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_MONTH, INTERVAL_SECOND, INTERVAL_YEAR, INTERVAL_YEAR_TO_MONTH, JAVA_OBJECT, JSON, MAX_LONG_DECIMAL, MIN_LONG_DECIMAL, NULL, NUMERIC, REAL, ROW, SMALLINT, TIME, TIME_TZ, TIMESTAMP, TIMESTAMP_TZ, TINYINT, TYPE_COUNT, UNKNOWN, UUID, VARBINARY, VARCHAR, VARCHAR_IGNORECASE
Fields inherited from interface org.h2.util.HasSQL
ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdd a value and return the result.int
compareTypeSafe
(Value o, CompareMode mode, CastDataProvider provider) Compare this value against another value given that the values are of the same data type.boolean
Check if the two values have the same hash code.static ValueTimestamp
fromDateValueAndNanos
(long dateValue, long timeNanos) Get or create a date value for the given date.long
A bit field with bits for the year, month, and day (see DateTimeUtils for encoding).Returns value as string in ISO format.int
Get the memory used by this object.getSQL
(StringBuilder builder, int sqlFlags) Appends the SQL statement of this object to the specified builder.Get the value as a string.long
The nanoseconds since midnight.getType()
Returns the data type.int
Get the value type.int
hashCode()
static ValueTimestamp
parse
(String s, CastDataProvider provider) Parse a string to a ValueTimestamp, using the givenCastDataProvider
.Subtract a value and return the result.private StringBuilder
toString
(StringBuilder builder, boolean iso) Methods inherited from class org.h2.value.Value
cache, castTo, charLength, clearCache, compareTo, compareWithNull, containsNull, convertForAssignTo, convertTo, convertTo, convertTo, convertTo, convertTo, convertToAnyArray, convertToAnyRow, convertToBigint, convertToBoolean, convertToChar, convertToDate, convertToDouble, convertToEnum, convertToGeometry, convertToInt, convertToInt, convertToJavaObject, convertToReal, convertToSmallint, convertToTinyint, convertToUuid, divide, getBigDecimal, getBoolean, getByte, getBytes, getBytesNoCopy, getDataConversionError, getDataConversionError, getDouble, getFloat, getHigherOrder, getHigherOrderKnown, getInputStream, getInputStream, getInt, getLong, getReader, getReader, getShort, getSignum, getTypeName, getUnsupportedExceptionForOperation, getValueTooLongException, isFalse, isTrue, modulus, multiply, negate, octetLength, rangeCheck, toString
Methods inherited from class org.h2.value.VersionedValue
getCommittedValue, getCurrentValue, getOperationId, isCommitted
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.h2.util.HasSQL
getSQL, getTraceSQL
-
Field Details
-
DEFAULT_PRECISION
public static final int DEFAULT_PRECISIONThe default precision and display size of the textual representation of a timestamp. Example: 2001-01-01 23:59:59.123456- See Also:
-
MAXIMUM_PRECISION
public static final int MAXIMUM_PRECISIONThe maximum precision and display size of the textual representation of a timestamp. Example: 2001-01-01 23:59:59.123456789- See Also:
-
DEFAULT_SCALE
public static final int DEFAULT_SCALEThe default scale for timestamps.- See Also:
-
MAXIMUM_SCALE
public static final int MAXIMUM_SCALEThe maximum scale for timestamps.- See Also:
-
dateValue
private final long dateValueA bit field with bits for the year, month, and day (see DateTimeUtils for encoding) -
timeNanos
private final long timeNanosThe nanoseconds since midnight.
-
-
Constructor Details
-
ValueTimestamp
private ValueTimestamp(long dateValue, long timeNanos)
-
-
Method Details
-
fromDateValueAndNanos
Get or create a date value for the given date.- Parameters:
dateValue
- the date value, a bit field with bits for the year, month, and daytimeNanos
- the nanoseconds since midnight- Returns:
- the value
-
parse
Parse a string to a ValueTimestamp, using the givenCastDataProvider
. This method supports the format +/-year-month-day[ -]hour[:.]minute[:.]seconds.fractional and an optional timezone part.- Parameters:
s
- the string to parseprovider
- the cast information provider, may benull
for literals without time zone- Returns:
- the date
-
getDateValue
public long getDateValue()A bit field with bits for the year, month, and day (see DateTimeUtils for encoding).- Returns:
- the data value
-
getTimeNanos
public long getTimeNanos()The nanoseconds since midnight.- Returns:
- the nanoseconds
-
getType
Description copied from interface:Typed
Returns the data type. -
getValueType
public int getValueType()Description copied from class:Value
Get the value type.- Specified by:
getValueType
in classValue
- Returns:
- the value type
-
getMemory
public int getMemory()Description copied from class:Value
Get the memory used by this object. -
getString
Description copied from class:Value
Get the value as a string. -
getISOString
Returns value as string in ISO format.- Returns:
- value as string in ISO format
-
getSQL
Description copied from interface:HasSQL
Appends the SQL statement of this object to the specified builder.- Parameters:
builder
- string buildersqlFlags
- formatting flags- Returns:
- the specified string builder
-
toString
-
compareTypeSafe
Description copied from class:Value
Compare this value against another value given that the values are of the same data type.- Specified by:
compareTypeSafe
in classValue
- Parameters:
o
- the other valuemode
- the compare modeprovider
- the cast information provider- Returns:
- 0 if both values are equal, -1 if the other value is smaller, and 1 otherwise
-
equals
Description copied from class:Value
Check if the two values have the same hash code. No data conversion is made; this method returns false if the other object is not of the same class. For some values, compareTo may return 0 even if equals return false. Example: ValueDecimal 0.0 and 0.00. -
hashCode
public int hashCode() -
add
Description copied from class:Value
Add a value and return the result. -
subtract
Description copied from class:Value
Subtract a value and return the result.
-