ALTER USER MAPPING

ALTER USER MAPPING — 更改一个用户映射的定义

大纲

ALTER USER MAPPING FOR { user_name | USER | CURRENT_ROLE | CURRENT_USER | SESSION_USER | PUBLIC }
    SERVER server_name
    OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ] )

描述

ALTER USER MAPPING更改一个用户映射的定义。

一个外部服务器的拥有者可以为任何用户修改用于该服务器的用户映射。还有, 如果一个用户被授予了外部服务器上的USAGE特权,它就能为它们自 己的用户名修改一个用户映射。

参数

user_name

该映射的用户名。CURRENT_ROLE, CURRENT_USER,和USER匹配当前 用户的名称。PUBLIC被用来匹配系统中所有当前以及未来的用户名。

server_name

该用户映射的服务器名。

OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ] )

为该用户映射更改选项。新选项会覆盖任何之前指定的选项。ADDSETDROP指定要被执行的动作。如果没有显式地指定 操作,将假定为ADD。选项名称必须为唯一,该服务器的外部数据包装 器也会验证选项。

示例

为服务器 foo的用户映射bob更改口令:

ALTER USER MAPPING FOR bob SERVER foo OPTIONS (SET password 'public');

兼容性

ALTER USER MAPPING符合 ISO/IEC 9075-9 (SQL/MED)。有一点细微的语法问题:该标准会忽略FOR关键字。 由于CREATE USER MAPPING以及 DROP USER MAPPING都在类似的位置上使用 FOR,并且 IBM DB2 (作为其他主要的 SQL/MED 实现)也在 ALTER USER MAPPING中要求该关键字,因此为了一致性和互 操作性,PostgreSQL 在这里的实现与标准不同。

另见

CREATE USER MAPPING, DROP USER MAPPING