Skip to content

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'] [, ... ] )

更改用户映射的选项。新选项将覆盖任何先前指定选项。ADD、SET 和 DROP 指定要执行的操作。ADD 假设未明确指定任何操作。选项名称必须唯一;选项还由服务器的外键数据包装器验证。

示例 ​

更改用户映射bob、服务器foo的密码

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