↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
测试与开发版本: 19 / devel
不受支持的版本: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3
历史版本PostgreSQL 7.4 已于 2010 年 10 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本。

ALTER DATABASE

ALTER DATABASE — 更改一个数据库

大纲

ALTER DATABASE name SET parameter { TO | = } { value | DEFAULT }
ALTER DATABASE name RESET parameter

ALTER DATABASE name RENAME TO newname

描述

ALTER DATABASE用于更改一个数据库的属性。

前两种形式更改一个PostgreSQL数据库的某个运行时配置变量的会话默认值。此后每当在该数据库中启动新的会话时,指定的值就会成为会话默认值。数据库特定的默认值会覆盖postgresql.conf中的设置或从 postmaster命令行接收到的设置。只有数据库拥有者或超级用户才能更改数据库的会话默认值。

第三种形式更改数据库的名字。只有数据库拥有者才能重命名数据库,而且他还必须拥有CREATEDB权限。当前数据库不能被重命名。(如果你需要这样做,请连接到一个不同的数据库。)

参数

name

要更改其会话默认值的数据库名字。

parameter
value

把该数据库指定配置参数的会话默认值设置为给定值。如果 value为DEFAULT,或者等效地使用RESET,则会移除数据库特定的变量设置,新会话将继承系统范围的默认设置。使用RESET ALL可清除所有设置。

有关允许的参数名和取值的更多信息,请参阅SET和第 16.4 节。

newname

数据库的新名字。

注意

使用ALTER USER,也可以把会话默认值绑定到一个特定的用户而不是数据库。如果发生冲突,用户特定的设置会覆盖数据库特定的设置。

示例

要在数据库test中默认禁用索引扫描:

ALTER DATABASE test SET enable_indexscan TO off;

兼容性

ALTER DATABASE语句是一个 PostgreSQL扩展。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。