SQLite
 sql >> Database >  >> RDS >> SQLite

Elimina SQLite

Riepilogo :questo tutorial ti mostra come usare SQLite DELETE istruzione per rimuovere righe da una tabella.

Introduzione a SQLite DELETE dichiarazione

Hai imparato come inserire una nuova riga in una tabella e aggiornare i dati esistenti di una tabella. A volte, è necessario rimuovere le righe da una tabella. In questo caso, usi SQLite DELETE dichiarazione.

SQLite DELETE istruzione consente di eliminare una riga, più righe e tutte le righe in una tabella. La sintassi di SQLite DELETE dichiarazione è la seguente:

DELETE FROM table
WHERE search_condition;Code language: SQL (Structured Query Language) (sql)

In questa sintassi:

  • In primo luogo, specifica il nome della tabella di cui desideri rimuovere le righe dopo DELETE FROM parole chiave.
  • In secondo luogo, aggiungi una condizione di ricerca in WHERE clausola per identificare le righe da rimuovere. Il WHERE La clausola è una parte facoltativa di DELETE dichiarazione. Se ometti il ​​WHERE clausola, il DELETE istruzione cancellerà tutte le righe nella tabella.

SQLite fornisce anche un'estensione per DELETE dichiarazione aggiungendo ORDER BY e LIMIT clausole. Se compili SQLite con l'opzione di compilazione SQLITE_ENABLE_UPDATE_DELETE_LIMIT, puoi utilizzare ORDER BY e LIMIT clausola nel DELETE dichiarazione come il seguente modulo:

DELETE FROM table
WHERE search_condition
ORDER BY criteria
LIMIT row_count OFFSET offset;Code language: SQL (Structured Query Language) (sql)

Il ORDER BY La clausola ordina le righe filtrate dalla search_condition precedente nel WHERE clausola e il LIMIT La clausola specifica il numero di righe da eliminare.

Nota che quando usi DELETE dichiarazione senza un WHERE clausola su una tabella che non ha trigger. SQLite eliminerà tutte le righe in un colpo solo invece di visitare ed eliminare ogni singola riga. Questa funzione è nota come ottimizzazione del troncamento.

SQLite DELETE esempi di affermazioni

Useremo il artists_backup tabella creata nell'esercitazione su come inserire righe nella tabella.

Se non hai seguito quel tutorial, puoi creare il artists_backup tabella e inserire i dati in essa utilizzando il seguente script:

-- create artists backup table
CREATE TABLE artists_backup(
   artistid INTEGER PRIMARY KEY AUTOINCREMENT,
   name NVARCHAR
);
-- populate data from the artists table
INSERT INTO artists_backup 
SELECT artistid,name
FROM artists;Code language: SQL (Structured Query Language) (sql)

La seguente istruzione restituisce tutte le righe da artists_backup tabella:

SELECT
	artistid,
	name
FROM
	artists_backup;Code language: SQL (Structured Query Language) (sql)

Provalo

Abbiamo 280 righe nel artists_backup tabella.

Per rimuovere un artista con ID 1, utilizza la seguente istruzione:

DELETE FROM artists_backup
WHERE artistid = 1;Code language: SQL (Structured Query Language) (sql)

Provalo

Perché usiamo artistid per identificare l'artista, la dichiarazione ha rimosso esattamente 1 riga.

Supponiamo di voler eliminare artisti i cui nomi contengono la parola Santana :

DELETE FROM artists_backup
WHERE name LIKE '%Santana%';Code language: SQL (Structured Query Language) (sql)

Provalo

Ci sono 9 righe i cui valori sono in name la colonna contiene la parola Santana pertanto, queste 9 righe sono state eliminate.

Per rimuovere tutte le righe nel artists_backup tabella, devi solo omettere il WHERE clausola come la seguente affermazione:

DELETE FROM artists_backup;Code language: SQL (Structured Query Language) (sql)

Provalo

In questo tutorial, hai imparato a usare SQLite DELETE istruzione per rimuovere le righe in una tabella.