将数据源中的表注册为外表。
语法
cstring ST_RegForeignTables(cstring source,
cstring server_name default '',
cstring driver default '',
cstring config_option default '',
cstring open_option default '',
cstring[] tables default NULL,
cstring prefix default '' );
参数
参数名称 | 描述 |
---|---|
source | 数据源,参见对象存储服务路径。 |
driver | 使用的数据源驱动程序,可以通过ST_FDWDrivers函数获得。如果传入空字符串,则表示使用默认的驱动尝试访问。 |
server_name | 自动创建的Foreign Server的名称,默认使用ganos_fdw_server 。
|
config_option | 环境变量参数选项。 |
open_option | 数据源打开选项。 |
tables | 需要注册为外表的表名称,可以通过ST_ForeignTables获得。 |
prefix | 注册的外表前缀。 |
描述
将数据源中的表注册为外表。可以指定服务器名称、数据源打开信息,可以通过information_schema.foreign_tables
视图获取相关信息。
示例
- 只指定路径
SELECT ST_RegForeignTables('OSS://<ak_id>:<ak_secret>@<endpoint>/data'); -------------- Create server 'ganos_fdw_server' successfully
- 指定server_name
SELECT ST_RegForeignTables('OSS://<ak_id>:<ak_secret>@<endpoint>/data', 'my_server'); ------------- Create server 'my_server' successfully
- 指定驱动打开选项
SELECT ST_RegForeignTables('OSS://<ak_id>:<ak_secret>@<endpoint>/data', 'myserver', 'ESRI Shapefile', '', 'SHAPE_ENCODING=LATIN1'); ------------- Create server 'myserver' successfully
- 指定需要注册的表
SELECT ST_RegForeignTables('OSS://<ak_id>:<ak_secret>@<endpoint>/data', 'myserver', 'ESRI Shapefile', '', 'SHAPE_ENCODING=LATIN1', ARRAY['point', 'roads']::cstring[]); ------------- Create server 'myserver' successfully
- 指定外表前缀
SELECT ST_RegForeignTables('OSS://<ak_id>:<ak_secret>@<endpoint>/data', 'myserver', 'ESRI Shapefile', '', 'SHAPE_ENCODING=LATIN1', ARRAY['point', 'roads']::cstring[], 'myprefix'); ------------- Create server 'myserver' successfully