SQL COMMAND · 外部数据
CREATE SERVER
定义一个新的外部服务器
CREATE外部数据引入 10(基线)现存至 20 devel1 次语法变更
- 动词
CREATE- 对象
SERVER- 分组
- 外部数据
- 引入版本
- 10(基线)
- 状态
- 现存
- 语法变更次数
- 1
- 手册小节数
- 6
版本轨迹
相对 PostgreSQL 17 无变化。
语法铁道图 PostgreSQL 18
沿轨道从左向右阅读,分岔表示选择,绕行表示可选,回环表示重复。方框为参数,点击带下划线的参数可展开子规则。
语法概要
CREATE SERVER [ IF NOT EXISTS ]server_name[ TYPE 'server_type' ] [ VERSION 'server_version' ] FOREIGN DATA WRAPPERfdw_name[ OPTIONS (option'value' [, ... ] ) ]
描述
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)。
另见
语法演化
相邻大版本之间的差异,新的在前。版本号链接到对应快照。
PostgreSQL 19← 18正文更新
正文更新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' ]正文更新
同组命令
| 命令 | 动词 | 对象 | 版本变动 | 最近变更 |
|---|---|---|---|---|
CREATE FOREIGN DATA WRAPPER | CREATE | FOREIGN DATA WRAPPER | 191 次 | |
| 定义一个新的外部数据包装器 | 现存 | |||
ALTER FOREIGN DATA WRAPPER | ALTER | FOREIGN DATA WRAPPER | 192 次 | |
| 更改外部数据包装器的定义 | 现存 | |||
DROP FOREIGN DATA WRAPPER | DROP | FOREIGN DATA WRAPPER | — | |
| 移除一个外部数据包装器 | 现存 | |||
IMPORT FOREIGN SCHEMA | IMPORT | FOREIGN SCHEMA | — | |
| 从一个外部服务器导入表定义 | 现存 | |||
CREATE FOREIGN TABLE | CREATE | FOREIGN TABLE | 143 次 | |
| 定义一个新外部表 | 现存 | |||
ALTER FOREIGN TABLE | ALTER | FOREIGN TABLE | 142 次 | |
| 更改外部表的定义 | 现存 | |||
DROP FOREIGN TABLE | DROP | FOREIGN TABLE | — | |
| 移除一个外部表 | 现存 | |||
CREATE SERVER | CREATE | SERVER | 111 次 | |
| 定义一个新的外部服务器 | 现存 | |||
ALTER SERVER | ALTER | SERVER | 141 次 | |
| 更改外部服务器的定义 | 现存 | |||
DROP SERVER | DROP | SERVER | — | |
| 移除一个外部服务器描述符 | 现存 | |||
CREATE USER MAPPING | CREATE | USER MAPPING | 142 次 | |
| 定义用户到外部服务器的新映射 | 现存 | |||
ALTER USER MAPPING | ALTER | USER MAPPING | 141 次 | |
| 更改用户映射的定义 | 现存 | |||
DROP USER MAPPING | DROP | USER MAPPING | 141 次 | |
| 删除外部服务器的用户映射 | 现存 | |||