================ ALTER TABLESPACE ================ .. container:: refentry :name: SQL-ALTERTABLESPACE .. container:: titlepage .. container:: refnamediv .. rubric:: ALTER TABLESPACE :name: alter-tablespace ALTER TABLESPACE — 更改一个表空间的定义 .. container:: refsynopsisdiv .. rubric:: 大纲 :name: 大纲 .. code:: synopsis ALTER TABLESPACE name RENAME TO new_name ALTER TABLESPACE name OWNER TO { new_owner | CURRENT_USER | SESSION_USER } ALTER TABLESPACE name SET ( tablespace_option = value [, ... ] ) ALTER TABLESPACE name RESET ( tablespace_option [, ... ] ) .. container:: refsect1 :name: id-1.9.3.36.5 .. rubric:: 描述 :name: 描述 ``ALTER TABLESPACE``\ 可以被用于更改一个 表空间的定义。 要更改一个表空间的定义,你必须拥有它。要修改拥有者,你还必须是 新拥有角色的一个直接或间接成员(注意超级用户自动拥有这些特权)。 .. container:: refsect1 :name: id-1.9.3.36.6 .. rubric:: 参数 :name: 参数 .. container:: variablelist *``name``* 一个现有表空间的名称。 *``new_name``* 该表空间的新名称。新名称不能以\ ``pg_``\ 开始,因为这类名称被 保留用于系统表空间。 *``new_owner``* 该表空间的新拥有者。 *``tablespace_option``* 要设置或者重置的一个表空间参数。可用的参数请参考\ `CREATE TABLESPACE `__\ 的参数说明。 .. container:: refsect1 :name: id-1.9.3.36.7 .. rubric:: 示例 :name: 示例 将表空间\ ``index_space``\ 重命名为\ ``fast_raid``\ : .. code:: programlisting ALTER TABLESPACE index_space RENAME TO fast_raid; 更改表空间\ ``index_space``\ 的拥有者: .. code:: programlisting ALTER TABLESPACE index_space OWNER TO mary; .. container:: refsect1 :name: id-1.9.3.36.8 .. rubric:: 兼容性 :name: 兼容性 在 SQL 标准中没有 ``ALTER TABLESPACE``\ 语句。 .. container:: refsect1 :name: id-1.9.3.36.9 .. rubric:: 另见 :name: 另见 `CREATE TABLESPACE `__, `DROP TABLESPACE `__