Class CommandWithColumns

    • Constructor Detail

      • CommandWithColumns

        protected CommandWithColumns​(SessionLocal session,
                                     Schema schema)
    • Method Detail

      • addColumn

        public abstract void addColumn​(Column column)
        Add a column to this table.
        Parameters:
        column - the column to add
      • addConstraintCommand

        public void addConstraintCommand​(DefineCommand command)
        Add a constraint statement to this statement. The primary key definition is one possible constraint statement.
        Parameters:
        command - the statement to add
      • changePrimaryKeysToNotNull

        protected void changePrimaryKeysToNotNull​(java.util.ArrayList<Column> columns)
        For the given list of columns, disable "nullable" for those columns that are primary key columns.
        Parameters:
        columns - the list of columns
      • createConstraints

        protected void createConstraints()
        Create the constraints.
      • generateSequences

        protected java.util.ArrayList<Sequence> generateSequences​(java.util.ArrayList<Column> columns,
                                                                  boolean temporary)
        For the given list of columns, create sequences for identity columns (if needed), and then get the list of all sequences of the columns.
        Parameters:
        columns - the columns
        temporary - whether generated sequences should be temporary
        Returns:
        the list of sequences (may be empty)
      • getConstraintCommands

        private java.util.ArrayList<DefineCommand> getConstraintCommands()
      • setPrimaryKey

        private boolean setPrimaryKey​(AlterTableAddConstraint primaryKey)
        Set the primary key, but also check if a primary key with different columns is already defined.

        If an unnamed primary key with the same columns is already defined it is removed from the list of constraints and this method returns false.

        Parameters:
        primaryKey - the primary key
        Returns:
        whether another primary key with the same columns was already set and the specified primary key should be ignored