org.h2.value
Class ValueTimestamp

java.lang.Object
  extended by org.h2.value.Value
      extended by org.h2.value.ValueTimestamp

public class ValueTimestamp
extends Value

Implementation of the TIMESTAMP data type.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.h2.value.Value
Value.ValueBlob, Value.ValueClob
 
Field Summary
static int PRECISION
          The precision in digits.
 
Fields inherited from class org.h2.value.Value
ARRAY, BLOB, BOOLEAN, BYTE, BYTES, CLOB, DATE, DECIMAL, DOUBLE, FLOAT, INT, JAVA_OBJECT, LONG, NULL, RESULT_SET, SHORT, STRING, STRING_FIXED, STRING_IGNORECASE, TIME, TIMESTAMP, TYPE_COUNT, UNKNOWN, UUID
 
Method Summary
 Value add(Value v)
          Add a value and return the result.
protected  int compareSecure(Value o, CompareMode mode)
          Compare the value with another value of the same type.
 Value convertScale(boolean onlyToSmallerScale, int targetScale)
          Convert the scale.
 boolean equals(java.lang.Object other)
          Check if the two values have the same hash code.
static ValueTimestamp fromDateValueAndNanos(long dateValue, long nanos)
          Get or create a date value for the given date.
static ValueTimestamp get(java.sql.Timestamp timestamp)
          Get or create a timestamp value for the given timestamp.
 long getDateValue()
           
 int getDisplaySize()
          Get the display size in characters.
 long getNanos()
           
 java.lang.Object getObject()
          Get the value as an object.
 long getPrecision()
          Get the precision.
 int getScale()
           
 java.lang.String getSQL()
          Get the SQL expression for this value.
 java.lang.String getString()
          Get the value as a string.
 java.sql.Timestamp getTimestamp()
           
 int getType()
          Get the value type.
 int hashCode()
           
static ValueTimestamp parse(java.lang.String s)
          Parse a string to a ValueTimestamp.
 void set(java.sql.PreparedStatement prep, int parameterIndex)
          Set the value as a parameter in a prepared statement.
 Value subtract(Value v)
          Subtract a value and return the result.
 
Methods inherited from class org.h2.value.Value
checkPrecision, clearCache, close, compareTo, compareTypeSave, convertPrecision, convertTo, copyToTemp, divide, getBigDecimal, getBoolean, getByte, getBytes, getBytesNoCopy, getDate, getDouble, getFloat, getHigherOrder, getInputStream, getInt, getLong, getMemory, getReader, getResultSet, getShort, getSignum, getSmall, getTableId, getTime, getTraceSQL, isLinked, link, modulus, multiply, negate, throwUnsupportedExceptionForType, toString, unlink
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

PRECISION

public static final int PRECISION
The precision in digits.

See Also:
Constant Field Values
Method Detail

fromDateValueAndNanos

public static ValueTimestamp fromDateValueAndNanos(long dateValue,
                                                   long nanos)
Get or create a date value for the given date.

Parameters:
dateValue - the date value
nanos - the nanoseconds
Returns:
the value

get

public static ValueTimestamp get(java.sql.Timestamp timestamp)
Get or create a timestamp value for the given timestamp.

Parameters:
timestamp - the timestamp
Returns:
the value

parse

public static ValueTimestamp parse(java.lang.String s)
Parse a string to a ValueTimestamp. This method supports the format +/-year-month-day hour:minute:seconds.fractional and an optional timezone part.

Parameters:
s - the string to parse
Returns:
the date

getDateValue

public long getDateValue()

getNanos

public long getNanos()

getTimestamp

public java.sql.Timestamp getTimestamp()
Overrides:
getTimestamp in class Value

getType

public int getType()
Description copied from class: Value
Get the value type.

Specified by:
getType in class Value
Returns:
the type

getString

public java.lang.String getString()
Description copied from class: Value
Get the value as a string.

Specified by:
getString in class Value
Returns:
the string

getSQL

public java.lang.String getSQL()
Description copied from class: Value
Get the SQL expression for this value.

Specified by:
getSQL in class Value
Returns:
the SQL expression

getPrecision

public long getPrecision()
Description copied from class: Value
Get the precision.

Specified by:
getPrecision in class Value
Returns:
the precision

getScale

public int getScale()
Overrides:
getScale in class Value

getDisplaySize

public int getDisplaySize()
Description copied from class: Value
Get the display size in characters.

Specified by:
getDisplaySize in class Value
Returns:
the display size

convertScale

public Value convertScale(boolean onlyToSmallerScale,
                          int targetScale)
Description copied from class: Value
Convert the scale.

Overrides:
convertScale in class Value
Parameters:
onlyToSmallerScale - if the scale should not reduced
targetScale - the requested scale
Returns:
the value

compareSecure

protected int compareSecure(Value o,
                            CompareMode mode)
Description copied from class: Value
Compare the value with another value of the same type.

Specified by:
compareSecure in class Value
Parameters:
o - the other value
mode - the compare mode
Returns:
0 if both values are equal, -1 if the other value is smaller, and 1 otherwise

equals

public boolean equals(java.lang.Object other)
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.

Specified by:
equals in class Value
Parameters:
other - the other value
Returns:
true if they are equal

hashCode

public int hashCode()
Specified by:
hashCode in class Value

getObject

public java.lang.Object getObject()
Description copied from class: Value
Get the value as an object.

Specified by:
getObject in class Value
Returns:
the object

set

public void set(java.sql.PreparedStatement prep,
                int parameterIndex)
         throws java.sql.SQLException
Description copied from class: Value
Set the value as a parameter in a prepared statement.

Specified by:
set in class Value
Parameters:
prep - the prepared statement
parameterIndex - the parameter index
Throws:
java.sql.SQLException

add

public Value add(Value v)
Description copied from class: Value
Add a value and return the result.

Overrides:
add in class Value
Parameters:
v - the value to add
Returns:
the result

subtract

public Value subtract(Value v)
Description copied from class: Value
Subtract a value and return the result.

Overrides:
subtract in class Value
Parameters:
v - the value to subtract
Returns:
the result