Package org.h2.result

# Class Row

java.lang.Object
org.h2.value.VersionedValue<Value>
org.h2.value.Value
org.h2.result.SearchRow
org.h2.result.Row

All Implemented Interfaces:
  `HasSQL`, `Typed`

Direct Known Subclasses:
  `DefaultRow`

public abstract class Row extends SearchRow
Represents a row in a table.

## Field Summary

### Fields inherited from class org.h2.result.SearchRow

`key, MATCH_ALL_ROW_KEY, MEMORY_CALCULATE, ROWID_INDEX`

### 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, 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
Constructor
Description
`Row()`

## Method Summary

Modifier and Type
Method
Description
`static Row`
`get(Value[] data, int memory)`
Creates a new row.
`static Row`
`get(Value[] data, int memory, long key)`
Creates a new row with the specified key.
`abstract Value[]`
`getValueList()`
Get values.
`boolean`
`hasSameValues(Row other)`
Check whether values of this row are equal to values of other row.
`boolean`
`hasSharedData(Row other)`
Check whether this row and the specified row share the same underlying data with values.

### Methods inherited from class org.h2.result.SearchRow

`compareTypeSafe, copyFrom, equals, getColumnCount, getKey, getMemory, getSQL, getString, getType, getValue, getValueType, hashCode, isNull, setKey, setValue`

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

`add, castTo, charLength, clearCache, compareTo, compareWithNull, containsNull, convertForAssignTo, convertTo, convertTo, convertTo, convertTo, convertTo, convertToAnyArray, convertToAnyJson, convertToAnyRow, convertToBigint, convertToBoolean, convertToChar, convertToDate, convertToDouble, convertToEnum, convertToGeometry, convertToInt, convertToInt, convertToJavaObject, convertToJson, convertToLong, convertToReal, convertToSmallint, convertToTinyint, convertToUuid, divide, getBigDecimal, getBoolean, getByte, getBytes, getBytesNoCopy, getDouble, getFloat, getHigherOrder, getInputStream, getInputStream, getInt, getLong, getReader, getReader, getShort, getSignum, getTypeName, getUnsupportedExceptionForOperation, getValueWithFirstNull, isFalse, isTrue, modulus, multiply, negate, octetLength, subtract, 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`

## Constructor Details

### Row

public Row()

## Method Details

### get

public static Row get(Value[] data, int memory)
Creates a new row.

Parameters:
  `data` - values of columns, or null
  `memory` - used memory
Returns:
  the allocated row

### get

public static Row get(Value[] data, int memory, long key)
Creates a new row with the specified key.

Parameters:
  `data` - values of columns, or null
  `memory` - used memory
  `key` - the key
Returns:
  the allocated row

### getValueList

public abstract Value[] getValueList()
Get values.

Returns:
  values

### hasSameValues

public boolean hasSameValues(Row other)
Check whether values of this row are equal to values of other row.

Parameters:
  `other` - the other row
Returns:
  `true` if values are equal, `false` otherwise

### hasSharedData

public boolean hasSharedData(Row other)
Check whether this row and the specified row share the same underlying data with values. This method must return `false` when values are not equal and may return either `true` or `false` when they are equal. This method may be used only for optimizations and should not perform any slow checks, such as equality checks for all pairs of values.

Parameters:
  `other` - the other row
Returns:
  `true` if rows share the same underlying data, `false` otherwise or when unknown