• Oracle中drop user和drop user cascade的区别


    SQL> delete user itp2;
    delete user itp2
    *
    第 1 行出现错误:
    ORA-00903: 表名无效

    SQL> drop user itp2;
    drop user itp2
    *
    第 1 行出现错误:
    ORA-01940: 无法删除当前已连接的用户

    SQL> drop user itp2;
    用户已删除。
    SQL> drop user itp;
    drop user itp
    *
    第 1 行出现错误:
    ORA-01922: 必须指定 CASCADE 以删除 'ITP'

    SQL> drop user itp cascade;
    用户已删除。
    SQL>
    drop user ; 仅仅是删除用户,
    drop user ×× cascade ;会删除此用户名下的所有表和视图。

    user
    Specify the user to be dropped. Oracle Database does not drop users whose schemas
    contain objects unless you specify CASCADE or unless you first explicitly drop the
    user's objects.

    CASCADE
    Specify CASCADE to drop all objects in the user's schema before dropping the user. You
    must specify this clause to drop a user whose schema contains any objects.

    使用 cascade参数可以删除该用户的全部objects。要说明的如下:

    1 If the user's schema contains tables, then Oracle Database drops the tables and
    automatically drops any referential integrity constraints on tables in other schemas
    that refer to primary and unique keys on these tables.

    如果用户的schema中有表,则在删除表的时候自动删除与该表相关的主键和外键。

    2 If this clause results in tables being dropped, then the database also drops all
    domain indexes created on columns of those tables and invokes appropriate drop
    routines.
    如果用户的schema中有表,则在删除表的时候自动删除与该表相关的索引。


    3 Oracle Database invalidates, but does not drop, the following objects in other
    schemas:
    删除用户时,下列在其他用户中的objects不会被删除,只会被置为无效

    1 Views or synonyms for objects in the dropped user's schema
    视图,同义词

    2 Stored procedures, functions, or packages that query objects in the dropped
    user's schema
    存储过程,函数,包

    4 Oracle Database does not drop materialized views in other schemas that are based
    on tables in the dropped user's schema. However, because the base tables no
    longer exist, the materialized views in the other schemas can no longer be
    refreshed.
    其他用户建立的基于被删除用户的物化视图不会被删除,只是不能在刷新了。

    5 Oracle Database drops all triggers in the user's schema.
    用户模式下的所有触发器全部被删除

    6 Oracle Database does not drop roles created by the user.
    被删除用户建立的其他用户不会被删除

  • 相关阅读:
    axios中put和patch的区别(都是update , put是需要提交整个对象资源,patch是可以修改局部)
    父子组件传值
    springboot+mybatis 配置sql打印日志
    spring cloud eureka
    springAop
    java线程dump分析工具
    02.java并发编程之原子性操作
    01线程的一些方法
    Spring validator常用注解
    Idea报错Command line is too long
  • 原文地址:https://www.cnblogs.com/wpcnblog/p/15547344.html
Copyright © 2020-2023  润新知