在 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+
输出:
相关用法
- PostgreSQL CREATE TABLESPACE用法及代码示例
- PostgreSQL ALTER TABLESPACE用法及代码示例
- PostgreSQL DROP DATABASE用法及代码示例
- PostgreSQL DROP COLUMN用法及代码示例
- PostgreSQL DROP TABLE用法及代码示例
- PostgreSQL DROP SCHEMA用法及代码示例
- PostgreSQL Drop用法及代码示例
- PostgreSQL DROP TRIGGER用法及代码示例
- PostgreSQL DROP INDEX用法及代码示例
- PostgreSQL DROP ROLE用法及代码示例
注:本文由纯净天空筛选整理自RajuKumar19大神的英文原创作品 PostgreSQL – DROP TABLESPACE。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。