Top Description Constructors Methods
org.hsqldb

public Class ParserTable

extends ParserDML
Class Inheritance
Known Direct Subclasses
org.hsqldb.ParserRoutine
Imports
org.hsqldb.HsqlNameManager.HsqlName, org.hsqldb.error.Error, .ErrorCode, org.hsqldb.index.Index, org.hsqldb.lib.HsqlArrayList, .OrderedHashMap, .OrderedHashSet, .OrderedIntHashSet, org.hsqldb.types.BinaryData, .Type, .Types

Parser for SQL table definition
Author
Fred Toussi (fredt@users dot sourceforge.net)
Since
1.9.0
Version
2.7.3

Constructor Summary

AccessConstructor and Description
pack-priv
ParserTable(Session session, Scanner scanner)

Method Summary

Modifier and TypeMethod and Description
pack-priv static void
addForeignKey(Session session, Table table, Constraint c, HsqlArrayList<Constraint> constraintList)

pack-priv static Table
addTableConstraintDefinitions(Session session, Table table, HsqlArrayList<Constraint> tempConstraints, HsqlArrayList<Constraint> constraintList, boolean addToSchema)

Adds a list of temp constraints to a new table

pack-priv void
checkPeriodColumnsAdd(Table table, PeriodDefinition period)

check the system period name and column names do not exist

pack-priv StatementSchema
pack-priv StatementSchema
pack-priv StatementSchema
pack-priv StatementSchema
pack-priv StatementSchema
pack-priv StatementSchema
compileCreateTableAsSubqueryDefinition(Table table, boolean ifNotExists)

pack-priv StatementSchema
compileCreateTableBody(Table table, boolean ifNot)

pack-priv PeriodDefinition
readAndAddPeriod(Table
a table
table
)

Reads and adds a table period definition to the table

pack-priv void
readCheckConstraintCondition(Constraint
check constraint
c
)

Responsible for handling check constraints section of CREATE TABLE ...

pack-priv void
readColumnConstraints(Table table, ColumnSchema column, HsqlArrayList<Constraint> constraintList)

Reads column constraints

pack-priv ColumnSchema

Returns:

a Column object with indicated attributes
readColumnDefinitionOrNull
(Table
this table
table
,
HsqlNameManager.HsqlName
column name
hsqlName
,
HsqlArrayList<Constraint>
list of constraints
constraintList
)

Responsible for handling the creation of table columns during the process of executing CREATE TABLE or ADD COLUMN etc. statements.

pack-priv void
readConstraint(SchemaObject
table or domain
schemaObject
,
HsqlArrayList<Constraint>
list of constraints
constraintList
)

Reads and adds a table constraint definition to the list

pack-priv Expression
readDefaultClause(Type dataType)

Reads a DEFAULT clause expression.

pack-priv Constraint
readFKReferences(Table refTable, HsqlNameManager.HsqlName constraintName, OrderedHashSet<String> refColSet)

pack-priv HsqlNameManager.HsqlName
pack-priv Boolean
private void
private ColumnSchema[]
pack-priv PeriodDefinition
pack-priv void
readSequenceOptions(NumberSequence sequence, boolean withType, boolean isAlter, boolean allowComma)

A comma after START WITH is accepted for 1.8.x compatibility

pack-priv boolean
pack-priv void
private QueryExpression
pack-priv void
pack-priv void
setPeriodColumns(Table table, PeriodDefinition period)

check period columns have already been defined in table and have the supported data types

Inherited from org.hsqldb.ParserDML:
compileCallStatementcompileDeleteStatementcompileInsertStatementcompileMergeStatementcompileProcedureCallcompileTruncateStatementcompileUpdateStatementreadGetClauseListreadOnDuplicateClauseListreadSetClauseListresolveOuterReferencesAndTypesresolveReferencesAndTypesresolveUpdateExpressionsXreadAndResolveBooleanValueExpression

Constructor Detail

ParserTableback to summary
pack-priv ParserTable(Session session, Scanner scanner)

Method Detail

addForeignKeyback to summary
pack-priv static void addForeignKey(Session session, Table table, Constraint c, HsqlArrayList<Constraint> constraintList)
addTableConstraintDefinitionsback to summary
pack-priv static Table addTableConstraintDefinitions(Session session, Table table, HsqlArrayList<Constraint> tempConstraints, HsqlArrayList<Constraint> constraintList, boolean addToSchema)

