org.hsqldb.types
Class ArrayType
- java.lang.Object
-
- org.hsqldb.types.Type
-
- org.hsqldb.types.ArrayType
-
- All Implemented Interfaces:
- java.lang.Cloneable, SchemaObject
public class ArrayType extends Type
Class for ARRAY type objects.- Since:
- 2.0.0
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.hsqldb.types.Type
Type.TypedComparator
-
Nested classes/interfaces inherited from interface org.hsqldb.SchemaObject
SchemaObject.ConstraintTypes, SchemaObject.Deferable, SchemaObject.Nullability, SchemaObject.ParameterModes, SchemaObject.ReferentialAction, SchemaObject.ViewCheckModes
-
-
Field Summary
Fields Modifier and Type Field and Description static intdefaultArrayCardinalitystatic intdefaultLargeArrayCardinality-
Fields inherited from class org.hsqldb.types.Type
emptyArray, jdbcConvertTypes, OTHER, precision, scale, SQL_ALL_TYPES, SQL_ARRAY_ALL_TYPES, SQL_BIGINT, SQL_BINARY, SQL_BINARY_16, SQL_BINARY_DEFAULT, SQL_BIT, SQL_BIT_VARYING, SQL_BIT_VARYING_MAX_LENGTH, SQL_BLOB, SQL_BOOLEAN, SQL_CHAR, SQL_CHAR_16, SQL_CHAR_DEFAULT, SQL_CLOB, SQL_DATE, SQL_DECIMAL, SQL_DECIMAL_BIGINT_SQR, SQL_DECIMAL_DEFAULT, SQL_DOUBLE, SQL_INTEGER, SQL_INTERVAL_DAY, SQL_INTERVAL_DAY_MAX_PRECISION, SQL_INTERVAL_DAY_TO_HOUR, SQL_INTERVAL_DAY_TO_MINUTE, SQL_INTERVAL_DAY_TO_SECOND, SQL_INTERVAL_DAY_TO_SECOND_MAX_PRECISION, SQL_INTERVAL_HOUR, SQL_INTERVAL_HOUR_MAX_PRECISION, SQL_INTERVAL_HOUR_TO_MINUTE, SQL_INTERVAL_HOUR_TO_SECOND, SQL_INTERVAL_MINUTE, SQL_INTERVAL_MINUTE_MAX_PRECISION, SQL_INTERVAL_MINUTE_TO_SECOND, SQL_INTERVAL_MONTH, SQL_INTERVAL_MONTH_MAX_PRECISION, SQL_INTERVAL_SECOND, SQL_INTERVAL_SECOND_MAX_FRACTION, SQL_INTERVAL_SECOND_MAX_FRACTION_MAX_PRECISION, SQL_INTERVAL_SECOND_MAX_PRECISION, SQL_INTERVAL_YEAR, SQL_INTERVAL_YEAR_MAX_PRECISION, SQL_INTERVAL_YEAR_TO_MONTH, SQL_INTERVAL_YEAR_TO_MONTH_MAX_PRECISION, SQL_NUMERIC, SQL_SMALLINT, SQL_TIME, SQL_TIME_WITH_TIME_ZONE, SQL_TIMESTAMP, SQL_TIMESTAMP_NO_FRACTION, SQL_TIMESTAMP_WITH_TIME_ZONE, SQL_VARBINARY, SQL_VARBINARY_DEFAULT, SQL_VARCHAR, SQL_VARCHAR_DEFAULT, TINYINT, typeAliases, typeCode, typeComparisonGroup, typeDataGroup, typeNames, userTypeModifier
-
Fields inherited from interface org.hsqldb.SchemaObject
ASSERTION, CATALOG, CHARSET, COLLATION, COLUMN, CONSTRAINT, CURSOR, DOMAIN, FUNCTION, GRANTEE, INDEX, LABEL, PARAMETER, PROCEDURE, ROUTINE, SCHEMA, SEARCH, SEQUENCE, SERVER, SPECIFIC_ROUTINE, SUBQUERY, TABLE, TRANSITION, TRIGGER, TYPE, VARIABLE, VIEW, WRAPPER
-
-
Constructor Summary
Constructors Constructor and Description ArrayType(Type dataType, int cardinality)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description intarrayLimitCardinality()booleancanBeAssignedFrom(Type otherType)booleancanConvertFrom(Type otherType)intcanMoveFrom(Type otherType)Can convert without changing the objectintcardinality(Session session, java.lang.Object a)TypecollectionBaseType()intcompare(Session session, java.lang.Object a, java.lang.Object b)java.lang.Objectconcat(Session session, java.lang.Object a, java.lang.Object b)java.lang.ObjectconvertJavaToSQL(SessionInterface session, java.lang.Object a)java.lang.ObjectconvertSQLToJava(SessionInterface session, java.lang.Object a)java.lang.ObjectconvertToDefaultType(SessionInterface sessionInterface, java.lang.Object o)Converts the object to the given type without limit checks.java.lang.StringconvertToSQLString(java.lang.Object a)java.lang.StringconvertToString(java.lang.Object a)java.lang.ObjectconvertToType(SessionInterface session, java.lang.Object a, Type otherType)Same as castToType except for CHARACTER values.java.lang.ObjectconvertToTypeLimits(SessionInterface session, java.lang.Object a)intdeDuplicate(Session session, java.lang.Object a, SortAndSlice sort)intdisplaySize()booleanequals(java.lang.Object other)TypegetAggregateType(Type other)Common type used in comparison opertions.TypegetCombinedType(Session session, Type other, int operation)Result type of combining values of two types in different opertions.java.lang.StringgetDefinition()Returns the full definition of the type, including parametersjava.lang.StringgetFullNameString()Returns the name of the typejava.lang.ClassgetJDBCClass()java.lang.StringgetJDBCClassName()Returns the JDBC class name of type, if it exists, otherwise the HSQLDB class name.intgetJDBCPrecision()intgetJDBCScale()intgetJDBCTypeCode()Returns the JDBC type number of type, if it exists, otherwise the HSQLDB / SQL type.java.lang.StringgetNameString()Returns the name of the typeintgetSQLGenericTypeCode()Returns the generic SQL CLI type number of type, if it exists, otherwise the HSQLDB type.inthashCode(java.lang.Object a)booleanisArrayType()voidsort(Session session, java.lang.Object a, SortAndSlice sort)-
Methods inherited from class org.hsqldb.types.Type
absolute, acceptsFractionalPrecision, acceptsPrecision, acceptsScale, add, castToType, compare, compare, compareToTypeRange, compile, convertToTypeJDBC, divide, duplicate, getAggregateType, getCatalogName, getChangeTimestamp, getCharacterSet, getCollation, getComponents, getDefaultArrayType, getDefaultType, getDefaultTypeWithSize, getHSQLDBTypeCode, getJDBCTypeCode, getMaxPrecision, getMaxScale, getName, getOwner, getPrecisionRadix, getReferences, getSchemaName, getSQL, getType, getType, getType, getTypeDefinition, getTypeForJDBCConvertToken, getTypeNr, hashCode, isBinaryType, isBitType, isBooleanType, isCharacterType, isDateOrTimestampType, isDateTimeType, isDateTimeTypeWithZone, isDecimalType, isDistinctType, isDomainType, isExactNumberType, isIntegralType, isIntervalType, isLobType, isMultisetType, isNumberType, isObjectType, isRowType, isStructuredType, isSupportedSQLType, matches, multiply, negate, newComparator, precedenceDegree, requiresPrecision, subtract
-
-
-
-
Field Detail
-
defaultArrayCardinality
public static final int defaultArrayCardinality
- See Also:
- Constant Field Values
-
defaultLargeArrayCardinality
public static final int defaultLargeArrayCardinality
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ArrayType
public ArrayType(Type dataType, int cardinality)
-
-
Method Detail
-
displaySize
public int displaySize()
- Specified by:
displaySizein classType
-
getJDBCTypeCode
public int getJDBCTypeCode()
Description copied from class:TypeReturns the JDBC type number of type, if it exists, otherwise the HSQLDB / SQL type.- Specified by:
getJDBCTypeCodein classType
-
getJDBCClass
public java.lang.Class getJDBCClass()
- Specified by:
getJDBCClassin classType
-
getJDBCClassName
public java.lang.String getJDBCClassName()
Description copied from class:TypeReturns the JDBC class name of type, if it exists, otherwise the HSQLDB class name.- Specified by:
getJDBCClassNamein classType
-
getJDBCScale
public int getJDBCScale()
- Overrides:
getJDBCScalein classType
-
getJDBCPrecision
public int getJDBCPrecision()
- Overrides:
getJDBCPrecisionin classType
-
getSQLGenericTypeCode
public int getSQLGenericTypeCode()
Description copied from class:TypeReturns the generic SQL CLI type number of type, if it exists, otherwise the HSQLDB type. The generic type is returned for DATETIME and INTERVAL types.- Overrides:
getSQLGenericTypeCodein classType
-
getNameString
public java.lang.String getNameString()
Description copied from class:TypeReturns the name of the type- Specified by:
getNameStringin classType
-
getFullNameString
public java.lang.String getFullNameString()
Description copied from class:TypeReturns the name of the type- Overrides:
getFullNameStringin classType
-
getDefinition
public java.lang.String getDefinition()
Description copied from class:TypeReturns the full definition of the type, including parameters- Specified by:
getDefinitionin classType
-
compare
public int compare(Session session, java.lang.Object a, java.lang.Object b)
-
convertToTypeLimits
public java.lang.Object convertToTypeLimits(SessionInterface session, java.lang.Object a)
- Specified by:
convertToTypeLimitsin classType
-
convertToType
public java.lang.Object convertToType(SessionInterface session, java.lang.Object a, Type otherType)
Description copied from class:TypeSame as castToType except for CHARACTER values. Perform string truncation of trailing spaces only. For other long strings, it raises an exception.- Specified by:
convertToTypein classType
-
convertJavaToSQL
public java.lang.Object convertJavaToSQL(SessionInterface session, java.lang.Object a)
- Overrides:
convertJavaToSQLin classType
-
convertSQLToJava
public java.lang.Object convertSQLToJava(SessionInterface session, java.lang.Object a)
- Overrides:
convertSQLToJavain classType
-
convertToDefaultType
public java.lang.Object convertToDefaultType(SessionInterface sessionInterface, java.lang.Object o)
Description copied from class:TypeConverts the object to the given type without limit checks. Used for JDBC writes.- Specified by:
convertToDefaultTypein classType
-
convertToString
public java.lang.String convertToString(java.lang.Object a)
- Specified by:
convertToStringin classType
-
convertToSQLString
public java.lang.String convertToSQLString(java.lang.Object a)
- Specified by:
convertToSQLStringin classType
-
canConvertFrom
public boolean canConvertFrom(Type otherType)
- Specified by:
canConvertFromin classType
-
canMoveFrom
public int canMoveFrom(Type otherType)
Description copied from class:TypeCan convert without changing the object- Overrides:
canMoveFromin classType- Returns:
- 0 always, 1 range check required, -1 never
-
canBeAssignedFrom
public boolean canBeAssignedFrom(Type otherType)
- Overrides:
canBeAssignedFromin classType
-
collectionBaseType
public Type collectionBaseType()
- Overrides:
collectionBaseTypein classType
-
arrayLimitCardinality
public int arrayLimitCardinality()
- Overrides:
arrayLimitCardinalityin classType
-
isArrayType
public boolean isArrayType()
- Overrides:
isArrayTypein classType
-
getAggregateType
public Type getAggregateType(Type other)
Description copied from class:TypeCommon type used in comparison opertions. other must be comparable with this.- Specified by:
getAggregateTypein classType
-
getCombinedType
public Type getCombinedType(Session session, Type other, int operation)
Description copied from class:TypeResult type of combining values of two types in different opertions. other type is not allways comparable with this, but a operation should be valid without any explicit CAST- Specified by:
getCombinedTypein classType
-
cardinality
public int cardinality(Session session, java.lang.Object a)
- Overrides:
cardinalityin classType
-
concat
public java.lang.Object concat(Session session, java.lang.Object a, java.lang.Object b)
-
hashCode
public int hashCode(java.lang.Object a)
-
sort
public void sort(Session session, java.lang.Object a, SortAndSlice sort)
-
deDuplicate
public int deDuplicate(Session session, java.lang.Object a, SortAndSlice sort)
-
-
DataMelt 3.0 © DataMelt by jWork.ORG