Package org.h2.value
Class ValueBlob
Implementation of the BINARY LARGE OBJECT data type.
-
Field Summary
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_IGNORECASEFields 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 TypeMethodDescriptionlongReturns length of this value in characters.intcompareTypeSafe(Value v, CompareMode mode, CastDataProvider provider) Compare this value against another value given that the values are of the same data type.copy(DataHandler database, int tableId) Copy a large value, to be used in the given table.static ValueBlobcreateSmall(byte[] data) Creates a small BLOB value that can be stored in the row directly.static ValueBlobcreateTempBlob(InputStream in, long length, DataHandler handler) Create a temporary BLOB value from a stream.getInputStream(long oneBasedOffset, long length) Get the input streamgetReader(long oneBasedOffset, long length) Get the readergetSQL(StringBuilder builder, int sqlFlags) Appends the SQL statement of this object to the specified builder.Get the value as a string.intGet the value type.longReturns length of this value in bytes.Methods inherited from class org.h2.value.ValueLob
copyToResult, equals, getBytes, getBytesNoCopy, getLobData, getMemory, getReader, getType, hashCode, isLinkedToTable, rangeInputStream, removeMethods inherited from class org.h2.value.Value
add, castTo, clearCache, compareTo, compareWithNull, containsNull, convertForAssignTo, convertTo, convertTo, convertTo, convertTo, convertTo, convertToAnyArray, convertToAnyJson, convertToAnyRow, convertToBigint, convertToBoolean, convertToChar, convertToDate, convertToDouble, convertToEnum, convertToGeometry, convertToInt, convertToInt, convertToJavaObject, convertToJson, convertToReal, convertToSmallint, convertToTinyint, convertToUuid, divide, getBigDecimal, getBoolean, getByte, getDouble, getFloat, getHigherOrder, getInt, getLong, getShort, getSignum, getTypeName, getUnsupportedExceptionForOperation, getValueWithFirstNull, isFalse, isTrue, modulus, multiply, negate, subtract, toStringMethods inherited from class org.h2.value.VersionedValue
getCommittedValue, getCurrentValue, getOperationId, isCommittedMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.h2.util.HasSQL
getSQL, getTraceSQL
-
Constructor Details
-
ValueBlob
-
-
Method Details
-
createSmall
Creates a small BLOB value that can be stored in the row directly.- Parameters:
data- the data- Returns:
- the BLOB
-
createTempBlob
Create a temporary BLOB value from a stream.- Parameters:
in- the input streamlength- the number of characters to read, or -1 for no limithandler- the data handler- Returns:
- the lob value
-
getValueType
public int getValueType()Description copied from class:ValueGet the value type.- Specified by:
getValueTypein classValue- Returns:
- the value type
-
getString
Description copied from class:ValueGet the value as a string. -
getInputStream
- Overrides:
getInputStreamin classValue
-
getInputStream
Description copied from class:ValueGet the input stream- Overrides:
getInputStreamin classValue- Parameters:
oneBasedOffset- the offset (1 means no offset)length- the requested length- Returns:
- the new input stream
-
getReader
Description copied from class:ValueGet the reader -
compareTypeSafe
Description copied from class:ValueCompare this value against another value given that the values are of the same data type.- Specified by:
compareTypeSafein classValue- Parameters:
v- 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
-
getSQL
Description copied from interface:HasSQLAppends the SQL statement of this object to the specified builder.- Parameters:
builder- string buildersqlFlags- formatting flags- Returns:
- the specified string builder
-
copy
Description copied from class:ValueLobCopy a large value, to be used in the given table. For values that are kept fully in memory this method has no effect. -
charLength
public long charLength()Description copied from class:ValueReturns length of this value in characters.- Overrides:
charLengthin classValue- Returns:
- length of this value in characters
-
octetLength
public long octetLength()Description copied from class:ValueReturns length of this value in bytes.- Overrides:
octetLengthin classValue- Returns:
- length of this value in bytes
-