ALTER USER MAPPING
Эта страница переведена при помощи нейросети GigaChat.
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 отходит от стандарта в этом месте ради согласованности и совместимости.