@Evolving public interface Column
Table. It defines basic properties of a column,
 such as name and data type.
 Catalog implementation needs to implement it. They should consume it in APIs like TableCatalog.createTable(NameIdentifier, Column[], String, Map), and report it in Table.columns() a default value and a generation expression.
| Modifier and Type | Interface and Description | 
|---|---|
| static class  | Column.ColumnImplThe implementation of  Columnfor users to use API. | 
| Modifier and Type | Field and Description | 
|---|---|
| static Expression | DEFAULT_VALUE_NOT_SETA default value that indicates the default value is not set. | 
| static Expression | DEFAULT_VALUE_OF_CURRENT_TIMESTAMPA default value that indicates the default value will be set to the current timestamp. | 
| Modifier and Type | Method and Description | 
|---|---|
| boolean | autoIncrement() | 
| java.lang.String | comment() | 
| Type | dataType() | 
| Expression | defaultValue() | 
| java.lang.String | name() | 
| boolean | nullable() | 
| static Column.ColumnImpl | of(java.lang.String name,
  Type dataType)Create a  Columninstance. | 
| static Column.ColumnImpl | of(java.lang.String name,
  Type dataType,
  java.lang.String comment)Create a  Columninstance. | 
| static Column.ColumnImpl | of(java.lang.String name,
  Type dataType,
  java.lang.String comment,
  boolean nullable,
  boolean autoIncrement,
  Expression defaultValue)Create a  Columninstance. | 
| static Column.ColumnImpl | of(java.lang.String name,
  Type dataType,
  java.lang.String comment,
  Expression defaultValue)Create a  Columninstance. | 
| default SupportsTags | supportsTags() | 
static final Expression DEFAULT_VALUE_NOT_SET
defaultValue().static final Expression DEFAULT_VALUE_OF_CURRENT_TIMESTAMP
defaultValue().java.lang.String name()
Type dataType()
java.lang.String comment()
boolean nullable()
boolean autoIncrement()
Expression defaultValue()
DEFAULT_VALUE_NOT_SET if not specifieddefault SupportsTags supportsTags()
SupportsTags if the column supports tag operations.java.lang.UnsupportedOperationException - if the column does not support tag operations.static Column.ColumnImpl of(java.lang.String name, Type dataType, java.lang.String comment, Expression defaultValue)
Column instance.name - The name of the column.dataType - The data type of the column.comment - The comment of the column.defaultValue - The default value of the column. DEFAULT_VALUE_NOT_SET if
     null.Column instance.static Column.ColumnImpl of(java.lang.String name, Type dataType, java.lang.String comment)
Column instance.name - The name of the column.dataType - The data type of the column.comment - The comment of the column.Column instance.static Column.ColumnImpl of(java.lang.String name, Type dataType)
Column instance.name - The name of the column.dataType - The data type of the column.Column instance.static Column.ColumnImpl of(java.lang.String name, Type dataType, java.lang.String comment, boolean nullable, boolean autoIncrement, Expression defaultValue)
Column instance.name - The name of the column.dataType - The data type of the column.comment - The comment of the column.nullable - True if the column may produce null values.autoIncrement - True if the column is an auto-increment column.defaultValue - The default value of the column. DEFAULT_VALUE_NOT_SET if
     null.Column instance.