Questo post discuterà di come è possibile utilizzare il comando utente drop in Oracle per eliminare un determinato utente dal database.
Dichiarazione utente di Oracle Drop
Come affermato, il comando drop utente consente di rimuovere un account utente dal database. Ciò include anche la rimozione di tutti gli oggetti dello schema associati dal database.
Di seguito è riportato uno snippet di codice che dimostra la sintassi del comando utente drop nel server Oracle:
Drop User Username [Cascade];Iniziamo invocando il comando utente drop, seguito dal nome utente dell'utente che desideriamo rimuovere dal database.
L'opzione Cascade consente a Oracle di rimuovere tutti gli oggetti dello schema associati come tabelle, viste, funzioni, ecc., per quell'utente.
Puoi anche superarlo rimuovendo tutti gli oggetti schema collegati prima di rimuovere l'account utente. Per semplicità, utilizzare l'opzione Cascade e consentire al motore del database di rimuovere gli oggetti dello schema associato prima di abbandonare l'account utente di destinazione.
In alcuni casi, Oracle potrebbe non rimuovere gli oggetti dello schema se altri oggetti nel database li fanno riferimento. In tal caso, Oracle invalida i riferimenti target prima di rimuovere l'utente. Ciò rilascia l'account target per la rimozione senza alcuna restrizione o errore.
Tieni presente che ciò può influenzare i vari oggetti come viste materializzate. Allo stesso modo, il motore del database non rimuoverà i ruoli creati dall'utente di destinazione.
Esempio Drop Drop Command Illustration
I seguenti sono esempi che dimostrano come abbandonare un utente di database in Oracle.
Crea un utente di database
Inizia accedendo al database Oracle e crea un nuovo utente:
$ sqlplus sys come sysdba;Una volta effettuato l'accesso al server, creare un utente per scopi dimostrativi. Puoi saltare questo passaggio se hai già un utente di destinazione che desideri rimuovere.
SQL> Crea Python utente identificato da password124;Il comando precedente crea un utente senza oggetti schema. In questo caso, possiamo eseguire il comando drop utente senza ottenere alcun errore o inizialmente rimuovere gli oggetti associati.
Esempio 1: Oracle Rimuovi l'utente senza oggetti Schema associati
In questo esempio, dimostriamo come rimuovere un utente senza oggetti schema collegati chiamando il comando utente drop come segue:
SQL> Drop User Python;Come puoi vedere, abbiamo rimosso correttamente l'utente Python senza rimuovere gli oggetti dello schema o chiamare il parametro Cascade.
Esempio 2: Oracle Rimuovi l'utente con oggetti Schema
Per dimostrare come utilizzare il comando utente drop su un utente con oggetti schema associati, iniziamo creando un utente con le autorizzazioni per creare una tabella e una sessione.
Un'affermazione di esempio è la seguente:
SQL> Crea Python utente identificato dalla quota di password124 illimitata sugli utenti;Le dichiarazioni precedenti un utente Python con una quota illimitata sulla tabella degli utenti. Poiché si tratta di un account di prova, è possibile impostare qualsiasi dimensione della quota richiesta.
Una volta impostata l'utente, accedi come account e crea una nuova tabella come segue:
SQL> Connetti Python/Password124Una volta connesso, crea una tabella:
Crea table Sample_data (Successivamente, esci dalla sessione utente di Python.
SQL> DisconnectIn questo caso, se tentiamo di rimuovere l'utente di Python chiamando il comando utente DROP, riceviamo un messaggio che ci dice che dobbiamo in cascata gli oggetti associati come segue:
SQL> Drop User Python;Messaggio di errore:
Errore alla riga 1:Pertanto, per rimuovere l'utente di Python, dobbiamo prima abbandonare la tabella associata o specificare l'opzione Cascade come segue:
SQL> Drop User Python Cascade;In tal caso, Oracle può rimuovere l'utente e gli oggetti dello schema correlati.
Conclusione
In questo post, abbiamo discusso e illustrato l'utilizzo del comando utente drop nei database Oracle. Utilizzare il comando Utente DROP per rimuovere un utente senza oggetti schema associati dal database. Se l'utente ha oggetti schema collegati, includi l'opzione Cascade per rimuovere l'utente e gli oggetti correlati.