更新时间:2024-12-13 GMT+08:00
分享

DROP SCHEMA

语法

DROP (DATABASE|SCHEMA) [IF EXISTS] databasename [RESTRICT|CASCADE]

描述

从Catalog中删除指定的数据库,如果数据库中包含表,则必须在执行DROP DATABASE之前删除这些表,或者使用CASCADE模式。

DATABASE和SCHEMA在概念上是等价可互换的。

[IF EXISTS]

如果目标数据库不存在,将抛出错误提示,但如果使用了IF EXISTS子句则不会抛出错误提示。

[RESTRICT|CASCADE]

可选参数RESTRICT|CASCADE用于指定删除的模式默认是RESTRICT模式,在这种模式下,数据库必须为空,不包含任何表才能删除,如果是CASCADE模式,表示级联删除,会先删除数据库下面的表 ,再删除数据库,该模式请谨慎使用。

示例

  • 删除schema web:
    DROP SCHEMA web;
  • 如果schema sales存在,删除该schema:
    DROP SCHEMA IF EXISTS sales;
  • 级联删除schema test_drop,schema test_drop中存在表tb_web,会先删除tb_web,再删除test_drop:
    CREATE SCHEMA test_drop;
     
    CREATE TABLE tb_web(col1 int);
     
    DROP DATABASE test_drop CASCADE;

相关文档