Insertion et modifications des enregistrements - INSERT, UPDATE et DELETE
Insertion des enregistrements - INSERT INTO
L'instruction INSERT INTO est utilisée pour ajouter de nouvelles lignes de données à une table de la base de données.
Syntaxe :
Elle existe deux syntaxes de l'instruction INSERT INTO, présentées ci-dessous.
INSERT INTO nom_table (colonne1, colonne2, colonne3,...colonneN) VALUES (valeur1, valeur2, value3,...valeurN);
Ici colonne1, colonne2, colonne3,...colonneN sont les noms des colonnes de la table dans laquelle vous souhaitez insérer les données.
Il se peut que vous n’ayez pas besoin de spécifier le nom de la ou des colonnes dans la requête SQL si vous ajoutez des valeurs pour toutes les colonnes de la table. Mais assurez-vous que l'ordre des valeurs est dans le même ordre que celui des colonnes du tableau.
INSERT INTO nom_table VALUES (valeur1, valeur2, value3,...valeurN);
Exemple 1 :
cette instruction ajoutera un seul enregistrement à la table Employes
INSERT INTO Employes (Id, Nom, Age, Salaire) VALUES(1, "Ismail", 25, 6000);
Comme nous remplissons toutes les colonnes, nous pouvons utiliser INSERT INTO sans spécifier les colonnes.
INSERT INTO Employes VALUES(1, "Ismail", 25, 6000);
+----+--------+-----+---------+ | Id | Nom | Age | Salaire | +----+--------+-----+---------+ | 1 | Ismail | 25 | 6000.00 | +----+--------+-----+---------+
Pour insérer plusieurs enregistrements dans la table, utilisez la syntaxe suivante
INSERT INTO nom_table VALUES (valeur1, valeur2, value3,...valeurN), (valeur1, valeur2, value3,...valeurN), (valeur1, valeur2, value3,...valeurN), ..... (valeur1, valeur2, value3,...valeurN);
Exemple 2 :
INSERT INTO Employes VALUES (2, "Mohamed", 30, 8000.40), (3, "Fatima", 29, 6000);
+----+---------+-----+---------+ | Id | Nom | Age | Salaire | +----+---------+-----+---------+ | 1 | Ismail | 25 | 6000.00 | | 2 | Mohamed | 30 | 8000.40 | | 3 | Fatima | 29 | 6000.00 | +----+---------+-----+---------+
Modification des enregistrements - UPDATE
La requête UPDATE est utilisée pour modifier les enregistrements existants dans une table. Vous pouvez utiliser la clause WHERE avec la requête UPDATE pour mettre à jour les lignes sélectionnées, sinon toutes les lignes seraient affectées.
Syntaxe :
UPDATE nom_table SET colonne1 = valeur1, colonne2 = valeur2...., colonneN = valeurN [WHERE condition];
Vous pouvez combiner un nombre plusieurs conditions à l’aide des opérateurs AND ou OR.
Exemple 3 :
Considérons la table Employes ayant les enregistrements suivants
+----+---------+-----+---------+ | Id | Nom | Age | Salaire | +----+---------+-----+---------+ | 1 | Ismail | 25 | 6000.00 | | 2 | Mohamed | 30 | 8000.40 | | 3 | Fatima | 29 | 6000.00 | | 4 | Dounia | 31 | 9000.00 | | 5 | Omar | 30 | 7500.00 | +----+---------+-----+---------+
La requête suivante mettra à jour le salaire d'un employé en ajoutant 900 DH à son ancien salaire.
UPDATE Employes SET Salaire=Salaire+900;
Maintenant, la table Employes aurait les enregistrements suivants :
+----+---------+-----+---------+ | Id | Nom | Age | Salaire | +----+---------+-----+---------+ | 1 | Ismail | 25 | 6900.00 | | 2 | Mohamed | 30 | 8900.40 | | 3 | Fatima | 29 | 6900.00 | | 4 | Dounia | 31 | 9900.00 | | 5 | Omar | 30 | 8400.00 | +----+---------+-----+---------+
La requête suivante mettra à jour le salaire de chaque employé dont l'âge est supérieur ou égal à 30 ans.
UPDATE Employes SET Salaire=Salaire+500 WHERE age>=30;
Maintenant, la table Employes aurait les enregistrements suivants :
+----+---------+-----+----------+ | Id | Nom | Age | Salaire | +----+---------+-----+----------+ | 1 | Ismail | 25 | 6900.00 | | 2 | Mohamed | 30 | 9400.40 | | 3 | Fatima | 29 | 6900.00 | | 4 | Dounia | 31 | 10400.00 | | 5 | Omar | 30 | 8900.00 | +----+---------+-----+----------+
Suppression des enregistrements - DELETE
La requête DELETE est utilisée pour supprimer les enregistrements existants d'une table.
Vous pouvez utiliser la clause WHERE avec une requête DELETE pour supprimer les lignes sélectionnées, sinon tous les enregistrements seraient supprimés.
Syntaxe :
DELETE FROM nom_table [WHERE condition];
Exemple 4 :
La requête suivante supprime un employé dont l'Id est 4.
DELETE FROM Employes WHERE Id=4;
Maintenant, la table Employes aurait les enregistrements suivants :
+----+---------+-----+---------+ | Id | Nom | Age | Salaire | +----+---------+-----+---------+ | 1 | Ismail | 25 | 6900.00 | | 2 | Mohamed | 30 | 9400.40 | | 3 | Fatima | 29 | 6900.00 | | 5 | Omar | 30 | 8900.00 | +----+---------+-----+---------+
Si vous souhaitez supprimer tous les enregistrements de la table Employes, vous n'avez pas besoin d'utiliser la clause WHERE.
DELETE FROM Employes;
Maintenant, la table Employes n’aurait aucun enregistrement.