Перейти к основному содержимому

ALTER TABLESPACE

примечание

Эта страница переведена при помощи нейросети GigaChat.

ALTER TABLESPACE - изменение определения табличного пространства.

Синтаксис

ALTER TABLESPACE name RENAME TO new_name
ALTER TABLESPACE name OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
ALTER TABLESPACE name SET ( tablespace_option = value [, ... ] )
ALTER TABLESPACE name RESET ( tablespace_option [, ... ] )

Описание

ALTER TABLESPACE используется для изменения определения табличного пространства.

Изменять определение табличного пространства может только его владелец. Для смены владельца требуется право SET ROLE на новую роль, которая станет владельцем. Суперпользователи обладают этими привилегиями автоматически.

Параметры

name
Имя существующего табличного пространства, которое должно быть изменено.
new_name
Новое имя табличного пространства. Новое имя не может начинаться с pg_, так как такие имена зарезервированы для системных табличных пространств.
new_owner
Имя нового владельца табличного пространства.
tablespace_option
Параметр табличного пространства, который нужно установить или сбросить. В настоящее время доступны только следующие параметры: seq_page_cost, random_page_cost, effective_io_concurrency и maintenance_io_concurrency. Установка этих значений для конкретного табличного пространства переопределяет обычные оценки планировщика по стоимости чтения страниц из таблиц в этом пространстве, а также поведение по предварительной выборке данных в исполнителе, заданное конфигурационными параметрами с теми же именами (смотрите описания параметров seq_page_cost, random_page_cost, effective_io_concurrency, maintenance_io_concurrency). Это может быть полезно, если табличное пространство расположено на диске, который работает быстрее или медленнее, чем остальная часть подсистемы ввода-вывода.

Примеры

Переименование табличного пространства 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, DROP TABLESPACE