Ajouter des valeurs dans une table
Sommaire
I. Présentation
Nous allons voir dans ce tutoriel comment ajouter des valeurs dans une table grâce à des requêtes écrites dans un script SQL.Comme pour les tutoriels précédents la base de données présentée dans ce MPD est utilisée. Voici pour rappel le MPD de cette base de données :
II. Quel est la requête utilisée pour ajouter des valeurs dans une table ?
La requête utilisée pour ajouter des valeurs dans une table est la requête INSERT INTO dont la structure est la suivante :
INSERT INTO nom_table ( champ1 , champ2 ) VALUES (‘valeur1’,’valeur2’), (‘valeur3’,’valeur4’);
- “Valeur1” et “Valeur3” correspondent à la valeur du “champ1”.
- Chaque ligne représente un enregistrement différent.
- Chaque ligne d’enregistrement doit se terminer par une virgule sauf pour la dernière qui doit se terminer par un point-virgule.
- Si vous indiquez 2 champs dans le “INSERT INTO” vous devez obligatoirement ajouter une valeur pour ces 2 champs à chaque enregistrement.
- Il doit y avoir une virgule entre chaque valeur.
- Si le type du champ est INT vous n’êtes pas obligé d’entourer la valeur par des apostrophes. A contrario, si le champ prend une chaîne de caractères comme valeur c’est obligatoire.
- Si un attribut est en auto_increment, il n’est pas nécessaire de préciser cet attribut lors d’un ajout. La valeur de l’attribut sera automatiquement incrémentée (valeur précédente + 1).
III. Exemples
Quelques exemples de requêtes INSERT INTO dans le cas de notre base de données :
- Pour la table T_Fabricants :
INSERT INTO T_Fabricants ( F_Nom ) VALUES ('Cisco' ), # 1 sera le F_Num (auto_incrémenté) de ce fabricant. ('Dlink' ), # 2 ('HP' ), # 3 ('Netgear' ); # 4
- Pour la table T_Batiments :
INSERT INTO T_Batiments ( Bat_Nom ) VALUES ('Batiment A'), ('Batiment A'), ('Batiment A'), ('Batiment B');
- Pour la table T_Switchs :
INSERT INTO T_Switchs ( Sw_NumFabr , Sw_NumBat , Sw_Modele , Sw_NbPortsMb , Sw_NbPortsGb ) VALUES ( 1 , 1 , 'Catalyst 2960' , 24 , 2 ) , ( 2 , NULL , 'DGS-1100-24' , 24 , 0 ) , ( 2 , 4 , 'DGS-1100-24' , 24 , 0 ) , ( 2 , 3 , 'DGS-1100-16' , 16 , 0 ) , ( 2 , 4 , 'DES-1008D' , 8 , 0 ) , ( 4 , 2 , 'FS116E' , 16 , 0 ) , ( 4 , 1 , 'FS116E' , 16 , 0 ) , ( 3 , NULL , 'ProCurve 2510-48G' , 44 , 4 ) , ( 3 , 2 , 'ProCurve 2510-48G' , 44 , 4 ) , ( 3 , 2 , 'ProCurve 2510-48G' , 44 , 4 ) , ( 3 , 3 , 'ProCurve 2520-24' , 20 , 4 ) , ( 1 , 2 , 'Catalyst 2960' , 24 , 2 ) ;
Sachant que les clés étrangères de la table T_Switchs ont besoins de se référencer vers F_Num et Bat_Num, il est nécessaire de d’abord créer des enregistrements dans la table à laquelle ils appartiennent.