public final class TableDefinition
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
TableDefinition.Column
A single column.
|
Constructor and Description |
---|
TableDefinition(TableName tableName)
Creates a new, empty
TableDefinition of permanent persistence. |
TableDefinition(TableName tableName,
java.util.List<TableDefinition.Column> columns)
Creates a new
TableDefinition of permanent persistence with the given columns. |
TableDefinition(TableName tableName,
java.util.List<TableDefinition.Column> columns,
Persistence persistence)
Creates a new
TableDefinition with the given columns and persistence. |
TableDefinition(TableName tableName,
Persistence persistence)
Creates a new, empty
TableDefinition with the given persistence. |
Modifier and Type | Method and Description |
---|---|
TableDefinition |
addColumn(java.lang.String columnName,
SqlType type)
Adds a column to the table definition.
|
TableDefinition |
addColumn(java.lang.String columnName,
SqlType type,
Nullability nullability)
Adds a column to the table definition.
|
TableDefinition |
addColumn(java.lang.String columnName,
SqlType type,
java.lang.String collation)
Adds a column to the table definition.
|
TableDefinition |
addColumn(java.lang.String columnName,
SqlType type,
java.lang.String collation,
Nullability nullability)
Adds a column to the table definition.
|
TableDefinition |
addColumn(TableDefinition.Column column)
Adds a column to the table definition.
|
TableDefinition.Column |
getColumn(int position)
Returns a column by position.
|
java.util.Optional<TableDefinition.Column> |
getColumnByName(Name columnName)
Retrieves the column named "columnName", if it exists.
|
java.util.Optional<TableDefinition.Column> |
getColumnByName(java.lang.String columnName)
Retrieves the column named "columnName", if it exists.
|
int |
getColumnCount()
Returns the number of columns.
|
java.util.OptionalInt |
getColumnPositionByName(Name columnName)
Retrieves the column position of a column named "columnName", if it exists.
|
java.util.OptionalInt |
getColumnPositionByName(java.lang.String columnName)
Retrieves the column position of a column named "columnName", if it exists.
|
java.util.List<TableDefinition.Column> |
getColumns()
Returns all columns.
|
Persistence |
getPersistence()
Returns the persistence of the table.
|
TableName |
getTableName()
Returns the name of the table.
|
TableDefinition |
setPersistence(Persistence persistence)
Sets the table persistence.
|
TableDefinition |
setTableName(TableName tableName)
Sets the table name.
|
public TableDefinition(TableName tableName, java.util.List<TableDefinition.Column> columns, Persistence persistence)
TableDefinition
with the given columns and persistence.tableName
- The table name.columns
- The columns.persistence
- The persistence.public TableDefinition(TableName tableName, java.util.List<TableDefinition.Column> columns)
TableDefinition
of permanent persistence with the given columns.tableName
- The table name.columns
- The columns.public TableDefinition(TableName tableName, Persistence persistence)
TableDefinition
with the given persistence.tableName
- The table name.persistence
- The persistence.public TableDefinition(TableName tableName)
TableDefinition
of permanent persistence.tableName
- The table name.public java.util.List<TableDefinition.Column> getColumns()
public TableDefinition.Column getColumn(int position)
position
- The position starting at 0.public java.util.Optional<TableDefinition.Column> getColumnByName(java.lang.String columnName)
columnName
- The name of the column to retrieve.public java.util.Optional<TableDefinition.Column> getColumnByName(Name columnName)
columnName
- The name of the column to retrieve.public java.util.OptionalInt getColumnPositionByName(java.lang.String columnName)
columnName
- The name of the column to retrieve.public java.util.OptionalInt getColumnPositionByName(Name columnName)
columnName
- The name of the column to retrieve.public int getColumnCount()
public TableName getTableName()
public TableDefinition setTableName(TableName tableName)
tableName
- The new table name.public Persistence getPersistence()
public TableDefinition setPersistence(Persistence persistence)
persistence
- The new table persistence.public TableDefinition addColumn(TableDefinition.Column column)
column
- The column to add.public TableDefinition addColumn(java.lang.String columnName, SqlType type, java.lang.String collation, Nullability nullability)
columnName
- Column name.type
- SQL type.collation
- Collation (used for sorting and equality checks).nullability
- Whether the column should allow null values.public TableDefinition addColumn(java.lang.String columnName, SqlType type, java.lang.String collation)
columnName
- Column name.type
- SQL type.collation
- Collation (used for sorting and equality checks).public TableDefinition addColumn(java.lang.String columnName, SqlType type, Nullability nullability)
columnName
- Column name.type
- SQL type.nullability
- Whether the column should allow null values.public TableDefinition addColumn(java.lang.String columnName, SqlType type)
columnName
- Column name.type
- SQL type.