java.lang.Object
org.apache.derby.iapi.types.DataType
org.apache.derby.iapi.types.SQLChar
org.apache.derby.iapi.types.SQLVarchar
org.apache.derby.iapi.types.SQLLongvarchar
- All Implemented Interfaces:
- CloneableObject, ConcatableDataValue, DataValueDescriptor, java.io.Externalizable, org.apache.derby.iapi.services.io.Formatable, Orderable, java.io.Serializable, org.apache.derby.iapi.services.io.Storable, org.apache.derby.iapi.services.io.StreamStorable, StringDataValue, org.apache.derby.iapi.services.io.TypedFormat, VariableSizeDataValue
- Direct Known Subclasses:
- SQLNationalLongvarchar
- public class SQLLongvarchar
- extends SQLVarchar
SQLLongvarchar satisfies the DataValueDescriptor interfaces (i.e., OrderableDataType). It implements a String
holder, e.g. for storing a column value; it can be specified
when constructed to not allow nulls. Nullability cannot be changed
after construction.
Because OrderableDataType is a subclass of DataType,
SQLLongvarchar can play a role in either a DataType/ValueRow
or a OrderableDataType/KeyRow, interchangeably.
SQLLongvarchar is mostly the same as SQLVarchar, so it is implemented as a
subclass of SQLVarchar. Only those methods with different behavior are
implemented here.
| Methods inherited from class org.apache.derby.iapi.types.SQLChar |
appendBlanks, charLength, cloneObject, compare, compare, copyState, equals, estimateMemoryUsage, getBoolean, getByte, getCharArray, getCollationKey, getDate, getDate, getDateFormat, getDateFormat, getDouble, getFloat, getInt, getLength, getLocaleFinder, getLong, getNewVarchar, getObject, getShort, getStream, getString, getTime, getTime, getTimeFormat, getTimeFormat, getTimestamp, getTimestamp, getTimestampFormat, getTimestampFormat, greaterOrEquals, greaterThan, hashCode, hasNonBlankChars, isNationalString, isNull, lessOrEquals, lessThan, like, like, loadStream, locate, lower, nationalGetDate, nationalGetTime, nationalGetTimestamp, nationalHashCode, notEquals, readExternal, readExternalFromArray, restoreToNull, returnStream, setBigDecimal, setFrom, setInto, setLocaleFinder, setStream, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValueFromResultSet, setWidth, stringCollatorCompare, stringCompare, stringCompare, stringCompare, substring, toString, trim, typeToBigDecimal, upper, writeExternal, XMLParse |
| Methods inherited from class org.apache.derby.iapi.types.DataType |
checkHostVariable, coalesce, dataTypeConversion, equals, flip, genericSetObject, getBytes, getNationalString, in, invalidFormat, isNotNull, isNullOp, outOfRange, setInto, setObjectForCast, setToNull, setValue, setValue, setValue, setValue, throwLangSetMismatch, throwLangSetMismatch |
| Methods inherited from interface org.apache.derby.iapi.types.DataValueDescriptor |
checkHostVariable, coalesce, getBytes, in, isNotNull, isNullOp, setInto, setObjectForCast, setToNull, setValue, setValue, setValue, setValue |
SQLLongvarchar
public SQLLongvarchar()
SQLLongvarchar
public SQLLongvarchar(java.lang.String val)
getTypeName
public java.lang.String getTypeName()
- Description copied from interface:
DataValueDescriptor
- Get the SQL name of the datatype
- Specified by:
getTypeName in interface DataValueDescriptor- Overrides:
getTypeName in class SQLVarchar
getClone
public DataValueDescriptor getClone()
- Description copied from interface:
DataValueDescriptor
- Clone this DataValueDescriptor. Results in a new object
that has the same value as this but can be modified independently.
- Specified by:
getClone in interface DataValueDescriptor- Overrides:
getClone in class SQLVarchar
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 SQLVarchar
getTypeFormatId
public int getTypeFormatId()
- Return my format identifier.
- Specified by:
getTypeFormatId in interface org.apache.derby.iapi.services.io.TypedFormat- Overrides:
getTypeFormatId in class SQLVarchar
normalize
protected void normalize(DataTypeDescriptor desiredType,
java.lang.String sourceValue)
throws org.apache.derby.iapi.error.StandardException
- Overrides:
normalize in class SQLVarchar
concatenate
public StringDataValue concatenate(StringDataValue leftOperand,
StringDataValue rightOperand,
StringDataValue result)
throws org.apache.derby.iapi.error.StandardException
- Description copied from interface:
StringDataValue
- The SQL concatenation '||' operator.
- Specified by:
concatenate in interface StringDataValue- Overrides:
concatenate in class SQLChar
typePrecedence
public int typePrecedence()
- Description copied from interface:
DataValueDescriptor
- 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 SQLVarchar