支援的版本:目前 (17) / 16 / 15 / 14 / 13
開發版本:devel
不支援的版本:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4

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_ROLECURRENT_USERUSER 會符合目前使用者的名稱。PUBLIC 用於匹配系統中所有現在和未來的使用者名稱。

server_name

使用者映射的伺服器名稱。

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

變更使用者映射的選項。新選項會覆蓋任何先前指定的選項。ADDSETDROP 指定要執行的動作。如果未明確指定任何操作,則假設為 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 MAPPINGDROP USER MAPPING 在類似的位置都使用 FOR,並且 IBM DB2(作為另一個主要的 SQL/MED 實作)也需要它用於 ALTER USER MAPPING,因此 PostgreSQL 在這裡偏離了標準,以保持一致性和互通性。

提交更正

如果您在文件中發現任何不正確、與您特定功能的使用經驗不符或需要進一步澄清的地方,請使用此表單來報告文件問題。