1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Oracle删除当前用户下的所有表 视图 序列 函数 存储过程 包

Oracle删除当前用户下的所有表 视图 序列 函数 存储过程 包

时间:2023-12-26 13:05:00

相关推荐

Oracle删除当前用户下的所有表 视图 序列 函数 存储过程 包

先登录需要删除的用户,查询以下SQL得到用户下的所有需要删除的信息,拷贝查询到的的信息执行。

--delete tables select 'drop table ' || table_name ||';'||chr(13)||chr(10) from user_tables; --delete views select 'drop view ' || view_name||';'||chr(13)||chr(10) from user_views; --delete seqs select 'drop sequence ' || sequence_name||';'||chr(13)||chr(10) from user_sequences; --delete functions select 'drop function ' || object_name||';'||chr(13)||chr(10) from user_objects where object_type='FUNCTION'; --delete procedure select 'drop procedure ' || object_name||';'||chr(13)||chr(10) from user_objects where object_type='PROCEDURE'; --delete package select 'drop package ' || object_name||';'||chr(13)||chr(10) from user_objects where object_type='PACKAGE';

完毕后使用权限高的用户在把需要删除的用户给删掉!

删除的时候建议登录oracle服务器使用命令行登录操作

sqlplus / as sysdba查询需要删除的用户当前是否还有链接,查询没数据可以直接删除select sid,serial# from v$session where username='大写用户名';查询有数据需要kill掉相关进程(立即断开用户session,未完成的事务自动会滚。)alter system disconnect session 'sid,serial#' immediate ;如果查询有数据不进行kill会报错如下:ERROR at line 1:ORA-01940: cannot drop a user that is currently connected删除 drop user 用户名称 cascade;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。