Adds a list of temp constraints to a new table

checkPeriodColumnsAddback to summary
pack-priv void checkPeriodColumnsAdd(Table table, PeriodDefinition period)

check the system period name and column names do not exist

compileAlterTableAddPeriodback to summary
pack-priv StatementSchema compileAlterTableAddPeriod(Table table)
compileAlterTableAddVersioningback to summary
pack-priv StatementSchema compileAlterTableAddVersioning(Table table)
compileAlterTableDropPeriodback to summary
pack-priv StatementSchema compileAlterTableDropPeriod(Table table)
compileAlterTableDropVersioningback to summary
pack-priv StatementSchema compileAlterTableDropVersioning(Table table)
compileCreateTableback to summary
pack-priv StatementSchema compileCreateTable(int type)
compileCreateTableAsSubqueryDefinitionback to summary
pack-priv StatementSchema compileCreateTableAsSubqueryDefinition(Table table, boolean ifNotExists)
compileCreateTableBodyback to summary
pack-priv StatementSchema compileCreateTableBody(Table table, boolean ifNot)
readAndAddPeriodback to summary
pack-priv PeriodDefinition readAndAddPeriod(Table table)

Reads and adds a table period definition to the table

Parameters
table:Table

a table

readCheckConstraintConditionback to summary
pack-priv void readCheckConstraintCondition(Constraint c)

Responsible for handling check constraints section of CREATE TABLE ...

Parameters
c:Constraint

check constraint

readColumnConstraintsback to summary
pack-priv void readColumnConstraints(Table table, ColumnSchema column, HsqlArrayList<Constraint> constraintList)

Reads column constraints

readColumnDefinitionOrNullback to summary
pack-priv ColumnSchema readColumnDefinitionOrNull(Table table, HsqlNameManager.HsqlName hsqlName, HsqlArrayList<Constraint> constraintList)

Responsible for handling the creation of table columns during the process of executing CREATE TABLE or ADD COLUMN etc. statements.

Parameters
table:Table

this table

hsqlName:HsqlNameManager.HsqlName

column name

constraintList:HsqlArrayList<Constraint>

list of constraints

Returns:ColumnSchema

a Column object with indicated attributes

readConstraintback to summary
pack-priv void readConstraint(SchemaObject schemaObject, HsqlArrayList<Constraint> constraintList)

Reads and adds a table constraint definition to the list

Parameters
schemaObject:SchemaObject

table or domain

constraintList:HsqlArrayList<Constraint>

list of constraints

readDefaultClauseback to summary
pack-priv Expression readDefaultClause(Type dataType)

Reads a DEFAULT clause expression.

readFKReferencesback to summary
pack-priv Constraint readFKReferences(Table refTable, HsqlNameManager.HsqlName constraintName, OrderedHashSet<String> refColSet)
readFKTableNameback to summary
pack-priv HsqlNameManager.HsqlName readFKTableName(HsqlNameManager.HsqlName schema)
readIfNotExistsback to summary
pack-priv Boolean readIfNotExists()
readIndexback to summary
private void readIndex(Table table, HsqlArrayList<Constraint> indexList)
readLikeTableback to summary
private ColumnSchema[] readLikeTable(Table table)
readPeriodback to summary
pack-priv PeriodDefinition readPeriod(Table table)
readSequenceOptionsback to summary
pack-priv void readSequenceOptions(NumberSequence sequence, boolean withType, boolean isAlter, boolean allowComma)

A comma after START WITH is accepted for 1.8.x compatibility

readTableContentsSourceback to summary
pack-priv boolean readTableContentsSource(Table table, HsqlArrayList<Constraint> tempConstraints, HsqlArrayList<Constraint> tempIndexes)
readTableOnCommitClauseback to summary
pack-priv void readTableOnCommitClause(Table table)
readTableQueryback to summary
private QueryExpression readTableQuery()
readTableVersioningClauseback to summary
pack-priv void readTableVersioningClause(Table table)
setPeriodColumnsback to summary
pack-priv void setPeriodColumns(Table table, PeriodDefinition period)

check period columns have already been defined in table and have the supported data types