ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# ALTER TABLESPACE ## Name ALTER TABLESPACE --  修改一个表空间的定义 ## Synopsis ``` ALTER TABLESPACE _name_ RENAME TO _new_name_ ALTER TABLESPACE _name_ OWNER TO _new_owner_ ALTER TABLESPACE _name_ SET ( _tablespace_option_ = _value_ [, ... ] ) ALTER TABLESPACE _name_ RESET ( _tablespace_option_ [, ... ] ) ``` ## 描述 `ALTER TABLESPACE`改变一个表空间的定义。 要使用`ALTER TABLESPACE`,你必须是该表空间的所有者。 要修改所有者,你还必须是新的所有角色的直接或间接成员。不过,超级用户自动获得这些权限。 ## 参数 `_name_` 一个现有的表空间的名称。 `_new_name_` 表空间的新名字。新名字不能以`pg_`开头,因为这样的名字保留给系统表空间使用了。 `_new_owner_` 表空间的新所有者。 `_tablespace_option_` 可以设置或者重置的表空间参数。目前,可以设置的参数是`seq_page_cost`和`random_page_cost`。 为一个表空间设置任一个值,将会覆盖在那个表空间中从表中阅读页的成本优化器的一般估计值,正如同通过同名的配置参数建立的。 (参阅[seq_page_cost](#calibre_link-1201),[random_page_cost](#calibre_link-1177))。 如果表空间所在的磁盘是一个更快或更慢的其它io子系统,那么这些参数是有用的。 ## 例子 把表空间`index_space`重命名为`fast_raid`: ``` ALTER TABLESPACE index_space RENAME TO fast_raid; ``` 改变表空间`index_space`的所有者: ``` ALTER TABLESPACE index_space OWNER TO mary; ``` ## 兼容性 SQL标准里没有`ALTER TABLESPACE`语句。 ## 参见 [CREATE TABLESPACE](#calibre_link-99), [DROP TABLESPACE](#calibre_link-112)