您的位置:首页 > 其它

ORA-01940:无法删除当前已链接的用户

2011-09-15 09:22 281 查看
删除某个用户时报ORA-01940,是由于该用户还有session连接,因此先用sysdba用户kill该用户session,再删除该用户即可。示例如下:

SQL> drop user PDS cascade;

drop user PDS cascade //PDS为数据库用户名

*

ERROR 位于第 1 行:

ORA-01940: 无法删除当前已连接的用户

SQL> select username,sid,serial# from v$session;

USERNAME SID SERIAL#

------------------------------ ---------- ----------

SYS 10141 53

ADRIANO 10234,24

已选择2行。

SQL> alter system kill session'10234,24';

系统已更改。

SQL> drop user ADRIANO cascade;

用户已丢弃

如果在drop 后还提示ORA-01940:无法删除当前已链接的用户,说明还有连接的session,可以通过查看session的状态来确定该session是否被kill 了,用如下语句查看:

sql>select saddr,sid,serial#,paddr,username,status from v$session where username is not null

status 为要删除用户的session状态,如果还为inactive,说明没有被kill掉,如果状态为killed,说明已kill。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: