當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


PostgreSQL DROP TABLESPACE用法及代碼示例

在 PostgreSQL 中,DROP TABLESPACE語句用於刪除表空間。

用法:DROP TABLESPACE [IF EXISTS] tablespace_name;

讓我們分析以上語法:

  • 第一的指定要刪除的表空間的名稱刪除表空間關鍵字。
  • 其次,使用如果存在在表空間不存在的情況下處理錯誤的選項。

注意:需要注意的是,隻有表空間所有者或超級用戶才能執行刪除表空間陳述。

例:

第一的我們創建一個名為的新表空間GFG 並將其映射到 C:\數據\gfg目錄:



CREATE TABLESPACE gfg
LOCATION 'C:\data\gfg';

現在創建一個數據庫命名db_gfg並將其表空間設置為GFG

CREATE DATABASE db_gfg 
TABLESPACE = gfg;

現在創建一個新表命名測試在裏麵db_gfg並設置它表空間GFG

CREATE TABLE test (
    ID serial PRIMARY KEY,
    title VARCHAR (255) NOT NULL
) TABLESPACE gfg;

以下語句返回所有對象GFG 表空間:

SELECT
    table_space.spcname,
    class.relname
FROM
    pg_class class
JOIN pg_tablespace table_space 
    ON class.reltablespace = table_space.oid
WHERE
    table_space.spcname = 'gfg';

這將導致以下情況:

現在,如果您嘗試刪除GFG表空間:

DROP TABLESPACE gfg;

這將引發以下錯誤:

由於 gfg 表空間不為空,因此無法刪除該表空間。現在,登錄到 Postgres 數據庫並刪除 db_gfg 數據庫:

DROP DATABASE db_gfg;

現在刪除GFG再次表空間:

DROP TABLESPACE gfg;

現在使用以下命令檢查表空間以進行驗證:

\db+

輸出:

相關用法


注:本文由純淨天空篩選整理自RajuKumar19大神的英文原創作品 PostgreSQL – DROP TABLESPACE。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。