La commande INSERT INTO ajoute de nouvelles lignes à une table.
Il existe deux manières d’écrire l’instruction INSERT INTO.
La première méthode spécifie à la fois les noms de colonne et les valeurs à insérer. La syntaxe est,
INSERT INTO nom_table (colonne1, colonne2, colonne3, ...)
VALUES (valeur1, valeur2, valeur3, ...);
Deuxième méthode, si vous ajoutez des valeurs pour toutes les colonnes de la table, vous n’avez pas besoin de spécifier les noms de colonne dans la requête SQL. Cependant, assurez-vous que l’ordre des valeurs est dans le même ordre que celui des colonnes du tableau.
La syntaxe INSERT INTO serait la suivante :
INSERT INTO nom_table
VALUES (valeur1, valeur2, valeur3, ...);
Exemple 1:
La table TB_DEPT contient les colonnes suivantes :
- DEPT_NO
- DEPT_NOM
- DEPT_MGR_NO
- DEPT_ADMR.
Insérez un nouveau département avec les spécifications suivantes dans la table TB_DEPT.
- Le numéro de département (DEPT_NO) est ‘A31’
- Le nom du service (DEPT_NOM) est “ARCHITECTURE”
- Géré par (DEPT_MGR_NO) une personne avec le numéro ‘00123’
- Relève du département (DEPT_ADMR) ‘A01’.
INSERT INTO TB_DEPT
VALUES (‘A31’
, ‘ARCHITECTURE’
, ‘00123’
, ‘A01’);
Dans la requête SQL ci-dessus, il n’y a pas de nom de colonne car vous ajoutez des valeurs pour toutes les colonnes de la table.
Comme nous l’avons dit précédemment, si vous ajoutez des valeurs pour toutes les colonnes de la table, vous n’avez pas besoin de spécifier les noms de colonne dans la requête SQL. Cependant, assurez-vous que l’ordre des valeurs est dans le même ordre que celui des colonnes du tableau.
Résultat:
Vous trouverez ci-dessous une sélection de la table “TB_DEPT” dans la base de données DB2.
DEPT_NO | DEPT_NOM | DEPT_MGR_NO | DEPT_ADMR |
---|---|---|---|
A31 | ARCHITECTURE | 00123 | A01 |
Exemple 2 :
Pour insérer un nouveau service dans la table TB_DEPT comme dans l’exemple 1, mais sans numéro de responsable au nouveau service.
INSERT INTO TB_DEPT (DEPT_NO
, DEPT_NAME
, DEPT_ADMR )
VALUES (‘A31’
, ‘ARCHITECTURE’
, ‘A01’);
Dans cet exemple, vous devez mentionner la colonne. car vous n’insérez les données que dans des colonnes spécifiques.
Résultat:
Vous trouverez ci-dessous une sélection de la table “TB_DEPT” dans la base de données DB2.
DEPT_NO | DEPT_NOM | DEPT_MGR_NO | DEPT_ADMR |
---|---|---|---|
A31 | ARCHITECTURE | A01 |
Valeur NULL insérée dans la table “TB_DEPT” pour la colonne DEPT_MGR_NO