ALTER SERVER — 更改一个外部服务器的定义
ALTER SERVERname[ VERSION 'new_version' ] [ OPTIONS ( [ ADD | SET | DROP ]option['value'] [, ... ] ) ] ALTER SERVERnameOWNER TO {new_owner| CURRENT_ROLE | CURRENT_USER | SESSION_USER } ALTER SERVERnameRENAME TOnew_name
ALTER SERVER 更改一个外部服务器的定义。第一种形式更改服务器的版本字符串或该服务器的通用选项(至少需要一个子句)。第二种形式更改该服务器的拥有者。
要更改该服务器,你必须是该服务器的拥有者。此外,要更改拥有者,你必须能够 SET ROLE 到新的拥有角色,并且你必须在该服务器的外部数据包装器上拥有 USAGE 特权(注意,超级用户会自动满足所有这些条件)。
name一个现有服务器的名称。
new_version新的服务器版本。
OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ] ) 更改该服务器的选项。ADD、SET 和 DROP 指定要执行的动作。如果没有显式指定操作,则默认为 ADD。选项名称必须唯一;名称和值还会使用该服务器的外部数据包装器库进行验证。
new_owner该外部服务器新拥有者的用户名。
new_name该外部服务器的新名称。
更改服务器 foo,增加连接选项:
ALTER SERVER foo OPTIONS (host 'foo', dbname 'foodb');
更改服务器 foo,更改版本,更改 host 选项:
ALTER SERVER foo VERSION '8.4' OPTIONS (SET host 'baz');
ALTER SERVER 符合 ISO/IEC 9075-9(SQL/MED)。OWNER TO 和 RENAME 形式是 PostgreSQL 的扩展。