如何删除Oracle数据库用户及用户下的实体

如何删除Oracle数据库用户及用户下的实体,第1张

前提要确保数据库服务及监听均处于启动状态。
具体方法/步骤 :
1通过在开始输入cmd,进入Dos命令窗口。
2输入sqlplus system/system密码@数据库名称,点回车,从而连通数据库。
3在上述窗口中输入select username from dba_users,点回车,以显示当前数据库实例中的用户名;
4选择要删除的用户,在当前窗口中输入:drop user USERNAME cascade; 点回车。
5稍等片刻,即可完成数据库用户删除动作;

1、如果想要删除相应的表格,那么首先要知道表格位于那个数据库,这样才可以进行删除。

2、然后需要打开数据库,你会看到数据库内有很多表格。

3、往下拉,我们自己新建的表格一般都是位于最末端,找到表格右击。

4、右击选择“表”你会看到侧边栏会d出“删除”点击他。

5、这时会提示你是否删除表格,如果想要彻底删除表格,那么必须要将约束条件和清除√这样才会删除的更彻底。

1保留表,只删除数据:
truncate table mytable;
或者:
delete from mytable where 1 = 1 ;
commit;
2删除表本身:
drop table mytable;
如果要永久性删除,不准备在恢复:
drop table mytable purge;
不明的可以hi我。

1、首先复制一张表成3张复制表,分别对3张复制表进行drop、delete、truncate语句的 *** 作,如图。

2、语句运行结果,如图只要delete有影响条数其他没有。

3、然后再来看表会发现执行drop表被删除了,如图。

4、然后打开表查看表数据可以看出TRUNCATE是清空表数据,delete是删除指定的条件数据,如图。

5、还要就是表设计中的自增值的不同,TRUNCATE执行的表自增又从1开了,还有就是delete的数据可以回滚还原,TRUNCATE的不可以,如图。

不管是主机上还是客户端上,使用具备dba角色的用户登录到数据库的sqlplus环境,直接删除用户,就可以把该用户下的而所有对象都删除,包括表、序列。或者使用该用户登录到sqlplus,从user_tables和user_sequences视图中选出所有的表和序列,然后执行drop table 和drop sequence 来批量删除所有的表和序列。使用exp和imp工具导出、导入dmp文件。

如果这个用户下已经创建了数据库对象(比如表、视图、存储过程等),则需要用
drop user xxxxx cascade ; 的方式来删除该数据库用户。
不过需要注意,这个方式就将该用户的所有数据库对象删除了,要慎用!
没有办法保留用户的数据库对象 情况下删除用户。
如果这个用户下没数据库对象,那么用 drop user xxxx 即可。当然前提是xxxx 没有 登录到数据库中;你有删除用户的权限等等。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13343203.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-18
下一篇 2023-07-18

发表评论

登录后才能评论

评论列表(0条)

保存