Résumé :ce tutoriel vous montre comment utiliser SQLite DELETE
déclaration pour supprimer des lignes d'une table.
Introduction à SQLite DELETE
déclaration
Vous avez appris à insérer une nouvelle ligne dans un tableau et à mettre à jour les données existantes d'un tableau. Parfois, vous devez supprimer des lignes d'une table. Dans ce cas, vous utilisez SQLite DELETE
déclaration.
Le SQLite DELETE
L'instruction vous permet de supprimer une ligne, plusieurs lignes et toutes les lignes d'une table. La syntaxe du SQLite DELETE
déclaration est la suivante :
DELETE FROM table
WHERE search_condition;
Code language: SQL (Structured Query Language) (sql)
Dans cette syntaxe :
- Tout d'abord, spécifiez le nom de la table dont vous souhaitez supprimer des lignes après le
DELETE FROM
mots-clés. - Deuxièmement, ajoutez une condition de recherche dans
WHERE
clause pour identifier les lignes à supprimer. LeWHERE
la clause est une partie facultative deDELETE
déclaration. Si vous omettez leWHERE
clause, laDELETE
l'instruction supprimera toutes les lignes du tableau.
SQLite fournit également une extension au DELETE
déclaration en ajoutant ORDER BY
et LIMIT
clauses. Si vous compilez SQLite avec l'option de compilation SQLITE_ENABLE_UPDATE_DELETE_LIMIT, vous pouvez utiliser le ORDER BY
et LIMIT
clause dans le DELETE
déclaration sous la forme suivante :
DELETE FROM table
WHERE search_condition
ORDER BY criteria
LIMIT row_count OFFSET offset;
Code language: SQL (Structured Query Language) (sql)
Le ORDER BY
la clause trie les lignes filtrées par la search_condition
précédente dans le WHERE
clause et la LIMIT
clause spécifie le nombre de lignes à supprimer.
Notez que lorsque vous utilisez le DELETE
instruction sans WHERE
clause sur une table qui n'a pas de déclencheurs. SQLite supprimera toutes les lignes en une seule fois au lieu de visiter et de supprimer chaque ligne individuelle. Cette fonctionnalité est connue sous le nom d'optimisation tronquée.
SQLite DELETE
exemples d'énoncés
Nous utiliserons le artists_backup
tableau créé dans le didacticiel sur l'insertion de lignes dans un tableau.
Si vous n'avez pas suivi ce tutoriel, vous pouvez créer le artists_backup
table et insérez-y des données à l'aide du script suivant :
-- 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)
L'instruction suivante renvoie toutes les lignes de artists_backup
tableau :
SELECT
artistid,
name
FROM
artists_backup;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Nous avons 280 lignes dans le artists_backup
tableau.
Pour supprimer un artiste avec l'id 1, vous utilisez la déclaration suivante :
DELETE FROM artists_backup
WHERE artistid = 1;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Parce que nous utilisons artistid
pour identifier l'artiste, la déclaration a supprimé exactement 1 ligne.
Supposons que vous vouliez supprimer les artistes dont les noms contiennent le mot Santana
:
DELETE FROM artists_backup
WHERE name LIKE '%Santana%';
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Il y a 9 lignes dont les valeurs dans le name
la colonne contient le mot Santana
par conséquent, ces 9 lignes ont été supprimées.
Pour supprimer toutes les lignes dans artists_backup
table, il vous suffit d'omettre le WHERE
clause sous la forme de l'instruction suivante :
DELETE FROM artists_backup;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Dans ce tutoriel, vous avez appris à utiliser SQLite DELETE
déclaration pour supprimer des lignes dans une table.