@ParametersAreNonnullByDefault public class DataTypeSchemaConversions extends Object implements SchemaConversions<org.apache.flink.table.types.DataType>
SchemaConversions
that can convert to Flink Table API DataType.
Used by JsonSchemaFlinkConverter.
If you modify this class, please also augment TypeInformationSchemaConversions accordingly.
To handle proper conversion between Table API and DataStream,
Flink needs the types consistently converted to the same underlying representations.SchemaConversions.RowField<T>| Constructor and Description |
|---|
DataTypeSchemaConversions() |
| Modifier and Type | Method and Description |
|---|---|
protected org.apache.flink.table.api.DataTypes.Field |
buildFieldDataType(String name,
org.apache.flink.table.types.DataType dataType,
String description)
Helper for constructing a DataTypes.Field with name,
DataType, and optional description.
|
org.apache.flink.table.types.DataType |
typeArray(org.apache.flink.table.types.DataType elementType,
boolean elementsAreNullable)
elementsAreNullable is ignored; all Flink Table API elements are nullable. |
org.apache.flink.table.types.DataType |
typeBoolean() |
org.apache.flink.table.types.DataType |
typeDecimal() |
org.apache.flink.table.types.DataType |
typeInteger()
Note that the default conversion of LogicalType BigIntType is Long,
which is NOT the same as Flink Types.BIG_INT (in the DataStream API).
|
org.apache.flink.table.types.DataType |
typeMap(org.apache.flink.table.types.DataType keyType,
org.apache.flink.table.types.DataType valueType,
boolean valuesAreNullable)
valuesAreNullable is ignored; all Flink Table API elements are nullable. |
org.apache.flink.table.types.DataType |
typeNull() |
org.apache.flink.table.types.DataType |
typeRow(List<SchemaConversions.RowField<org.apache.flink.table.types.DataType>> rowFields)
If a RowFields description is not null,
it will be used as the
DataTypes.Field's description. |
org.apache.flink.table.types.DataType |
typeString() |
org.apache.flink.table.types.DataType |
typeTimestamp() |
public org.apache.flink.table.types.DataType typeNull()
typeNull in interface SchemaConversions<org.apache.flink.table.types.DataType>DataTypes.NULL()public org.apache.flink.table.types.DataType typeBoolean()
typeBoolean in interface SchemaConversions<org.apache.flink.table.types.DataType>DataTypes.BOOLEAN()public org.apache.flink.table.types.DataType typeString()
typeString in interface SchemaConversions<org.apache.flink.table.types.DataType>DataTypes.STRING()public org.apache.flink.table.types.DataType typeDecimal()
typeDecimal in interface SchemaConversions<org.apache.flink.table.types.DataType>DataTypes.DOUBLE()public org.apache.flink.table.types.DataType typeInteger()
typeInteger in interface SchemaConversions<org.apache.flink.table.types.DataType>DataTypes.BIGINT()public org.apache.flink.table.types.DataType typeTimestamp()
typeTimestamp in interface SchemaConversions<org.apache.flink.table.types.DataType>DataTypes.TIMESTAMP_LTZ(int) with precision 3public org.apache.flink.table.types.DataType typeArray(org.apache.flink.table.types.DataType elementType,
boolean elementsAreNullable)
elementsAreNullable is ignored; all Flink Table API elements are nullable.typeArray in interface SchemaConversions<org.apache.flink.table.types.DataType>DataTypes.ARRAY(org.apache.flink.table.types.DataType)public org.apache.flink.table.types.DataType typeMap(org.apache.flink.table.types.DataType keyType,
org.apache.flink.table.types.DataType valueType,
boolean valuesAreNullable)
valuesAreNullable is ignored; all Flink Table API elements are nullable.typeMap in interface SchemaConversions<org.apache.flink.table.types.DataType>DataTypes.MAP(org.apache.flink.table.types.DataType, org.apache.flink.table.types.DataType)public org.apache.flink.table.types.DataType typeRow(List<SchemaConversions.RowField<org.apache.flink.table.types.DataType>> rowFields)
DataTypes.Field's description.
RowField nullalble-ness is not relevant;
all Flink Table API fields are nullable.typeRow in interface SchemaConversions<org.apache.flink.table.types.DataType>DataTypes.ROW(org.apache.flink.table.api.DataTypes.Field...)Copyright © 2025. All rights reserved.