ALTER TABLESPACE — テーブル空間の定義を変更する
ALTER TABLESPACEnameRENAME TOnew_nameALTER TABLESPACEnameOWNER TO {new_owner| CURRENT_ROLE | CURRENT_USER | SESSION_USER } ALTER TABLESPACEnameSET (tablespace_option=value[, ... ] ) ALTER TABLESPACEnameRESET (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のみです。
特定のテーブル空間について、この値を設定すると、プランナがそのテーブル空間内のテーブルからページを読み込むコストの通常の推定値や、発行される同時I/Oの数について、通常参照する同じ名前の設定パラメータ(seq_page_cost、random_page_cost、effective_io_concurrency、maintenance_io_concurrencyを参照)よりも優先します。
テーブル空間が、他のI/Oサブシステムより高速あるいは低速なディスク上にある時は、これが有用でしょう。
テーブル空間index_spaceをfast_raidという名前に変更します。
ALTER TABLESPACE index_space RENAME TO fast_raid;
テーブル空間index_spaceの所有者を変更します。
ALTER TABLESPACE index_space OWNER TO mary;
標準SQLにはALTER TABLESPACE文はありません。