org.h2.value

## Class ValueLong

- java.lang.Object
- - org.h2.value.VersionedValue
  - - org.h2.value.Value
    - - org.h2.value.ValueLong

    public class ValueLong
    extends Value

Implementation of the BIGINT data type.

### Field Summary

Fields
`static int` `DISPLAY_SIZE` The maximum display size of a long.
`static ValueLong` `MAX` The largest `ValueLong` value.
`static java.math.BigInteger` `MAX_BI` The largest Long value, as a BigInteger.
`static ValueLong` `MIN` The smallest `ValueLong` value.
`static int` `PRECISION` The precision in digits.

### Fields inherited from class org.h2.value.Value

`ARRAY, BLOB, BOOLEAN, BYTE, BYTES, CLOB, DATE, DECIMAL, DOUBLE, ENUM, FLOAT, GEOMETRY, INT, 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, LONG, MIN_LONG_DECIMAL, NULL, RESULT_SET, ROW, SHORT, STRING, STRING_FIXED, STRING_IGNORECASE, TIME, TIME_TZ, TIMESTAMP, TIMESTAMP_TZ, TYPE_COUNT, UNKNOWN, UUID`

### Fields inherited from class org.h2.value.VersionedValue

`DUMMY`

### Method Summary

Methods
`Value` `add(Value v)` Add 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.
`Value` `divide(Value v)` Divide by a value and return the result.
`boolean` `equals(java.lang.Object other)` Check if the two values have the same hash code.
`static ValueLong` `get(long i)` Get or create a long value for the given long.
`long` `getLong()`
`java.lang.Object` `getObject()` Get the value as an object.
`int` `getSignum()`
`java.lang.StringBuilder` `getSQL(java.lang.StringBuilder builder)` Appends the SQL expression for this value to the specified builder.
`java.lang.String` `getString()` Get the value as a string.
`TypeInfo` `getType()` Returns the data type.
`int` `getValueType()` Get the value type.
`int` `hashCode()`
`Value` `modulus(Value v)` Take the modulus with a value and return the result.
`Value` `multiply(Value v)` Multiply with a value and return the result.
`Value` `negate()` Return -value if this value support arithmetic operations.
`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, compareTo, compareWithNull, containsNull, convertPrecision, convertScale, convertTo, convertTo, convertTo, convertTo, convertToInt, copy, copyToResult, copyToTemp, getBigDecimal, getBoolean, getByte, getBytes, getBytesNoCopy, getDataHandler, getDate, getDouble, getFloat, getHigherOrder, getHigherType, getInputStream, getInputStream, getInt, getMemory, getReader, getReader, getResult, getShort, getSmall, getSQL, getTableId, getTime, getTimestamp, getTraceSQL, getUnsupportedExceptionForOperation, isLinkedToTable, remove, 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`

### Field Detail

#### MIN

    public static final ValueLong MIN

The smallest `ValueLong` value.

#### MAX

    public static final ValueLong MAX

The largest `ValueLong` value.

#### MAX_BI

    public static final java.math.BigInteger MAX_BI

The largest Long value, as a BigInteger.

#### PRECISION

    public static final int PRECISION

The precision in digits.

See Also:
  Constant Field Values

#### DISPLAY_SIZE

    public static final int DISPLAY_SIZE

The maximum display size of a long. Example: 9223372036854775808

See Also:
  Constant Field Values

### Method Detail

#### 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

#### getSignum

    public int getSignum()

Overrides:
  `getSignum` in class `Value`

#### negate

    public Value negate()

Description copied from class: `Value`
Return -value if this value support arithmetic operations.

Overrides:
  `negate` in class `Value`
Returns:
  the negative

#### 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

#### multiply

    public Value multiply(Value v)

Description copied from class: `Value`
Multiply with a value and return the result.

Overrides:
  `multiply` in class `Value`
Parameters:
  `v` - the value to multiply with
Returns:
  the result

#### divide

    public Value divide(Value v)

Description copied from class: `Value`
Divide by a value and return the result.

Overrides:
  `divide` in class `Value`
Parameters:
  `v` - the value to divide by
Returns:
  the result

#### modulus

    public Value modulus(Value v)

Description copied from class: `Value`
Take the modulus with a value and return the result.

Overrides:
  `modulus` in class `Value`
Parameters:
  `v` - the value to take the modulus with
Returns:
  the result

#### getSQL

    public java.lang.StringBuilder getSQL(java.lang.StringBuilder builder)

Description copied from class: `Value`
Appends the SQL expression for this value to the specified builder.

Specified by:
  `getSQL` in class `Value`
Parameters:
  `builder` - string builder
Returns:
  the specified string builder

#### getType

    public TypeInfo getType()

Description copied from class: `Value`
Returns the data type.

Specified by:
  `getType` in class `Value`
Returns:
  the data type

#### getValueType

    public int getValueType()

Description copied from class: `Value`
Get the value type.

Specified by:
  `getValueType` in class `Value`
Returns:
  the value type

#### getLong

    public long getLong()

Overrides:
  `getLong` in class `Value`

#### compareTypeSafe

    public int compareTypeSafe(Value o,
                      CompareMode mode,
                      CastDataProvider provider)

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 class `Value`
Parameters:
  `o` - the other value
  `mode` - the compare mode
  `provider` - the cast information provider
Returns:
  0 if both values are equal, -1 if the other value is smaller, and 1 otherwise

#### 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

#### 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`

#### get

    public static ValueLong get(long i)

Get or create a long value for the given long.

Parameters:
  `i` - the long
Returns:
  the value

#### 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