Package org.apache.derby.iapi.types
Class SQLLongVarbit
java.lang.Object
org.apache.derby.iapi.types.DataType
org.apache.derby.iapi.types.SQLBinary
org.apache.derby.iapi.types.SQLBit
org.apache.derby.iapi.types.SQLVarbit
org.apache.derby.iapi.types.SQLLongVarbit
- All Implemented Interfaces:
Externalizable
,Serializable
,Comparable
,Formatable
,Storable
,StreamStorable
,TypedFormat
,BitDataValue
,ConcatableDataValue
,DataValueDescriptor
,Orderable
,VariableSizeDataValue
SQLLongVarbit represents the SQL type LONG VARCHAR FOR BIT DATA
It is an extension of SQLVarbit and is virtually indistinguishable
other than normalization.
- See Also:
-
Field Summary
Fields inherited from class org.apache.derby.iapi.types.SQLBinary
_blobValue, dataValue, PAD, stream, streamValueLength
Fields inherited from interface org.apache.derby.iapi.types.DataValueDescriptor
UNKNOWN_LOGICAL_LENGTH
Fields inherited from interface org.apache.derby.iapi.types.Orderable
ORDER_OP_EQUALS, ORDER_OP_GREATEROREQUALS, ORDER_OP_GREATERTHAN, ORDER_OP_LESSOREQUALS, ORDER_OP_LESSTHAN
Fields inherited from interface org.apache.derby.iapi.types.VariableSizeDataValue
IGNORE_PRECISION
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) int
Return max memory usage for a SQL LongVarbitGet a new null value of the same type as this data value.int
Return my format identifier.Get the SQL name of the datatypevoid
normalize
(DataTypeDescriptor desiredType, DataValueDescriptor source) Normalization method - this method may be called when putting a value into a SQLVarbit, for example, when inserting into a SQLVarbit column.int
Each built-in type in JSQL has a precedence.Methods inherited from class org.apache.derby.iapi.types.SQLBit
getObject, setObject, setValueFromResultSet
Methods inherited from class org.apache.derby.iapi.types.SQLBinary
charLength, checkHostVariable, cloneHolder, cloneValue, compare, compare, concatenate, equals, estimateMemoryUsage, getBytes, getLength, getStream, getString, getTraceString, getValue, greaterOrEquals, greaterThan, hashCode, isNull, lessOrEquals, lessThan, loadStream, notEquals, objectNull, readExternal, restoreToNull, returnStream, setFrom, setInto, setStream, setValue, setValue, setValue, substring, toString, truncate, writeExternal
Methods inherited from class org.apache.derby.iapi.types.DataType
coalesce, compare, compare, compareTo, dataTypeConversion, equals, flip, genericSetObject, getBoolean, getByte, getDate, getDouble, getFloat, getInt, getLong, getShort, getTime, getTimestamp, getTypeName, hasStream, in, invalidFormat, isNotNull, isNullOp, outOfRange, readExternalFromArray, recycle, setBigDecimal, setInto, setObjectForCast, setToNull, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, throwLangSetMismatch, throwLangSetMismatch, typeToBigDecimal
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.derby.iapi.types.DataValueDescriptor
coalesce, compare, compare, getBoolean, getByte, getDate, getDouble, getFloat, getInt, getLong, getShort, getTime, getTimestamp, hasStream, in, isNotNull, isNullOp, readExternalFromArray, recycle, setBigDecimal, setInto, setObjectForCast, setToNull, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, typeToBigDecimal
-
Constructor Details
-
SQLLongVarbit
public SQLLongVarbit() -
SQLLongVarbit
public SQLLongVarbit(byte[] val)
-
-
Method Details
-
getTypeName
Description copied from interface:DataValueDescriptor
Get the SQL name of the datatype- Specified by:
getTypeName
in interfaceDataValueDescriptor
- Overrides:
getTypeName
in classSQLVarbit
- Returns:
- The SQL name of the datatype
-
getMaxMemoryUsage
int getMaxMemoryUsage()Return max memory usage for a SQL LongVarbit- Overrides:
getMaxMemoryUsage
in classSQLVarbit
-
getNewNull
Description copied from interface:DataValueDescriptor
Get a new null value of the same type as this data value.- Specified by:
getNewNull
in interfaceDataValueDescriptor
- Overrides:
getNewNull
in classSQLVarbit
- See Also:
-
getTypeFormatId
public int getTypeFormatId()Return my format identifier.- Specified by:
getTypeFormatId
in interfaceTypedFormat
- Overrides:
getTypeFormatId
in classSQLVarbit
- Returns:
- The identifier. (A UUID stuffed in an array of 16 bytes).
- See Also:
-
normalize
public void normalize(DataTypeDescriptor desiredType, DataValueDescriptor source) throws StandardException Normalization method - this method may be called when putting a value into a SQLVarbit, for example, when inserting into a SQLVarbit column. See NormalizeResultSet in execution. This overrides SQLBit -- the difference is that we don't expand SQLVarbits to fit the target.- Specified by:
normalize
in interfaceDataValueDescriptor
- Overrides:
normalize
in classSQLVarbit
- Parameters:
desiredType
- The type to normalize the source column tosource
- The value to normalize- Throws:
StandardException
- Thrown for null into non-nullable column, and for truncation error
-
typePrecedence
public int typePrecedence()Description copied from class:DataType
Each built-in type in JSQL has a precedence. This precedence determines how to do type promotion when using binary operators. For example, float has a higher precedence than int, so when adding an int to a float, the result type is float. The precedence for some types is arbitrary. For example, it doesn't matter what the precedence of the boolean type is, since it can't be mixed with other types. But the precedence for the number types is critical. The SQL standard requires that exact numeric types be promoted to approximate numeric when one operator uses both. Also, the precedence is arranged so that one will not lose precision when promoting a type.- Specified by:
typePrecedence
in interfaceDataValueDescriptor
- Overrides:
typePrecedence
in classSQLVarbit
- Returns:
- The precedence of this type.
- See Also:
-