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

数据库中删除某个用户时报ORA-01940,是由于该用户还有session连接,因此先用sysdba用户kill该用户session,再删除该用户即可。示例如下:
SQL> drop user PDS cascade;
drop user PDS cascade //PDS为数据库用户名
ORA-01940: 无法删除当前已连接的用户
 
SQL> select username,sid,serial# from v$session;
USERNAME      SID          SERIAL#
-------- -------- ----------
SYS                153              7
TEST              267              13
 
若要删除用户TEST,先将其session kill
SQL> alter system kill session'267,13';
然后删除用户TEST
SQL> drop user  TEST 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。

你可能感兴趣的:(数据库,职场,用户,休闲)