Fondamentalmente credo che uccidere tutte le sessioni dovrebbe essere la soluzione, ma ...
Ho trovato una discussione simile - https://community.oracle.com/thread/1054062 al mio problema e che non ho avuto sessioni per gli utenti, ma ho comunque ricevuto l'errore. Ho provato anche secondo la migliore risposta:
sql>Shutdown immediate;
sql>startup restrict;
sql>drop user TEST cascade;
cosa ha funzionato per me alla fine è stato quello di effettuare il login come utente, eliminare tutte le tabelle manualmente - selezionare per la creazione di dichiarazioni goccia è
select 'drop table ' || TABLE_NAME || ';' from user_tables;
(ha bisogno di essere ri-eseguire più volte a causa di riferimenti)
non ho idea di come è quello relativo, ho lasciato cadere anche le funzioni e sequenze (perché quello era tutto quello che avevo nello schema)
W Quando l'ho fatto e mi sono disconnesso, ho avuto diverse sessioni nel tavolo v$session
e quando ho ucciso quelle sono riuscito a far cadere l'utente.
Il mio DB era ancora avviato in modalità limitata (non sono sicuro se importante o meno).
Potrebbe aiutare qualcun altro.
BTW: la mia versione di Oracle è Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
È risposta può essere qui: http://anilanbu.blogspot.com/2012/02/ora-01940-cannot-drop-user-that-is.html – Art
L'ho provato, ma non ho trovato alcuna riga quando ho cercato di scoprire le sessioni. – Chaitanya
Ho scoperto perché non sto ottenendo i record di sessione, la mia condizione dovrebbe essere su username = 'TEST' – Chaitanya