The ALTER TABLE statement applies a schema change to a table.

Note:

This statement performs a schema change. For more information about how online schema changes work in CockroachDB, see Online Schema Changes.

Viewing schema changes

This schema change statement is registered as a job. You can view long-running jobs with SHOW JOBS.

Subcommands

For information on using ALTER TABLE, see the documents for its relevant subcommands.

Tip:

Some subcommands can be used in combination in a single ALTER TABLE statement. For example, you can atomically rename a column and add a new column with the old name of the existing column.

Subcommand Description Can combine with other subcommands?
ADD COLUMN Add columns to tables. Yes
ADD CONSTRAINT Add constraints to columns. Yes
ALTER COLUMN Change or drop a column's DEFAULT constraint or NOT NULL constraint. Yes
ALTER TYPE Change a column's data type. Yes
CONFIGURE ZONE Configure replication zones for a table. No
DROP COLUMN Remove columns from tables. Yes
DROP CONSTRAINT Remove constraints from columns. Yes
EXPERIMENTAL_AUDIT Enable per-table audit logs. Yes
PARTITION BY Repartition or unpartition a table with partitions (Enterprise-only). Yes
RENAME COLUMN Change the names of columns. Yes
RENAME CONSTRAINT Change constraints columns. Yes
RENAME TABLE Change the names of tables. No
SPLIT AT Force a range split at the specified row in the table. No
UNSPLIT AT New in v19.2: Remove a range split enforcement at a specified row in the table. No
VALIDATE CONSTRAINT Check whether values in a column match a constraint on the column. Yes

Viewing schema changes

This schema change statement is registered as a job. You can view long-running jobs with SHOW JOBS.



Yes No