-
- Type Parameters:
T
- The Java type associated with this SQL data type
- All Superinterfaces:
Named
,QueryPart
,Serializable
- All Known Implementing Classes:
BuiltInDataType
,DefaultDataType
public interface DataType<T> extends Named
A common interface to all dialect-specific data types.jOOQ provides built in data types through
SQLDataType
. Users can define their own data types programmatically by callingasConvertedDataType(Converter)
orasConvertedDataType(Binding)
, for example. Custom data types can also be defined on generated code using the<forcedType/>
configuration, see the manual for more details- Author:
- Lukas Eder
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description default <U> @NotNull DataType<U>
asConvertedDataType(Class<U> toType, Function<? super T,? extends U> from, Function<? super U,? extends T> to)
Convenience method for converting this type usingConverter.of(Class, Class, Function, Function)
.<U> @NotNull DataType<U>
asConvertedDataType(Binding<? super T,U> binding)
Retrieve the data type for a given binding.<U> @NotNull DataType<U>
asConvertedDataType(Converter<? super T,U> converter)
Retrieve the data type for a given converter.default <U> @NotNull DataType<U>
asConvertedDataTypeFrom(Class<U> toType, Function<? super T,? extends U> from)
Convenience method for converting this type to a read-only type usingConverter.from(Class, Class, Function)
.default <U> @NotNull DataType<U>
asConvertedDataTypeFrom(Function<? super T,? extends U> from)
Convenience method for converting this type to a read-only type usingConverter.from(Class, Class, Function)
.default <U> @NotNull DataType<U>
asConvertedDataTypeTo(Class<U> toType, Function<? super U,? extends T> to)
Convenience method for converting this type to a write-only type usingConverter.to(Class, Class, Function)
.default <U> @NotNull DataType<U>
asConvertedDataTypeTo(Function<? super U,? extends T> to)
Convenience method for converting this type to a write-only type usingConverter.to(Class, Class, Function)
.<E extends EnumType>
@NotNull DataType<E>asEnumDataType(Class<E> enumDataType)
Retrieve the data type for a given enum data type.@Nullable CharacterSet
characterSet()
Get the character set of this data type, ornull
if there is no character set, or if the default character set applies.@NotNull DataType<T>
characterSet(CharacterSet characterSet)
Return a new data type like this, with a new character set.@Nullable Collation
collation()
Get the collation of this data type, ornull
if there is no collation, or if the default collation applies.@NotNull DataType<T>
collation(Collation collation)
Return a new data type like this, with a new collation.boolean
computed()
Whether this column is computed.T
convert(Object object)
Convert an arbitrary object into<T>
.T @NotNull []
convert(Object... objects)
Convert an arbitrary set of objects into<T>
.@NotNull List<T>
convert(Collection<?> objects)
Convert an arbitrary set of objects into<T>
.@Nullable Field<T>
default_()
The expression to be applied as theDEFAULT
value for this data type.@NotNull DataType<T>
default_(Field<T> defaultValue)
Specify an expression to be applied as theDEFAULT
value for this data type.@NotNull DataType<T>
default_(T defaultValue)
Specify an expression to be applied as theDEFAULT
value for this data type.boolean
defaulted()
Get the defaultability of this data type.@NotNull DataType<T>
defaulted(boolean defaulted)
Deprecated, for removal: This API element is subject to removal in a future version.- [#3852] - 3.8.0 - UsedefaultValue(Field)
instead.@Nullable Field<T>
defaultValue()
The expression to be applied as theDEFAULT
value for this data type.@NotNull DataType<T>
defaultValue(Field<T> defaultValue)
Specify an expression to be applied as theDEFAULT
value for this data type.@NotNull DataType<T>
defaultValue(T defaultValue)
Specify an expression to be applied as theDEFAULT
value for this data type.@Nullable Field<T>
generatedAlwaysAs()
Get the computed column expression of this data type, if any.@NotNull DataType<T>
generatedAlwaysAs(Field<T> generatedAlwaysAsValue)
Set the computed column expression of this data type.@NotNull DataType<T>
generatedAlwaysAs(T generatedAlwaysAsValue)
Set the computed column expression of this data type.@NotNull QOM.GenerationOption
generationOption()
Get theQOM.GenerationOption
of the computed column expression of this data type, if any.@NotNull DataType<T>
generationOption(QOM.GenerationOption generationOption)
Set thegenerationOption()
of the computed column expression.@Nullable DataType<?>
getArrayComponentDataType()
Retrieve the Java component data type if this is an ARRAY type, ornull
, otherwise.@Nullable Class<?>
getArrayComponentType()
Retrieve the Java component type if this is an ARRAY type, ornull
, otherwise.@NotNull DataType<T[]>
getArrayDataType()
Retrieve the data type for an ARRAY of this data type.@NotNull Class<T[]>
getArrayType()
Retrieve the Java type associated with ARRAYs of this data type.@NotNull Binding<?,T>
getBinding()
Get the data type binding associated with this data type.@NotNull String
getCastTypeName()
Retrieve the dialect-specific type name associated with this data type used for casting.@NotNull String
getCastTypeName(Configuration configuration)
Retrieve the dialect-specific type name associated with this data type used for casting.@NotNull Converter<?,T>
getConverter()
Get the converter associated with this data type.@NotNull DataType<T>
getDataType(Configuration configuration)
The dialect-specific data type representing this data type.@Nullable SQLDialect
getDialect()
Retrieve the underlyingSQLDialect
.@Nullable Domain<T>
getDomain()
Get the defining DOMAIN type orNULL
if there is no such type.@Nullable Class<? extends Record>
getRecordType()
Get the nested record's record type definition, if this is aisRecord()
, or aisMultiset()
, orNULL
otherwise.@Nullable Row
getRow()
Get the nested record'sRow
definition, if this is aisRecord()
, or aisMultiset()
, orNULL
otherwise.@Nullable DataType<T>
getSQLDataType()
Get the standard SQL data type of this (dialect-specific) data type if available.int
getSQLType()
Get JDBCTypes
value.int
getSQLType(Configuration configuration)
Get the dialect-specific JDBCTypes
value.@NotNull Class<T>
getType()
Retrieve the Java type associated with this data type.@NotNull String
getTypeName()
Retrieve the dialect-specific type name associated with this data type.@NotNull String
getTypeName(Configuration configuration)
Retrieve the dialect-specific type name associated with this data type.boolean
hasLength()
Whether this data type has a length.boolean
hasPrecision()
Whether this data type has a precision.boolean
hasScale()
Whether this data type has a scale.boolean
identity()
Get the identity flag of this data type.@NotNull DataType<T>
identity(boolean identity)
Return a new data type like this, with a new identity flag.boolean
isArray()
Whether this data type is an array type.boolean
isAssociativeArray()
Whether this data type is an array type.boolean
isBinary()
Whether this data type is any binary type.boolean
isDate()
Whether this data type is any date type.boolean
isDateTime()
Whether this data type is any date or time type.boolean
isEmbeddable()
Whether this data type is an embeddable type.boolean
isEnum()
Whether this data type is an enum type.boolean
isInteger()
Whether this data type is any integer data type.boolean
isInterval()
Whether this data type is any interval type.boolean
isJSON()
Whether this data type is a JSON type.boolean
isLob()
Whether this data type is best deserialised as aLOB
.boolean
isMultiset()
Whether this data type is a nested collection type.boolean
isNString()
Whether this data type is any national character data type.boolean
isNumeric()
Whether this data type is any numeric data type.boolean
isRecord()
Whether this data type is a nested record type.boolean
isSpatial()
Whether this data type is a spatial type.boolean
isString()
Whether this data type is any character data type.boolean
isTemporal()
Whether this data type is any date or time type.boolean
isTime()
Whether this data type is any time type.boolean
isTimestamp()
Whether this data type is any timestamp type.boolean
isUDT()
Whether this data type is a UDT type.boolean
isXML()
Whether this data type is an XML type.int
length()
Get the length of this data type.@NotNull DataType<T>
length(int length)
Return a new data type like this, with a new length value.boolean
lengthDefined()
Whether the precision returned bylength()
is defined.@NotNull DataType<T>
notNull()
Synonym fornullable(boolean)
, passingfalse
as an argument.@NotNull DataType<T>
null_()
Synonym fornullable(boolean)
, passingtrue
as an argument.@NotNull Nullability
nullability()
Get the nullability of this data type.@NotNull DataType<T>
nullability(Nullability nullability)
Return a new data type like this, with a new nullability.boolean
nullable()
Get the nullability of this data type.@NotNull DataType<T>
nullable(boolean nullable)
Return a new data type like this, with a new nullability.int
precision()
Get the precision of this data type.@NotNull DataType<T>
precision(int precision)
Return a new data type like this, with a new precision value.@NotNull DataType<T>
precision(int precision, int scale)
Return a new data type like this, with a new precision and scale value.boolean
precisionDefined()
Whether the precision returned byprecision()
is defined.boolean
readonly()
Get the readonly attribute of this data type.@NotNull DataType<T>
readonly(boolean readonly)
Return a new data type like this, with a new readonly attribute.int
scale()
Get the scale of this data type.@NotNull DataType<T>
scale(int scale)
Return a new data type like this, with a new scale value.boolean
scaleDefined()
Whether the precision returned byscale()
is defined.@NotNull DataType<T>
stored()
Set thegenerationOption()
of the computed column expression toQOM.GenerationOption.STORED
.@NotNull DataType<T>
virtual()
Set thegenerationOption()
of the computed column expression toQOM.GenerationOption.VIRTUAL
.-
Methods inherited from interface org.jooq.Named
$name, getComment, getCommentPart, getName, getQualifiedName, getUnqualifiedName
-
-
-
-
Method Detail
-
getSQLDataType
@Nullable @Nullable DataType<T> getSQLDataType()
Get the standard SQL data type of this (dialect-specific) data type if available.
-
getDataType
@NotNull @NotNull DataType<T> getDataType(Configuration configuration)
The dialect-specific data type representing this data type.
-
getSQLType
int getSQLType()
Get JDBCTypes
value.
-
getSQLType
int getSQLType(Configuration configuration)
Get the dialect-specific JDBCTypes
value.
-
getBinding
@NotNull @NotNull Binding<?,T> getBinding()
Get the data type binding associated with this data type.
-
getConverter
@NotNull @NotNull Converter<?,T> getConverter()
Get the converter associated with this data type.
-
getDomain
@Nullable @Nullable Domain<T> getDomain()
Get the defining DOMAIN type orNULL
if there is no such type.
-
getRow
@Nullable @Nullable Row getRow()
Get the nested record'sRow
definition, if this is aisRecord()
, or aisMultiset()
, orNULL
otherwise.
-
getRecordType
@Nullable @Nullable Class<? extends Record> getRecordType()
Get the nested record's record type definition, if this is aisRecord()
, or aisMultiset()
, orNULL
otherwise.
-
getArrayType
@NotNull @NotNull Class<T[]> getArrayType()
Retrieve the Java type associated with ARRAYs of this data type.
-
getArrayDataType
@NotNull @NotNull DataType<T[]> getArrayDataType()
Retrieve the data type for an ARRAY of this data type.
-
getArrayComponentType
@Nullable @Nullable Class<?> getArrayComponentType()
Retrieve the Java component type if this is an ARRAY type, ornull
, otherwise.
-
getArrayComponentDataType
@Nullable @Nullable DataType<?> getArrayComponentDataType()
Retrieve the Java component data type if this is an ARRAY type, ornull
, otherwise.
-
asEnumDataType
@NotNull <E extends EnumType> @NotNull DataType<E> asEnumDataType(Class<E> enumDataType)
Retrieve the data type for a given enum data type.
-
asConvertedDataType
@NotNull <U> @NotNull DataType<U> asConvertedDataType(Converter<? super T,U> converter)
Retrieve the data type for a given converter.
-
asConvertedDataType
@NotNull default <U> @NotNull DataType<U> asConvertedDataType(Class<U> toType, Function<? super T,? extends U> from, Function<? super U,? extends T> to)
Convenience method for converting this type usingConverter.of(Class, Class, Function, Function)
.
-
asConvertedDataTypeFrom
@NotNull default <U> @NotNull DataType<U> asConvertedDataTypeFrom(Class<U> toType, Function<? super T,? extends U> from)
Convenience method for converting this type to a read-only type usingConverter.from(Class, Class, Function)
.
-
asConvertedDataTypeFrom
@NotNull default <U> @NotNull DataType<U> asConvertedDataTypeFrom(Function<? super T,? extends U> from)
Convenience method for converting this type to a read-only type usingConverter.from(Class, Class, Function)
.EXPERIMENTAL. Unlike
asConvertedDataTypeFrom(Class, Function)
, this method attempts to work without an explicitClass
reference for the underlyingConverter.toType()
. There may be some edge cases where this doesn't work. Please report any bugs here: https://github.com/jOOQ/jOOQ/issues/new/choose
-
asConvertedDataTypeTo
@NotNull default <U> @NotNull DataType<U> asConvertedDataTypeTo(Class<U> toType, Function<? super U,? extends T> to)
Convenience method for converting this type to a write-only type usingConverter.to(Class, Class, Function)
.
-
asConvertedDataTypeTo
@NotNull default <U> @NotNull DataType<U> asConvertedDataTypeTo(Function<? super U,? extends T> to)
Convenience method for converting this type to a write-only type usingConverter.to(Class, Class, Function)
.EXPERIMENTAL. Unlike
asConvertedDataTypeTo(Class, Function)
, this method attempts to work without an explicitClass
reference for the underlyingConverter.toType()
. There may be some edge cases where this doesn't work. Please report any bugs here: https://github.com/jOOQ/jOOQ/issues/new/choose
-
asConvertedDataType
@NotNull <U> @NotNull DataType<U> asConvertedDataType(Binding<? super T,U> binding)
Retrieve the data type for a given binding.
-
getTypeName
@NotNull @NotNull String getTypeName()
Retrieve the dialect-specific type name associated with this data type.
-
getTypeName
@NotNull @NotNull String getTypeName(Configuration configuration)
Retrieve the dialect-specific type name associated with this data type.
-
getCastTypeName
@NotNull @NotNull String getCastTypeName()
Retrieve the dialect-specific type name associated with this data type used for casting.This is useful for some dialects that have specialised type names for cast expressions. Other dialects require type-length binding when casting, (e.g. VARCHAR(32767))
-
getCastTypeName
@NotNull @NotNull String getCastTypeName(Configuration configuration)
Retrieve the dialect-specific type name associated with this data type used for casting.This is useful for some dialects that have specialised type names for cast expressions. Other dialects require type-length binding when casting, (e.g. VARCHAR(32767))
-
getDialect
@Nullable @Nullable SQLDialect getDialect()
Retrieve the underlyingSQLDialect
.
-
convert
T convert(Object object)
Convert an arbitrary object into<T>
.See
Convert#convert(Object, Class)
for details about conversion rules. Notice this does not pass through anyConfiguration.converterProvider()
.- Parameters:
object
- The object to be converted- Returns:
- The converted object
- Throws:
DataTypeException
- If conversion fails.
-
convert
T @NotNull [] convert(Object... objects)
Convert an arbitrary set of objects into<T>
.See
Convert#convert(Object, Class)
for details about conversion rules. Notice this does not pass through anyConfiguration.converterProvider()
.- Parameters:
objects
- The objects to be converted- Returns:
- The converted objects
- Throws:
DataTypeException
- If conversion fails.
-
convert
@NotNull @NotNull List<T> convert(Collection<?> objects)
Convert an arbitrary set of objects into<T>
.See
Convert#convert(Object, Class)
for details about conversion rules. Notice this does not pass through anyConfiguration.converterProvider()
.- Parameters:
objects
- The objects to be converted- Returns:
- The converted objects
- Throws:
DataTypeException
- If conversion fails.
-
nullability
@NotNull @Support @NotNull DataType<T> nullability(Nullability nullability)
Return a new data type like this, with a new nullability.[#5709] A
nullable
column cannot have anidentity()
.- Parameters:
nullability
- The new nullability- Returns:
- The new data type
-
nullability
@NotNull @NotNull Nullability nullability()
Get the nullability of this data type.- Returns:
- The nullability
-
nullable
@NotNull @Support @NotNull DataType<T> nullable(boolean nullable)
Return a new data type like this, with a new nullability.This is the same as calling
nullability(Nullability)
with any ofNullability.NULL
orNullability.NOT_NULL
as an argument.[#5709] A
nullable
column cannot have anidentity()
.- Parameters:
nullable
- The new nullability- Returns:
- The new data type
-
nullable
boolean nullable()
Get the nullability of this data type.This returns
true
by default, i.e. ifnullability()
isNullability.DEFAULT
.- Returns:
- The nullability
-
readonly
@NotNull @Support @NotNull DataType<T> readonly(boolean readonly)
Return a new data type like this, with a new readonly attribute.This feature is implemented in commercial distributions only.
- Parameters:
readonly
- The new readonly attribute value.- Returns:
- The new data type
-
readonly
boolean readonly()
Get the readonly attribute of this data type.This feature is implemented in commercial distributions only.
-
computed
boolean computed()
Whether this column is computed.This feature is implemented in commercial distributions only.
-
generatedAlwaysAs
@NotNull @Support({DERBY,FIREBIRD,H2,HSQLDB,MARIADB,MYSQL,POSTGRES}) @NotNull DataType<T> generatedAlwaysAs(T generatedAlwaysAsValue)
Set the computed column expression of this data type.This implicitly sets
readonly()
totrue
.This feature is implemented in commercial distributions only.
-
generatedAlwaysAs
@NotNull @Support({DERBY,FIREBIRD,H2,HSQLDB,MARIADB,MYSQL,POSTGRES}) @NotNull DataType<T> generatedAlwaysAs(Field<T> generatedAlwaysAsValue)
Set the computed column expression of this data type.This implicitly sets
readonly()
totrue
.This feature is implemented in commercial distributions only.
-
generatedAlwaysAs
@Nullable @Nullable Field<T> generatedAlwaysAs()
Get the computed column expression of this data type, if any.This feature is implemented in commercial distributions only.
-
stored
@NotNull @Support({DERBY,FIREBIRD,H2,HSQLDB,MARIADB,MYSQL,POSTGRES}) @NotNull DataType<T> stored()
Set thegenerationOption()
of the computed column expression toQOM.GenerationOption.STORED
.If not supported by the dialect, this will be ignored.
This feature is implemented in commercial distributions only.
-
virtual
@NotNull @Support({DERBY,FIREBIRD,H2,HSQLDB,MARIADB,MYSQL,POSTGRES}) @NotNull DataType<T> virtual()
Set thegenerationOption()
of the computed column expression toQOM.GenerationOption.VIRTUAL
.If not supported by the dialect, this will be ignored.
This feature is implemented in commercial distributions only.
-
generationOption
@NotNull @Support({DERBY,FIREBIRD,H2,HSQLDB,MARIADB,MYSQL,POSTGRES}) @NotNull DataType<T> generationOption(QOM.GenerationOption generationOption)
Set thegenerationOption()
of the computed column expression.If not supported by the dialect, this will be ignored.
This feature is implemented in commercial distributions only.
-
generationOption
@NotNull @Support @NotNull QOM.GenerationOption generationOption()
Get theQOM.GenerationOption
of the computed column expression of this data type, if any.This feature is implemented in commercial distributions only.
-
null_
@NotNull @Support @NotNull DataType<T> null_()
Synonym fornullable(boolean)
, passingtrue
as an argument.
-
notNull
@NotNull @Support @NotNull DataType<T> notNull()
Synonym fornullable(boolean)
, passingfalse
as an argument.
-
collation
@NotNull @Support({HSQLDB,MARIADB,MYSQL,POSTGRES,SQLITE,YUGABYTEDB}) @NotNull DataType<T> collation(Collation collation)
Return a new data type like this, with a new collation.
-
collation
@Nullable @Nullable Collation collation()
Get the collation of this data type, ornull
if there is no collation, or if the default collation applies.
-
characterSet
@NotNull @Support({MARIADB,MYSQL}) @NotNull DataType<T> characterSet(CharacterSet characterSet)
Return a new data type like this, with a new character set.
-
characterSet
@Nullable @Nullable CharacterSet characterSet()
Get the character set of this data type, ornull
if there is no character set, or if the default character set applies.
-
identity
@NotNull @Support({DERBY,FIREBIRD,H2,HSQLDB,MARIADB,MYSQL,POSTGRES,SQLITE,YUGABYTEDB}) @NotNull DataType<T> identity(boolean identity)
Return a new data type like this, with a new identity flag.[#5709] The IDENTITY flag imposes a NOT NULL constraint, and removes all DEFAULT values.
- Parameters:
identity
- The new identity flag- Returns:
- The new data type
-
identity
boolean identity()
Get the identity flag of this data type.- Returns:
- The identity flag.
-
defaultValue
@NotNull @Support @NotNull DataType<T> defaultValue(T defaultValue)
Specify an expression to be applied as theDEFAULT
value for this data type.[#5709] A
defaulted
column cannot have anidentity()
.This is an alias for
default_(Object)
.- See Also:
defaultValue(Field)
-
defaultValue
@NotNull @Support @NotNull DataType<T> defaultValue(Field<T> defaultValue)
Specify an expression to be applied as theDEFAULT
value for this data type.A default value of a data type applies to DDL statements, such as
CREATE TABLE
ALTER TABLE
The distinct types of possible
DEFAULT
expressions is defined by the underlying database. Please refer to your database manual to learn what expressions are possible.This is an alias for
default_(Field)
.
-
defaultValue
@Nullable @Nullable Field<T> defaultValue()
The expression to be applied as theDEFAULT
value for this data type.This is an alias for
default_()
.- Returns:
- The default value if present, or
null
if no default value is specified for this data type. - See Also:
defaultValue(Field)
-
default_
@NotNull @Support @NotNull DataType<T> default_(T defaultValue)
Specify an expression to be applied as theDEFAULT
value for this data type.[#5709] A
defaulted
column cannot have anidentity()
.- See Also:
defaultValue(Field)
-
default_
@NotNull @Support @NotNull DataType<T> default_(Field<T> defaultValue)
Specify an expression to be applied as theDEFAULT
value for this data type.A default value of a data type applies to DDL statements, such as
CREATE TABLE
ALTER TABLE
The distinct types of possible
DEFAULT
expressions is defined by the underlying database. Please refer to your database manual to learn what expressions are possible.
-
default_
@Nullable @Nullable Field<T> default_()
The expression to be applied as theDEFAULT
value for this data type.- Returns:
- The default value if present, or
null
if no default value is specified for this data type. - See Also:
defaultValue(Field)
-
defaulted
@NotNull @Deprecated(forRemoval=true, since="3.8") @NotNull DataType<T> defaulted(boolean defaulted)
Deprecated, for removal: This API element is subject to removal in a future version.- [#3852] - 3.8.0 - UsedefaultValue(Field)
instead.Return a new data type like this, with a new defaultability.- Parameters:
defaulted
- The new defaultability- Returns:
- The new data type
-
defaulted
boolean defaulted()
Get the defaultability of this data type.- Returns:
- The defaultability
-
precision
@NotNull @Support @NotNull DataType<T> precision(int precision)
Return a new data type like this, with a new precision value.This will have no effect if
hasPrecision()
isfalse
This is the same as calling
precision(int, int)
withscale == 0
- Parameters:
precision
- The new precision value- Returns:
- The new data type
-
precision
@NotNull @Support @NotNull DataType<T> precision(int precision, int scale)
Return a new data type like this, with a new precision and scale value.This will have no effect if
hasPrecision()
isfalse
, or ifscale > 0
andhasScale()
isfalse
- Parameters:
precision
- The new precision valuescale
- The new scale value- Returns:
- The new data type
-
precision
int precision()
Get the precision of this data type.- Returns:
- The precision of this data type
-
hasPrecision
boolean hasPrecision()
Whether this data type has a precision.- Returns:
- Whether this data type has a precision
-
precisionDefined
boolean precisionDefined()
Whether the precision returned byprecision()
is defined.The default precision is
0
for all data types. If a data type does not have a precision (seehasPrecision()
), or if it was initialised without precision (e.g.SQLDataType.TIMESTAMP
), then the precision is not defined.
-
scale
@NotNull @Support @NotNull DataType<T> scale(int scale)
Return a new data type like this, with a new scale value.This will have no effect if
hasScale()
isfalse
- Parameters:
scale
- The new scale value- Returns:
- The new data type
-
scale
int scale()
Get the scale of this data type.- Returns:
- The scale of this data type
-
hasScale
boolean hasScale()
Whether this data type has a scale.- Returns:
- Whether this data type has a scale
-
scaleDefined
boolean scaleDefined()
Whether the precision returned byscale()
is defined.The default scale is
0
for all data types. If a data type does not have a scale (seehasScale()
), or if it was initialised without scale (e.g.SQLDataType.TIMESTAMP
), then the scale is not defined.
-
length
@NotNull @Support @NotNull DataType<T> length(int length)
Return a new data type like this, with a new length value.This will have no effect if
hasLength()
isfalse
- Parameters:
length
- The new length value- Returns:
- The new data type
-
length
int length()
Get the length of this data type.- Returns:
- The length of this data type
-
hasLength
boolean hasLength()
Whether this data type has a length.- Returns:
- Whether this data type has a length
-
lengthDefined
boolean lengthDefined()
Whether the precision returned bylength()
is defined.The default length is
0
for all data types. If a data type does not have a length (seehasLength()
), or if it was initialised without length (e.g.SQLDataType.TIMESTAMP
), then the length is not defined.
-
isNumeric
boolean isNumeric()
Whether this data type is any numeric data type.This applies to any of these types:
- See Also:
isNumeric()
-
isInteger
boolean isInteger()
Whether this data type is any integer data type.This applies to any of these types:
-
isString
boolean isString()
Whether this data type is any character data type.This applies to any of these types:
-
isNString
boolean isNString()
Whether this data type is any national character data type.This applies to any of these types:
-
isDateTime
boolean isDateTime()
Whether this data type is any date or time type.This applies to any of these types.
- See Also:
isDate()
-
isDate
boolean isDate()
Whether this data type is any date type.This applies to any of these types.
-
isTimestamp
boolean isTimestamp()
Whether this data type is any timestamp type.This applies to any of these types.
-
isTime
boolean isTime()
Whether this data type is any time type.This applies to any of these types.
-
isTemporal
boolean isTemporal()
Whether this data type is any date or time type.This applies to any of these types.
-
SQLDataType.DATE
-
SQLDataType.TIME
-
SQLDataType.TIMESTAMP
-
SQLDataType.LOCALDATE
-
SQLDataType.LOCALTIME
-
SQLDataType.LOCALDATETIME
-
SQLDataType.OFFSETTIME
-
SQLDataType.OFFSETDATETIME
-
YearToSecond
-
YearToMonth
-
DayToSecond
This is a combination of
isDateTime()
orisInterval()
-
-
isInterval
boolean isInterval()
Whether this data type is any interval type.This applies to any of these types.
-
isBinary
boolean isBinary()
Whether this data type is any binary type.This applies to any of these types.
-
isLob
boolean isLob()
Whether this data type is best deserialised as aLOB
.This applies to any of these types.
-
isArray
boolean isArray()
Whether this data type is an array type.
-
isAssociativeArray
boolean isAssociativeArray()
Whether this data type is an array type.
-
isEmbeddable
boolean isEmbeddable()
Whether this data type is an embeddable type.
-
isUDT
boolean isUDT()
Whether this data type is a UDT type.
-
isRecord
boolean isRecord()
Whether this data type is a nested record type.This is true for anonymous, structural nested record types constructed with
DSL.row(SelectField...)
or for nominal nested record types, such asisUDT()
orisEmbeddable()
.
-
isMultiset
boolean isMultiset()
Whether this data type is a nested collection type.This is true for anonymous, structural nested collection types constructed with
DSL.multiset(Select)
orDSL.multisetAgg(Field...)
.
-
isEnum
boolean isEnum()
Whether this data type is an enum type.
-
isJSON
boolean isJSON()
Whether this data type is a JSON type.
-
isXML
boolean isXML()
Whether this data type is an XML type.
-
isSpatial
boolean isSpatial()
Whether this data type is a spatial type.
-
-