Oracle
 sql >> Database >  >> RDS >> Oracle

Come eliminare una riga in Oracle

Questo tutorial SQL fornisce spiegazioni ed esempi per Elimina dalla tabella in Oracle

Elimina dalla tabella viene utilizzato in Oracle Sql per eliminare le righe nella tabella. È un'istruzione DML (Data Manipulation Language). Viene utilizzato per eliminare il sottoinsieme di righe esistenti o tutte le righe esistenti dalla tabella.

Ecco la sintassi di eliminazione in Oracle

Qui la tabella è il nome della tabella e la condizione che specifica le righe da eliminare  ed è composta da colonne, sottoquery ed espressioni

Punti importanti.

  • L'istruzione Elimina richiede un blocco sulla tabella
  • Dobbiamo impegnarci a modificare in modo permanente la data (commit;)
  • Possiamo usare il comando rollback per annullare le modifiche all'istruzione delete ( rollback;)
  • se vengono definiti i trigger all'eliminazione, verrà attivato per ogni riga eliminata
  • se vuoi scoprire quante righe verranno eliminate dall'istruzione delete, puoi prima attivare l'istruzione select con la stessa clausola where per scoprire il numero di righe

Prendiamo alcuni modi per utilizzare l'istruzione DELETE

ELIMINA righe specifiche dalla tabella o Come si elimina un record da Oracle

Supponiamo di voler eliminare le righe in cui column name name='JOHN'

delete from emp where name='JOHN';
commit;

or 
delete from emp where name='JOHN';
rollback;

o

Supponiamo di voler eliminare un reparto dalla tabella di reparto

delete from dept where dept_no= 10;
commit;

Queste istruzioni elimineranno tutte le righe contenenti quel particolare valore di colonna. Dopo che l'istruzione di eliminazione è stata completata, mostrerà quante righe sono state eliminate. dobbiamo eseguire il commit per apportare le modifiche in modo permanente.

Se nessuna riga viene eliminata, verranno visualizzate 0 righe eliminate.

ELIMINA TUTTE le righe dalla tabella in Oracle o Come si eliminano tutti i record dalla tabella

Supponiamo di voler eliminare tutte le righe dalla tabella di esempio, quindi l'istruzione sarebbe

Delete from example;

delete from employee;

delete from fnd_users;
commit;

Eliminerà tutte le righe dalla tabella Oracle e stamperà quante righe sono state eliminate, che è in realtà il conteggio della tabella.

Ciò non reimposta il limite massimo della tabella. e usa annulla. Potresti voler utilizzare la tabella Tronca nel comando Oracle che ripristina l'HWM (filigrana alta) e annulla molto meno dell'istruzione di eliminazione

ELIMINA righe dalla tabella in base alla sottoquery in Oracle

L'istruzione Delete può essere utilizzata con una sottoquery per eliminare le righe

Supponiamo di voler eliminare le righe in Emp in base al nome di reparto nella tabella di reparto, quindi l'istruzione di eliminazione sarebbe come

delete from emp where dept_id = (select dept_id from dept where dept_name='SALES');
commit;

L'istruzione sopra cercherà prima dept_id dalla tabella dept dove dept_name è vendite. e quindi invia dept_id all'istruzione delete per la tabella emp

DELETE righe dalla tabella utilizzando la clausola EXISTS/NOT EXISTS

Questa è un'altra forma di eliminazione utilizzando solo sottoquery. Viene utilizzato quando si desidera confrontare due tabelle per eliminare i dati

Supponiamo di voler eliminare i record dalla tabella di reparto in cui non ci sono dipendenti

delete from
FROM dept d
WHERE NOT EXISTS
(SELECT * FROM emp e
WHERE d.dept_id
= e.dept_id);
commit;

Spero che questo contenuto ti piaccia su Come eliminare una riga in Oracle

Articoli correlati
Alter Table in Oracle :Alter table in Oracle viene utilizzato per modificare una colonna, eliminare e aggiungere vincoli, modificare il tipo di dati della colonna della tabella, modificare i parametri di archiviazione della tabella
Creazione di una tabella temporanea globale in Oracle
Istruzione di aggiornamento in Oracle:utilizziamo l'istruzione di aggiornamento in Oracle per modificare le righe esistenti nella tabella di Oracle nel database di Oracle. Un aggiornamento può essere eseguito in diversi modi
DROP TABLE ORACLE:informazioni sull'eliminazione di tabelle in Oracle, sull'eliminazione di tabelle se esiste in Oracle, sull'eliminazione di più tabelle in un comando, sull'eliminazione dei vincoli a cascata delle tabelle
Oracle Create table:Tables sono l'unità di base dell'archiviazione dei dati in un database Oracle. descriviamo come utilizzare il comando Oracle create table per creare una tabella con una chiave esterna/chiave primaria
Documentazione Oracle sull'eliminazione
oracle delete cascade:controlla questo post su come risolvere ORA-02292 utilizzando Oracle delete cascade con esempio dettagliato e spiegazione