Class CreateTableBuilder
java.lang.Object
org.eclipse.dirigible.database.sql.builders.AbstractSqlBuilder
org.eclipse.dirigible.database.sql.builders.AbstractCreateSqlBuilder
org.eclipse.dirigible.database.sql.builders.table.AbstractTableBuilder<CreateTableBuilder>
org.eclipse.dirigible.database.sql.builders.table.CreateTableBuilder
- All Implemented Interfaces:
ISqlBuilder,ISqlKeywords
- Direct Known Subclasses:
HanaCreateTableBuilder
public class CreateTableBuilder extends AbstractTableBuilder<CreateTableBuilder>
The Create Table Builder.
-
Field Summary
Fields inherited from interface org.eclipse.dirigible.database.sql.ISqlKeywords
ALTER, CLOSE, COMMA, EQUALS, FUNCTION_CURRENT_DATE, FUNCTION_CURRENT_TIME, FUNCTION_CURRENT_TIMESTAMP, KEYWORD_ADD, KEYWORD_ALTER, KEYWORD_AND, KEYWORD_AS, KEYWORD_ASC, KEYWORD_CHECK, KEYWORD_COLUMN, KEYWORD_CONSTRAINT, KEYWORD_CREATE, KEYWORD_DATABASE_DROP_RESTRICT, KEYWORD_DELETE, KEYWORD_DESC, KEYWORD_DISTINCT, KEYWORD_DROP, KEYWORD_FETCH, KEYWORD_FOR, KEYWORD_FOR_UPDATE, KEYWORD_FOREIGN, KEYWORD_FROM, KEYWORD_FULL, KEYWORD_GROUP_BY, KEYWORD_HAVING, KEYWORD_IDENTITY, KEYWORD_INDEX, KEYWORD_INNER, KEYWORD_INSERT, KEYWORD_INTO, KEYWORD_JOIN, KEYWORD_KEY, KEYWORD_LEFT, KEYWORD_LIMIT, KEYWORD_NEXT, KEYWORD_NEXT_VALUE_FOR, KEYWORD_NOT, KEYWORD_NULL, KEYWORD_OFFSET, KEYWORD_ON, KEYWORD_ONLY, KEYWORD_OR, KEYWORD_ORDER_BY, KEYWORD_OUTER, KEYWORD_PRIMARY, KEYWORD_PUBLIC, KEYWORD_REFERENCES, KEYWORD_RIGHT, KEYWORD_ROWS, KEYWORD_SELECT, KEYWORD_SEQUENCE, KEYWORD_SEQUENCE_CYCLE, KEYWORD_SEQUENCE_EMPTY_STRING_FOR_BOOLEAN_TYPES, KEYWORD_SEQUENCE_INCREMENT_BY, KEYWORD_SEQUENCE_MAXVALUE, KEYWORD_SEQUENCE_MINVALUE, KEYWORD_SEQUENCE_NO_MAXVALUE, KEYWORD_SEQUENCE_NO_MINVALUE, KEYWORD_SEQUENCE_RESET_BY, KEYWORD_SEQUENCE_RESTART_WITH, KEYWORD_SEQUENCE_START_WITH, KEYWORD_SET, KEYWORD_START, KEYWORD_SYNONYM, KEYWORD_TABLE, KEYWORD_UNION, KEYWORD_UNIQUE, KEYWORD_UPDATE, KEYWORD_VALUES, KEYWORD_VIEW, KEYWORD_WHERE, KEYWORD_WITH, METADATA_ALIAS, METADATA_CALC_VIEW, METADATA_GLOBAL_TEMPORARY, METADATA_LOCAL_TEMPORARY, METADATA_SYNONYM, METADATA_SYSTEM_TABLE, METADATA_TABLE, METADATA_TABLE_TYPES, METADATA_VIEW, OPEN, QUESTION, SPACE, STAR, TABLE, UNDERSCROE -
Constructor Summary
Constructors Constructor Description CreateTableBuilder(ISqlDialect dialect, String table)Instantiates a new creates the table builder. -
Method Summary
Modifier and Type Method Description CreateTableBuildercheck(String name, String expression)Check.CreateTableBuilderforeignKey(String name, String[] columns, String referencedTable, String[] referencedColumns)Foreign key.CreateTableBuilderforeignKey(String name, String columns, String referencedTable, String referencedColumns)Foreign key.Stringgenerate()Generate the result script.protected voidgenerateCheck(StringBuilder sql, CreateTableCheckBuilder check)Generate check.protected voidgenerateChecks(StringBuilder sql)Generate checks.protected voidgenerateForeignKey(StringBuilder sql, CreateTableForeignKeyBuilder foreignKey)Generate foreign key.protected voidgenerateForeignKeys(StringBuilder sql)Generate foreign keys.protected voidgeneratePrimaryKey(StringBuilder sql)Generate primary key.protected voidgenerateUniqueIndex(StringBuilder sql, CreateTableUniqueIndexBuilder uniqueIndex)Generate unique index.protected voidgenerateUniqueIndices(StringBuilder sql)Generate unique indices.CreateTableBuilderprimaryKey(String columns)Primary key.CreateTableBuilderprimaryKey(String[] columns)Primary key.CreateTableBuilderprimaryKey(String name, String columns)Primary key.CreateTableBuilderprimaryKey(String name, String[] columns)Primary key.CreateTableBuilderunique(String name, String columns)Unique.CreateTableBuilderunique(String name, String[] columns)Unique.Methods inherited from class org.eclipse.dirigible.database.sql.builders.table.AbstractTableBuilder
column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, column, columnBigint, columnBigint, columnBigint, columnBigint, columnBigint, columnBigint, columnBit, columnBit, columnBit, columnBit, columnBlob, columnBlob, columnBlob, columnBlob, columnBoolean, columnBoolean, columnBoolean, columnBoolean, columnBoolean, columnBoolean, columnChar, columnChar, columnChar, columnChar, columnChar, columnChar, columnDate, columnDate, columnDate, columnDate, columnDate, columnDate, columnDecimal, columnDecimal, columnDecimal, columnDecimal, columnDecimal, columnDecimal, columnDouble, columnDouble, columnDouble, columnDouble, columnDouble, columnDouble, columnFloat, columnFloat, columnFloat, columnFloat, columnFloat, columnFloat, columnInteger, columnInteger, columnInteger, columnInteger, columnInteger, columnInteger, columnNvarchar, columnNvarchar, columnNvarchar, columnNvarchar, columnNvarchar, columnNvarchar, columnNvarchar, columnReal, columnReal, columnReal, columnReal, columnReal, columnReal, columnSmallint, columnSmallint, columnSmallint, columnSmallint, columnSmallint, columnSmallint, columnTime, columnTime, columnTime, columnTime, columnTime, columnTime, columnTimestamp, columnTimestamp, columnTimestamp, columnTimestamp, columnTimestamp, columnTimestamp, columnTinyint, columnTinyint, columnTinyint, columnTinyint, columnTinyint, columnTinyint, columnVarchar, columnVarchar, columnVarchar, columnVarchar, columnVarchar, columnVarchar, columnVarchar, generateColumnNamesForDrop, generateColumns, generateTable, getColumns, getTable, splitValues, traverseColumnNamesForDrop, traverseColumns, traverseNamesMethods inherited from class org.eclipse.dirigible.database.sql.builders.AbstractCreateSqlBuilder
generateAlter, generateCreateMethods inherited from class org.eclipse.dirigible.database.sql.builders.AbstractSqlBuilder
build, encapsulate, encapsulateMany, getDialect, isCaseSensitive, isColumn, isNumeric, isValue, toString
-
Constructor Details
-
CreateTableBuilder
Instantiates a new creates the table builder.- Parameters:
dialect- the dialecttable- the table
-
-
Method Details
-
primaryKey
Primary key.- Parameters:
name- the namecolumns- the columns- Returns:
- the creates the table builder
-
primaryKey
Primary key.- Parameters:
name- the namecolumns- the columns- Returns:
- the creates the table builder
-
primaryKey
Primary key.- Parameters:
columns- the columns- Returns:
- the creates the table builder
-
primaryKey
Primary key.- Parameters:
columns- the columns- Returns:
- the creates the table builder
-
foreignKey
public CreateTableBuilder foreignKey(String name, String[] columns, String referencedTable, String[] referencedColumns)Foreign key.- Parameters:
name- the namecolumns- the columnsreferencedTable- the referenced tablereferencedColumns- the referenced columns- Returns:
- the creates the table builder
-
foreignKey
public CreateTableBuilder foreignKey(String name, String columns, String referencedTable, String referencedColumns)Foreign key.- Parameters:
name- the namecolumns- the columnsreferencedTable- the referenced tablereferencedColumns- the referenced columns- Returns:
- the creates the table builder
-
unique
Unique.- Parameters:
name- the namecolumns- the columns- Returns:
- the creates the table builder
-
unique
Unique.- Parameters:
name- the namecolumns- the columns- Returns:
- the creates the table builder
-
check
Check.- Parameters:
name- the nameexpression- the expression- Returns:
- the creates the table builder
-
generate
Description copied from interface:ISqlBuilderGenerate the result script.- Returns:
- the string
-
generatePrimaryKey
Generate primary key.- Parameters:
sql- the sql
-
generateForeignKeys
Generate foreign keys.- Parameters:
sql- the sql
-
generateForeignKey
Generate foreign key.- Parameters:
sql- the sqlforeignKey- the foreign key
-
generateUniqueIndices
Generate unique indices.- Parameters:
sql- the sql
-
generateUniqueIndex
Generate unique index.- Parameters:
sql- the sqluniqueIndex- the unique index
-
generateChecks
Generate checks.- Parameters:
sql- the sql
-
generateCheck
Generate check.- Parameters:
sql- the sqlcheck- the check
-