选择 打开 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

文档 / SQL 命令 / 外部数据

SQL COMMAND · 外部数据

CREATE SERVER

定义一个新的外部服务器

CREATE外部数据引入 10(基线)现存至 20 devel1 次语法变更

动词
CREATE
对象
SERVER
引入版本
10(基线)
状态
现存
语法变更次数
1
手册小节数
6

本站手册 · 18官方文档 ↗

版本轨迹

相对 PostgreSQL 17 无变化。

语法铁道图 PostgreSQL 18

沿轨道从左向右阅读,分岔表示选择,绕行表示可选,回环表示重复。方框为参数,点击带下划线的参数可展开子规则。

CREATE SERVER IF NOT EXISTS server_name TYPE ' server_type ' VERSION ' server_version ' FOREIGN DATA WRAPPER fdw_name OPTIONS ( option ' value ' , )

语法概要

CREATE SERVER [ IF NOT EXISTS ] server_name [ TYPE 'server_type' ] [ VERSION 'server_version' ]
    FOREIGN DATA WRAPPER fdw_name
    [ OPTIONS ( option 'value' [, ... ] ) ]

PostgreSQL 18 手册 · 查看完整参考页

描述

CREATE SERVER定义一个新的外部服务器。 定义该服务器的用户将成为其拥有者。

外部服务器通常封装外部数据包装器用来访问外部数据资源的连接信息。 还可以通过用户映射指定额外的、特定于用户的连接信息。

服务器名称在数据库内必须唯一。

要创建服务器,必须在所使用的外部数据包装器上具有USAGE权限。

参数

IF NOT EXISTS

如果同名服务器已存在,则不要抛出错误。在这种情况下会发出一个通 知。请注意,不能保证现有服务器与原本将要创建的服务器有任何相似 之处。

server_name

要创建的外部服务器的名称。

server_type

可选的服务器类型,可能对外部数据包装器有用。

server_version

可选的服务器版本,可能对外部数据包装器有用。

fdw_name

管理该服务器的外部数据包装器的名称。

OPTIONS ( option 'value' [, ... ] )

这个子句指定服务器的选项。这些选项通常定义该服务器的连接细节, 但实际的名称和值取决于该服务器的外部数据包装器。

注解

在使用dblink模块时,可以将外部服务器的名称用作 dblink_connect函数的一个参数,以指示连 接参数。要以这种方式使用它,必须在该外部服务器上具有 USAGE权限。

如果外部服务器支持排序下推,那么它必须与本地服务器具有相同的排序顺序。

示例

创建一个使用外部数据包装器postgres_fdw 的服务器myserver

CREATE SERVER myserver FOREIGN DATA WRAPPER postgres_fdw OPTIONS (host 'foo', dbname 'foodb', port '5432');

详见postgres_fdw

兼容性

CREATE SERVER符合 ISO/IEC 9075-9 (SQL/MED)。

另见

语法演化

相邻大版本之间的差异,新的在前。版本号链接到对应快照。

  1. PostgreSQL 19← 18正文更新

    正文更新
  2. PostgreSQL 11← 10语法变化

    + CREATE SERVER [ IF NOT EXISTS ] server_name [ TYPE 'server_type' ] [ VERSION 'server_version' ]− CREATE SERVER [IF NOT EXISTS] server_name [ TYPE 'server_type' ] [ VERSION 'server_version' ]正文更新

同组命令

命令动词对象版本变动最近变更
FOREIGN DATA外部数据13 条
CREATE FOREIGN DATA WRAPPERCREATEFOREIGN DATA WRAPPER 191 次
定义一个新的外部数据包装器现存
ALTER FOREIGN DATA WRAPPERALTERFOREIGN DATA WRAPPER 192 次
更改外部数据包装器的定义现存
DROP FOREIGN DATA WRAPPERDROPFOREIGN DATA WRAPPER
移除一个外部数据包装器现存
IMPORT FOREIGN SCHEMAIMPORTFOREIGN SCHEMA
从一个外部服务器导入表定义现存
CREATE FOREIGN TABLECREATEFOREIGN TABLE 143 次
定义一个新外部表现存
ALTER FOREIGN TABLEALTERFOREIGN TABLE 142 次
更改外部表的定义现存
DROP FOREIGN TABLEDROPFOREIGN TABLE
移除一个外部表现存
CREATE SERVERCREATESERVER 111 次
定义一个新的外部服务器现存
ALTER SERVERALTERSERVER 141 次
更改外部服务器的定义现存
DROP SERVERDROPSERVER
移除一个外部服务器描述符现存
CREATE USER MAPPINGCREATEUSER MAPPING 142 次
定义用户到外部服务器的新映射现存
ALTER USER MAPPINGALTERUSER MAPPING 141 次
更改用户映射的定义现存
DROP USER MAPPINGDROPUSER MAPPING 141 次
删除外部服务器的用户映射现存