ALTER USER MAPPING FOR { user_name | USER | CURRENT_USER | PUBLIC } SERVER server_name OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ] )
ALTER USER MAPPING更改用户映射的定义。
外服务器的所有者可以为任何用户更改那个服务器的户映射。 而且,若已将服务器的USAGE权限授予该用户,那么该用户可以为其自身的用户名修改用户映射。
映射的名称。CURRENT_USER和USER匹配当前用户的名称。 PUBLIC用于匹配系统中已有和将来创建的所有用户名。
用户映射的服务器名称。
用户映射更改选项。新的选项覆盖所有先前声明的选项。 ADD、SET和DROP声明要执行的操作。 若未明确声明操作,则假定为ADD。 选项名称必须是独一无二的;选项也要通过服务器的外部数据封装器的验证。
为用户映射bob,服务器 foo更改密码:
ALTER USER MAPPING FOR bob SERVER foo OPTIONS (user 'bob', 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是在标准一致性和交互操作性中取了一个中间位置。