Insérer dans le SQL – Comment insérer dans une requête de table [Exemple de déclaration]

Si vous souhaitez ajouter des données à votre table SQL, vous pouvez utiliser l’instruction INSERT.

Dans cet article, je vais vous montrer comment utiliser l’instruction INSERT pour ajouter une ligne unique, plusieurs lignes et copier des lignes d’une table SQL à une autre.

Syntaxe INSERT de base

Voici la syntaxe de base pour ajouter des lignes à une table en SQL :

INSERT INTO nom_table (colonne1, colonne2, colonne3, etc)
VALUES (valeur1, valeur2, valeur3, etc) ;

La première ligne de code utilise l’instruction INSERT suivie du nom de la table à laquelle vous voulez ajouter les données. Après le nom de la table, vous devez spécifier les noms des colonnes.

La deuxième ligne de code est celle où vous ajouterez les valeurs pour les lignes. Il est important que le nombre de valeurs corresponde au nombre de colonnes spécifiées, sinon vous obtiendrez un message d’erreur.

Comment ajouter une ligne à une table SQL

Dans cet exemple, nous avons une table appelée dogs avec les colonnes id, name et gender. Nous voulons ajouter un chien appelé AXEL.

Voici à quoi ressemble le code pour ajouter AXEL à la table :

INSERT INTO chiens(id, nom, sexe) VALUES (1, 'AXEL', 'M') ;

Voici à quoi ressemble le tableau.

Voir aussi :  Comptage SQL - Comment sélectionner, additionner et calculer la moyenne des lignes en SQL
Screen-Shot-2021-10-06-at-5.19.41-AM

Que se passe-t-il si le nombre de valeurs ne correspond pas au nombre de colonnes ?

Comme indiqué précédemment, le nombre de colonnes doit correspondre au nombre de valeurs.

Si je modifie le code pour supprimer une valeur, j’obtiendrai un message d’erreur.

INSERT INTO chiens(id, nom, sexe) VALUES (1, 'AXEL') ;
Screen-Shot-2021-10-06-at-5.22.25-AM

Puisque nous avons spécifié 3 colonnes, nous devons fournir trois valeurs pour chaque ligne ajoutée au tableau.

Que se passe-t-il si vous ignorez les contraintes de colonne ?

Lorsque vous créez des tables SQL, vous ajoutez des contraintes de colonne qui servent de règles pour la colonne.

Dans notre tableau des chiens, les colonnes nom et sexe ont une contrainte de NOT NULL. Cette règle signifie qu’une valeur ne peut pas être absente de la ligne.

Lorsque j’essaie d’ajouter NULL pour le sexe, je reçois un message d’erreur.

INSERT INTO chiens(id, nom, sexe) VALUES (1, 'AXEL', NULL) ;
Screen-Shot-2021-10-06-at-5.46.44-AM

Toutes les contraintes que vous avez spécifiées lors de la création de votre table SQL doivent être respectées lors de l’ajout de lignes.

Comment ajouter plusieurs lignes à une table en SQL

Si vous souhaitez ajouter plusieurs lignes à une table en une seule fois, vous pouvez utiliser cette syntaxe :

INSERT INTO nom_table (colonne1, colonne2, colonne3, etc)
VALUES 
	(valeur1, valeur2, valeur3, etc),
    (valeur1, valeur2, valeur3, etc),
    (valeur1, valeur2, valeur3, etc) ;
	

Il est important de ne pas oublier les virgules entre chacune des lignes, sinon vous obtiendrez un message d’erreur.

Screen-Shot-2021-10-06-at-5.58.22-AM

Voici à quoi ressemblerait le code pour ajouter huit chiens à la table en une seule fois :

INSERT INTO chiens(id, nom, sexe) 
VALUES 
    (1, 'AXEL', 'M'),
    (2, 'Annie', 'F'),
    (3, 'Ace', 'M'),
    (4, 'Zelda', 'F'),
    (5, Diesel, M),
    (6, Tilly, F),
    (7, Leroy, M),
    (8, 'Olivia', 'F') ;

Voici à quoi ressemble le tableau maintenant :

Voir aussi :  Instruction SQL LIKE - Comment effectuer une requête SQL avec des caractères génériques ?
Screen-Shot-2021-10-06-at-6.00.14-AM

Comment copier les lignes d’une table et les insérer dans une autre table ?

Vous pouvez utiliser les instructions SELECT et INSERT pour copier des lignes d’une table SQL vers une autre.

Voici la syntaxe de base :

INSERT INTO nom_table1 (colonnes) 
SELECT colonnes de nom_table2 ;

Dans cet exemple, j’ai créé une table chats contenant trois lignes avec les mêmes noms de colonnes que la table chiens.

Screen-Shot-2021-10-06-at-6.26.46-AM

Nous pouvons ajouter toutes les données des chats dans la table des chiens en utilisant le code suivant :

INSERT INTO chiens SELECT * FROM chats ;

Voici à quoi ressemble la nouvelle table dogs avec les chats supplémentaires :

Screen-Shot-2021-10-06-at-6.27.43-AM

Conclusion

Si vous souhaitez ajouter des données à votre table SQL, vous pouvez utiliser l’instruction INSERT.

Voici la syntaxe de base pour ajouter des lignes à votre table SQL :

INSERT INTO nom_table (colonne1, colonne2, colonne3, etc)
VALUES (valeur1, valeur2, valeur3, etc) ;

La deuxième ligne de code est celle où vous ajouterez les valeurs pour les lignes. Il est important que le nombre de valeurs corresponde au nombre de colonnes spécifié, sinon vous obtiendrez un message d’erreur.

Si vous essayez d’ignorer les contraintes de colonne en ajoutant des lignes au tableau, vous recevrez un message d’erreur.

Si vous souhaitez ajouter plusieurs lignes à un tableau en une seule fois, vous pouvez utiliser cette syntaxe :

INSERT INTO nom_table (colonne1, colonne2, colonne3, etc)
VALEURS 
	(valeur1, valeur2, valeur3, etc),
    (valeur1, valeur2, valeur3, etc),
    (valeur1, valeur2, valeur3, etc) ;

Vous pouvez utiliser les instructions SELECT et INSERT pour copier des lignes d’une table SQL à une autre.

Voir aussi :  SQL Distinct Statement - Comment interroger, sélectionner et compter ?

Il s’agit de la syntaxe de base :

INSERT INTO nom_table1 (colonnes) 
SELECT colonnes de nom_table2 ;

J’espère que cet article vous a plu et je vous souhaite bonne chance dans votre aventure SQL.