ALTER FOREIGN TABLE
功能描述
用于对外表进行修改。
注意事项
OPTIONS中的敏感字段(如password、secret_access_key)在使用多层引号时,语义和不带引号的场景是不同的,因此不会被识别为敏感字段进行脱敏。
多租场景下,只有初始用户可在PDB内部执行ALTER FOREIGN TABLE命令。
语法格式
- 修改外表属性:
ALTER FOREIGN TABLE [ IF EXISTS ] table_name OPTIONS ( {[ ADD | SET | DROP ] option ['value']}[, ... ]);
- 修改外表字段选项:
ALTER FOREIGN TABLE [ IF EXISTS ] table_name ALTER column_name OPTIONS;
参数说明
-
需要修改的外表名称。
取值范围:已存在的外表名。
-
改变外表或者外表字段的选项。ADD、SET和DROP指定执行的操作。如果没有显式设置,那么默认为ADD。选项的名字不允许重复(尽管表选项和表字段选项可以有相同的名字)。选项的名称和值也会通过外部数据封装器的类库进行校验。
-
option的新值。
- column_name
现有的列的名称。
取值范围:字符串,符合标识符命名规范。
示例
--创建server。 gaussdb=# CREATE SERVER my_server FOREIGN DATA WRAPPER log_fdw; --创建外表。 gaussdb=# CREATE FOREIGN TABLE foreign_tbl (col1 text) SERVER my_server OPTIONS (logtype 'gs_log'); --修改外表属性。 gaussdb=# ALTER FOREIGN TABLE foreign_tbl OPTIONS (ADD latest_files '2'); gaussdb=# ALTER FOREIGN TABLE foreign_tbl OPTIONS ( SET latest_files '5'); gaussdb=# ALTER FOREIGN TABLE foreign_tbl OPTIONS ( DROP latest_files); --删除外表。 gaussdb=# DROP FOREIGN TABLE foreign_tbl; --删除server。 gaussdb=# DROP SERVER my_server;