ALTER DATABASE name [ [ WITH ] option [ ... ] ] 这里的 option 可以是: CONNECTION LIMIT connlimit ALTER DATABASE name SET parameter { TO | = } { value | DEFAULT } ALTER DATABASE name RESET parameter ALTER DATABASE name RENAME TO newname ALTER DATABASE name OWNER TO new_owner
ALTER DATABASE 改变一个数据库的属性。
第一种形式改变某个针对每个数据库设置的东西(见下文获取细节)。只有数据库所有者或者超级用户可以改变这些设置。
第二和第三种形式为 PostgreSQL 数据库修改缺省的会话运行时配置变量。随后在该数据库上启动新会话的时候将使用此缺省值。数据库相关的缺省值将覆盖任何在 postgresql.conf 里出现或者从 postgres 命令行接收到的设置。只有数据库所有者或者超级用户可以修改会话缺省值。有些变量不能用这种方法设置,或者是只能由超级用户设置。
第四种形式修改数据库的名称。只有数据库所有者或者超级用户可以重命名一个数据库(非超级用户必须拥有 CREATEDB 权限)。当前数据库不能被重命名。如果你需要这么做,那么请连接另外一个数据库。
第五种形式改变数据库的所有者。要改变所有者,你必须拥有该数据库并且还是新的所有角色的直接或者间接成员,并且还必须有 CREATEDB 权限。超级用户自动拥有所有这些权限。