pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
CREATE USER MAPPING — 定义用户到外部服务器的新映射
CREATE USER MAPPING [ IF NOT EXISTS ] FOR { user_name | USER | CURRENT_ROLE | CURRENT_USER | PUBLIC }
SERVER server_name
[ OPTIONS ( option 'value' [ , ... ] ) ]
CREATE USER MAPPING定义用户到外部服务器的映射。用户映射通常封装连接信息,外部数据包装器会将其与外部服务器所封装的信息结合起来,以访问外部数据资源。
外部服务器的拥有者可以创建任意用户到该服务器的用户映射。此外,如果某个用户已被授予该服务器上的USAGE权限,那么该用户也可以为自己的用户名创建用户映射。
IF NOT EXISTS #如果给定用户到给定外部服务器的映射已经存在,则不要报错。这种情况下会发出一个提示。请注意,不能保证现有用户映射与本应创建的映射有任何相似之处。
user_name #被映射到外部服务器的现有用户的名称。CURRENT_ROLE、CURRENT_USER 和USER都匹配当前用户的名称。当指定 PUBLIC时,会创建一个所谓的公共映射;当没有适用的特定用户映射时,就会使用它。
server_name #将为其创建用户映射的现有服务器的名称。
OPTIONS ( option 'value' [, ... ] ) #该子句指定用户映射的选项。这些选项通常定义该映射实际的用户名和密码。选项名必须唯一。允许的选项名和值取决于该服务器的外部数据包装器。
为用户bob、服务器foo创建一个用户映射:
CREATE USER MAPPING FOR bob SERVER foo OPTIONS (user 'bob', password 'secret');
CREATE USER MAPPING符合 ISO/IEC 9075-9(SQL/MED)。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。英文原文本身的问题请通过上游文档表单反馈给 PostgreSQL 文档维护者。