IMPORT FOREIGN SCHEMA
IMPORT FOREIGN SCHEMA - 从外部服务器导入表定义
语法格式
IMPORT FOREIGN SCHEMA remote_schema
[ { LIMIT TO | EXCEPT } ( table_name [, ...] ) ]
FROM SERVER server_name
INTO local_schema
[ OPTIONS ( option 'value' [, ... ] ) ]
说明
IMPORT FOREIGN SCHEMA创建表示外部服务器上存在的表的外部表。新的外部表将由发出该命令的用户拥有,并使用正确的列定义和选项创建以匹配远程表。
默认情况下,将导入外部服务器上特定模式中存在的所有表和视图。可选地,表的列表可以限于指定的子集,或者可以排除特定的表。新的外部表都是在目标模式中创建的,目标模式必须已存在。
要使用 IMPORT FOREIGN SCHEMA ,用户必须对外部服务器具有 USAGE权限,并且对目标模式具有 CREATE 权限。
参数说明
remote_schema
要从中导入的远程模式。远程模式的具体含义取决于正在使用的外部数据包装器。
LIMIT TO ( table_name [, …] )
仅导入与给定表名之一匹配的外部表。外部模式中存在的其他表将被忽略。
EXCEPT ( table_name [, …] )
从导入中排除指定的外部表。除了此处列出的表外,将导入外部模式中存在的所有表。
server_name
要从中导入的外部服务器。
local_schema
将在其中创建导入的外部表的模式。
OPTIONS ( option 'value' [, …] )
导入期间要使用的选项。允许的选项名称和值特定于每个外部数据包装器。
示例
从服务器 film_server 上的远程模式 foreign_films导入表定义,在本地模式中创建外部表 films :
IMPORT FOREIGN SCHEMA foreign_films
FROM SERVER film_server INTO films;
如上所述,但只导入两个表 actors 和 directors (如果存在):
IMPORT FOREIGN SCHEMA foreign_films LIMIT TO (actors, directors)
FROM SERVER film_server INTO films;