INSERT INTO : Insérer des données avec cette requête SQL

-
3
 m de lecture
-

Pour insérer les données au sein de votre table SQL, il est possible d’utiliser la requête INSERT INTO. Mais alors comment ça fonctionne ? C’est ce que nous allons voir dans cet article.

Qu'est-ce que la requête INSERT INTO ?

INSERT INTO est l’une des commandes les plus couramment utilisées dans le langage SQL. Et pour cause, cette requête vous permet d’intégrer de nouveaux enregistrements au sein de votre base de données. Il peut s’agir d’une ou plusieurs lignes en fonction de vos besoins.

Bon à savoir : INSERT INTO est la commande à utiliser pour tous les systèmes de gestion de bases de données. Et ce, que vous utilisiez Oracle, Mysql, Transact-SQL, etc.

Comment utiliser la requête SQL INSERT INTO ?

INSERT INTO peut être utilisé pour intégrer une ou plusieurs lignes au sein de votre tableau. Mais il est également possible d’utiliser cette commande dans des requêtes plus complexes. Dans cet article, nous vous présentons différents cas d’application.

Insérer une ligne

Pour cela, deux possibilités s’offrent à vous.

1º Il est possible d’insérer une ligne en spécifiant toutes les colonnes. Dans ce cadre, la syntaxe est la suivante :

INSERT INTO table VALUES (‘valeur 1’, ‘valeur 2’, …)

Si vous choisissez cette option, veillez à bien respecter l’ordre des colonnes. Et pour cause, le système de gestion de base de données interprète les requêtes SQL selon les informations que vous lui donnez. Donc si vous n’avez pas besoin d’enregistrer de nouvelles valeurs pour certaines colonnes, il faudra préciser la mention « NULL » (au lieu de valeur 1,2…).

L’avantage, c’est qu’il n’y a pas besoin d’écrire le nom de chaque limite. Ce qui limite fortement les fautes de frappe.

2º Vous pouvez préciser uniquement les colonnes pour lesquelles vous souhaitez intégrer de nouvelles données. Pour cela, vous devez utiliser la syntaxe suivante :

INSERT INTO table (nom-de-colonne_1, nom-de-colonne_2, …)
VALUES (‘valeur 1’, ‘valeur 2’, …)

Ici, l’ordre des colonnes n’est plus aussi important. Attention toutefois, à l’ordre des valeurs. Celles-ci doivent correspondre aux colonnes auxquelles elles sont assignées.

Insérer plusieurs lignes

L’insertion de plusieurs lignes est souvent nécessaire pour enrichir votre tableau.

Pour vous aider à mieux comprendre, nous vous proposons l’exemple concret d’un fichier Client auquel vous souhaitez ajouter les coordonnées de plusieurs clients.

Voici la requête :

INSERT INTO client (prénom, nom, ville, email)
VALUES
(‘Justine’, ‘Martin’, ‘Paris’, ‘justinemartin@gmail.com’ ),
(‘Thomas’, ‘Durant’, ‘Bordeaux’, ‘tomtom@sfr.fr’),
(‘Marie’, ‘Leroy’, ‘Angers’,’marieleroy@laposte.net’),
(‘Vanessa’, ‘Savary’, ‘Marseille’, ‘vanessa13@gmail.com’)

Grâce à la commande INSERT INTO, vous pourrez intégrer les données suivantes au sein de votre tableau.

Prénom Nom Ville Email
Justin Martin Paris justinemartin@gmail.com
Thomas Durant Bordeaux tomtom@sfr.fr
Marie Leroy Angers marieleroy@laposte.net
Vanessa Savary Marseille vanessa13@gmail.com

Copier des données d’un autre tableau

En combinant plusieurs requêtes, vous pouvez également copier les données d’un tableau A vers un tableau.

Pour cela, il vous faudra utiliser la syntaxe suivante :

INSERT INTO ma_table_1 SELECT colonne_1,colonne_2,colonne_2 FROM ma_table_2 WHERE conditions

Prenons un exemple :

Vous avez deux tableaux. Le premier correspond à un fichier « client » :

Prénom Nom Ville Email
Justin Martin Paris justinemartin@gmail.com
Thomas Durant Bordeaux tomtom@sfr.fr
Marie Leroy Angers marieleroy@laposte.net
Vanessa Savary Marseille vanessa13@gmail.com

Et le second, à un fichier de « Prospection » :

ID Prénom Nom Ville Email
1 Jean Bernad Valenciennes jbernard@gmail.com
2 Thomas Castaing Nantes thomas.castaing@orange.fr
3 Antoine Dupond Paris Antwan@laposte.net
4 Virginie Pavard Lyon V.pavard@gmail.com

Ayant converti un prospect (Jean Bernard), vous souhaitez le transférer dans votre fichier client.

Voici la requête :

INSERT INTO Client SELECT (prénom, nom, ville, email) FROM prospection WHERE id = 1

Et le résultat :

Prénom Nom Ville Email
Justin Martin Paris justinemartin@gmail.com
Thomas Durant Bordeaux tomtom@sfr.fr
Marie Leroy Angers marieleroy@laposte.net
Vanessa Savary Marseille vanessa13@gmail.com
Jean Bernard Valenciennes jbernard@gmail.com

Développez vos compétences en langage SQL avec DataScientest

La manipulation des données relationnelles ne passe pas seulement par l’ajout de nouvelles informations. Il est possible d’en supprimer, d’en modifier, d’en actualiser, etc. Pour toutes ces actions, il existe une multitude de requêtes SQL. Si vous souhaitez toutes les connaître, une formation data est plus que nécessaire. C’est justement pour cette raison que nous avons développé DataScientest. Nous vous proposons plusieurs formations orientées métiers afin de vous aider à développer vos compétences.

Facebook
Twitter
LinkedIn

DataScientest News

Inscrivez-vous à notre Newsletter pour recevoir nos guides, tutoriels, et les dernières actualités data directement dans votre boîte mail.
Poursuivre la lecture

Vous souhaitez être alerté des nouveaux contenus en data science et intelligence artificielle ?

Laissez-nous votre e-mail, pour que nous puissions vous envoyer vos nouveaux articles au moment de leur publication !

Newsletter icone
icon newsletter

DataNews

Vous souhaitez recevoir notre
newsletter Data hebdomadaire ?