ALTER USER MAPPING — изменить определение сопоставления пользователей
ALTER USER MAPPING FOR { имя_пользователя | USER | CURRENT_ROLE | CURRENT_USER | SESSION_USER | PUBLIC }
SERVER имя_сервера
OPTIONS ( [ ADD | SET | DROP ] параметр ['значение'] [, ... ] )ALTER USER MAPPING изменяет определение сопоставления пользователей.
Владелец стороннего сервера может изменить сопоставление любых пользователей на этом сервере. Кроме того, пользователь может изменить сопоставление для своего собственного имени пользователя, если он наделён правом USAGE на данном сервере.
имя_пользователяИмя пользователя для сопоставления. Значения CURRENT_ROLE, CURRENT_USER и USER соответствуют имени текущего пользователя. Значение PUBLIC соответствует именам всех текущих и будущих пользователей системы.
имя_сервераИмя сервера, для которого меняется сопоставление пользователей.
OPTIONS ( [ ADD | SET | DROP ] параметр ['значение'] [, ... ] )Эти формы меняют параметры сопоставления пользователей. Новые параметры переопределяют любые определённые ранее. Возможные операции с параметрами: 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, Postgres Pro в этом аспекте отклоняется от стандарта ради согласованности и совместимости.