Dans le monde de SQL Server, l’instruction INSERT joue un rôle crucial dans l’ajout de données à une table. Que vous soyez débutant ou développeur SQL expérimenté, il est important de comprendre comment fonctionne l’instruction INSERT et les différentes techniques que vous pouvez utiliser pour insérer des données efficacement.
Insertion simple
La forme la plus simple de l’instruction INSERT consiste à insérer une seule ligne de données dans une table. La syntaxe d’une insertion simple est la suivante :
INSERT INTO nom_table (colonne1, colonne2, colonne3, ...)
VALUES (valeur1, valeur2, valeur3, ...);
Par exemple, supposons que nous ayons une table appelée “department” avec les colonnes “dno”, “dname” et “loc”. Pour insérer une nouvelle ligne dans cette table, nous pouvons utiliser l’instruction SQL suivante :
INSERT INTO department (dno, dname, loc)
VALUES (10, 'ENGINEERING', 'New York');
Cela insérera une nouvelle ligne avec les valeurs 10, ‘ENGINEERING’ et ‘New York’ dans la table “department”.
Insertion de plusieurs lignes
Il peut arriver que vous ayez besoin d’insérer plusieurs lignes de données dans une table en une seule fois. Au lieu d’exécuter plusieurs instructions INSERT, vous pouvez utiliser une seule instruction INSERT avec plusieurs ensembles de valeurs. Voici un exemple :
INSERT INTO department (dno, dname, loc)
VALUES (40, 'Sales', 'NJ'),
(50, 'Marketing', 'MO'),
(60, 'Testing', 'MN');
Cela insérera trois lignes dans la table “department” avec les valeurs spécifiées.
Insertion de données avec des valeurs par défaut
Lors de l’insertion de données dans une table, il peut arriver que certaines colonnes aient des valeurs par défaut. Dans ce cas, vous pouvez omettre ces colonnes de l’instruction INSERT et laisser les valeurs par défaut être utilisées. Voici un exemple :
CREATE TABLE demo (
id INT DEFAULT 0,
hiredate DATETIME DEFAULT GETDATE()
);
INSERT INTO demo DEFAULT VALUES;
Cela insérera une nouvelle ligne dans la table “demo” avec les valeurs par défaut pour les colonnes “id” et “hiredate”.
Insertion de données dans des tables avec colonne identité
Les colonnes identité sont des colonnes qui génèrent automatiquement des valeurs uniques pour chaque ligne. Lors de l’insertion de données dans une table avec une colonne identité, vous pouvez remplacer le comportement par défaut et insérer des valeurs explicites dans la colonne identité. Voici un exemple :
SET IDENTITY_INSERT demo ON;
INSERT INTO demo (id, name, hiredate)
VALUES (100, 'John Doe', '2022-01-01'),
(101, 'Jane Smith', '2022-01-02');
SET IDENTITY_INSERT demo OFF;
Cela insérera deux lignes dans la table “demo” avec les valeurs spécifiées pour les colonnes “id”, “name” et “hiredate”.
Insertion de données à partir d’un autre ensemble de données
Il peut arriver que vous ayez besoin d’insérer des données d’une table dans une autre table. Cela peut être réalisé à l’aide de l’instruction INSERT…SELECT. Voici un exemple :
INSERT INTO table_cible (colonne1, colonne2, colonne3, ...)
SELECT colonne1, colonne2, colonne3, ...
FROM table_source;
Cela insérera les données sélectionnées de la “table_source” dans la “table_cible”. Les noms de colonnes et les types de données doivent correspondre entre les deux tables.
Conclusion
L’instruction SQL INSERT est un outil puissant pour ajouter des données à une table dans SQL Server. En comprenant les différentes techniques et options de syntaxe disponibles, vous pouvez insérer efficacement des données dans vos tables et manipuler votre base de données de manière efficace.
Merci d’avoir lu cet article. Si vous avez des questions, n’hésitez pas à les poser dans les commentaires ci-dessous.