Class SQLLongVarbit

All Implemented Interfaces:
Externalizable, Serializable, Comparable, Formatable, Storable, StreamStorable, TypedFormat, BitDataValue, ConcatableDataValue, DataValueDescriptor, Orderable, VariableSizeDataValue

public class SQLLongVarbit extends SQLVarbit
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:
  • Constructor Details

    • SQLLongVarbit

      public SQLLongVarbit()
    • SQLLongVarbit

      public SQLLongVarbit(byte[] val)
  • Method Details

    • getTypeName

      public String getTypeName()
      Description copied from interface: DataValueDescriptor
      Get the SQL name of the datatype
      Specified by:
      getTypeName in interface DataValueDescriptor
      Overrides:
      getTypeName in class SQLVarbit
      Returns:
      The SQL name of the datatype
    • getMaxMemoryUsage

      int getMaxMemoryUsage()
      Return max memory usage for a SQL LongVarbit
      Overrides:
      getMaxMemoryUsage in class SQLVarbit
    • getNewNull

      public DataValueDescriptor getNewNull()
      Description copied from interface: DataValueDescriptor
      Get a new null value of the same type as this data value.
      Specified by:
      getNewNull in interface DataValueDescriptor
      Overrides:
      getNewNull in class SQLVarbit
      See Also:
    • getTypeFormatId

      public int getTypeFormatId()
      Return my format identifier.
      Specified by:
      getTypeFormatId in interface TypedFormat
      Overrides:
      getTypeFormatId in class SQLVarbit
      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 interface DataValueDescriptor
      Overrides:
      normalize in class SQLVarbit
      Parameters:
      desiredType - The type to normalize the source column to
      source - 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 interface DataValueDescriptor
      Overrides:
      typePrecedence in class SQLVarbit
      Returns:
      The precedence of this type.
      See Also: