where action is one of:
Description
changes the definition of an existing external table. These are the supported ALTER EXTERNAL TABLE
actions:
- ADD COLUMN — Adds a new column to the external table definition.
- DROP COLUMN — Drops a column from the external table definition. If you drop readable external table columns, it only changes the table definition in Greenplum Database. The
CASCADE
keyword is required if anything outside the table depends on the column, such as a view that references the column. - OWNER — Changes the owner of the external table to the specified user.
Use the command to perform these actions on an external table.
- Set (change) the table schema.
- Rename the table.
You must own the external table to use ALTER EXTERNAL TABLE
or . To change the schema of an external table, you must also have CREATE
privilege on the new schema. To alter the owner, you must also be a direct or indirect member of the new owning role, and that role must have CREATE
privilege on the external table’s schema. A superuser has these privileges automatically.
Changes to the external table definition with either ALTER EXTERNAL TABLE
or do not affect the external data.
The ALTER EXTERNAL TABLE
and ALTER TABLE
commands cannot modify the type external table (read, write, web), the table FORMAT
information, or the location of the external data. To modify this information, you must drop and recreate the external table definition.
name
The name (possibly schema-qualified) of an existing external table definition to alter.
Name of an existing column.
new_column
Name of a new column.
type
Data type of the new column, or new data type for an existing column.
new_owner
The role name of the new owner of the external table.
CASCADE
RESTRICT
Refuse to drop the column or constraint if there are any dependent objects. This is the default behavior.
Examples
Add a new column to an external table definition:
Change the owner of an external table:
Change the data type of an external table:
is a Greenplum Database extension. There is no ALTER EXTERNAL TABLE
statement in the SQL standard or regular PostgreSQL.
See Also
CREATE EXTERNAL TABLE, , ALTER TABLE
Parent topic: