Reviewed-by: Hasko, Vladimir <vladimir.hasko@t-systems.com> Co-authored-by: Lu, Huayi <luhuayi@huawei.com> Co-committed-by: Lu, Huayi <luhuayi@huawei.com>
22 KiB
ALTER FOREIGN TABLE (for HDFS or OBS)
Function
ALTER FOREIGN TABLE modifies an HDFS or OBS foreign table.
Precautions
None
Syntax
- Set a foreign table's attributes.
1 2
ALTER FOREIGN TABLE [ IF EXISTS ] table_name OPTIONS ( {[ ADD | SET | DROP ] option ['value']} [, ... ]);
- Set the owner of the foreign table.
1 2
ALTER FOREIGN TABLE [ IF EXISTS ] tablename OWNER TO new_owner;
- Update a foreign table column.
1 2
ALTER FOREIGN TABLE [ IF EXISTS ] table_name MODIFY ( { column_name data_type | column_name [ CONSTRAINT constraint_name ] NOT NULL [ ENABLE ] | column_name [ CONSTRAINT constraint_name ] NULL } [, ...] );
- Modify the column of the foreign table.
1 2
ALTER FOREIGN TABLE [ IF EXISTS ] tablename action [, ... ];
The action syntax is as follows:1 2 3 4 5 6 7
ALTER [ COLUMN ] column_name [ SET DATA ] TYPE data_type | ALTER [ COLUMN ] column_name { SET | DROP } NOT NULL | ALTER [ COLUMN ] column_name SET STATISTICS [PERCENT] integer | ALTER [ COLUMN ] column_name OPTIONS ( {[ ADD | SET | DROP ] option ['value'] } [, ... ]) | MODIFY column_name data_type | MODIFY column_name [ CONSTRAINT constraint_name ] NOT NULL [ ENABLE ] | MODIFY column_name [ CONSTRAINT constraint_name ] NULL
For details, see ALTER TABLE.
- Add a foreign table informational constraint.
1 2 3 4
ALTER FOREIGN TABLE [ IF EXISTS ] tablename ADD [ CONSTRAINT constraint_name ] { PRIMARY KEY | UNIQUE } ( column_name ) [ NOT ENFORCED [ ENABLE QUERY OPTIMIZATION | DISABLE QUERY OPTIMIZATION ] | ENFORCED ];
For parameters about adding an informational constraint to a foreign table, see Parameter Description in CREATE FOREIGN TABLE (For HDFS).
- Remove a foreign table informational constraint.
1 2
ALTER FOREIGN TABLE [ IF EXISTS ] tablename DROP CONSTRAINT constraint_name ;
Parameter Description
- IF EXISTS
Sends a notification instead of an error if no tables have identical names. The notification prompts that the table you are querying does not exist.
- tablename
Specifies the name of an existing foreign table to be modified.
Value range: an existing foreign table name
- new_owner
Specifies the new owner of the foreign table.
Value range: A string indicating a valid user name.
- data_type
Specifies the new type for an existing column.
Value range: a string. It must comply with the naming convention.
- constraint_name
Specifies the name of a constraint to add or delete.
- column_name
Specifies the name of an existing column.
Value range: a string. It must comply with the naming convention.
For details on how to modify other parameters in the foreign table, such as IF EXISTS, see Parameter Description in ALTER TABLE.