语法格式
删除模式的 SQL 命令格式如下:
DROP SCHEMA <模式名> [RESTRICT | CASCADE];
如果使用 RESTRICT 选项,只有当模式为空时删除才能成功,否则,当模式中存在数据库对象时则删除失败。默认选项为 RESTRICT 选项。
如果使用 CASCADE 选项,则整个模式、模式中的对象,以及与该模式相关的依赖关系都被删除。
应用举例
以用户 SYSDBA 登录,删除 DMHR2 模式。
(1)以 SYSDBA 用户登录数据库:
SQL> CONN SYSDBA/SYSDBA;
服务器[LOCALHOST:5236]:处于普通打开状态 使用普通用户登录
(2)直接删除 DMHR2 模式:
SQL> DROP SCHEMA dmhr2;
DROP SCHEMA dmhr2;
第 1 行附近出现错误[-5001]:模式[DMHR2]不为空.
删除失败的原因是 DMHR2 模式不为空,存在数据库对象 TAB1,不能删除非空的模式。
(3)使用 CASCADE 选项删除 DMHR2 模式:
SQL> DROP SCHEMA dmhr2 CASCADE;
该命令执行成功,使用 CASCADE 选项将整个模式、模式中的对象及其依赖关系全部删除。
附加说明
(1)<模式名>必须是当前数据库中已经存在的模式。
(2)用该语句的用户必须具有 DBA 权限或是该模式的所有者。