Oracle ORA-01940: 无法删除当前连接的用户
当我们要删除一个oracle的用户时,如果有其他人连接到数据库则会报以下错误:
ORA-01940: 无法删除当前连接的用户
处理办法就是:将连接到当前用户的session给kill掉。
处理步骤如下:
1、可用sys用户登录,查询有哪些连接信息
select username,sid,serial# from v$session
执行结果:
2、用命令杀掉一个连接。如果我要杀掉上图中被选中的连接,可以这样写:
alter system kill session '821,33'
3、如果要一次kill掉多个连接信息,可以写一个查询语句:把满足条件的连接,拼凑成批处理命令然后执行。
SELECT 'alter system kill session '''||sid||','||serial#||''';' FROM v$session WHERE USERNAME='你的用户名'
执行结果如下:
将执行结果内容复制出来,再进行执行就可以做到批量删除连接信息了。