Insertion de données
Ce chapitre est consacré à l'insertion de données dans une table. Rien de bien compliqué, mais c'est évidemment crucial. En effet,
que serait une base de données sans données ?
Nous verrons entre autres :
comment insérer une ligne dans une table ;
comment insérer plusieurs lignes dans une table ;
comment exécuter des requêtes SQL écrites dans un fichier (requêtes d'insertion ou autres) ;
comment insérer dans une table des lignes définies dans un fichier de format particulier.
Et pour terminer, nous peuplerons notre table Animal d'une soixantaine de petites bestioles sur lesquelles nous pourrons tester
toutes sortes de tortures requêtes dans la suite de ce tutoriel.
Syntaxe de INSERT
Deux possibilités s'offrent à nous lorsque l'on veut insérer une ligne dans une table : soit donner une valeur pour chaque
colonne de la ligne, soit ne donner les valeurs que de certaines colonnes, auquel cas il faut bien sûr préciser de quelles colonnes
il s'agit.
Insertion sans préciser les colonnes
Je rappelle pour les distraits que notre table Animal est composée de six colonnes : id , espece, sexe, date_naissance, nom et
commentaires.
Voici donc la syntaxe à utiliser pour insérer une ligne dans Animal, sans renseigner les colonnes pour lesquelles on donne une
valeur (implicitement, MySQL considère que l'on donne une valeur pour chaque colonne de la table).
Code : SQL
INSERT INTO Animal
VALUES (1, 'chien', 'M', '2010-04-05 13:43:00', 'Rox', 'Mordille
beaucoup');
Deuxième exemple : cette fois-ci, on ne connaît pas le sexe et on n'a aucun commentaire à faire sur la bestiole :
Code : SQL
INSERT INTO Animal
VALUES (2, 'chat', NULL, '2010-03-24 02:23:00', 'Roucky', NULL);
Troisième et dernier exemple : on donne NULL comme valeur d'id , ce qui en principe est impossible puisque id est défini
comme NOT NULL et comme clé primaire. Cependant, l'auto-incrémentation fait que MySQL va calculer tout seul comme un
grand quel id il faut donner à la ligne (ici : 3).
Code : SQL
INSERT INTO Animal
VALUES (NULL , 'chat', 'F', '2010-09-13 15:02:00', 'Schtroumpfette',
NULL);
Vous avez maintenant trois animaux dans votre table :
Id Espèce Sexe Date de naissance
Nom
Commentaires
1 chien M
2010-04-05 13:43:00 Rox
Mordille beaucoup
2 chat
NULL 2010-03-24 02:23:00 Roucky
NULL
Partie 1 : MySQL et les bases du langage SQL
46/414
www.openclassrooms.com
Ce chapitre est consacré à l'insertion de données dans une table. Rien de bien compliqué, mais c'est évidemment crucial. En effet,
que serait une base de données sans données ?
Nous verrons entre autres :
comment insérer une ligne dans une table ;
comment insérer plusieurs lignes dans une table ;
comment exécuter des requêtes SQL écrites dans un fichier (requêtes d'insertion ou autres) ;
comment insérer dans une table des lignes définies dans un fichier de format particulier.
Et pour terminer, nous peuplerons notre table Animal d'une soixantaine de petites bestioles sur lesquelles nous pourrons tester
toutes sortes de tortures requêtes dans la suite de ce tutoriel.
Syntaxe de INSERT
Deux possibilités s'offrent à nous lorsque l'on veut insérer une ligne dans une table : soit donner une valeur pour chaque
colonne de la ligne, soit ne donner les valeurs que de certaines colonnes, auquel cas il faut bien sûr préciser de quelles colonnes
il s'agit.
Insertion sans préciser les colonnes
Je rappelle pour les distraits que notre table Animal est composée de six colonnes : id , espece, sexe, date_naissance, nom et
commentaires.
Voici donc la syntaxe à utiliser pour insérer une ligne dans Animal, sans renseigner les colonnes pour lesquelles on donne une
valeur (implicitement, MySQL considère que l'on donne une valeur pour chaque colonne de la table).
Code : SQL
INSERT INTO Animal
VALUES (1, 'chien', 'M', '2010-04-05 13:43:00', 'Rox', 'Mordille
beaucoup');
Deuxième exemple : cette fois-ci, on ne connaît pas le sexe et on n'a aucun commentaire à faire sur la bestiole :
Code : SQL
INSERT INTO Animal
VALUES (2, 'chat', NULL, '2010-03-24 02:23:00', 'Roucky', NULL);
Troisième et dernier exemple : on donne NULL comme valeur d'id , ce qui en principe est impossible puisque id est défini
comme NOT NULL et comme clé primaire. Cependant, l'auto-incrémentation fait que MySQL va calculer tout seul comme un
grand quel id il faut donner à la ligne (ici : 3).
Code : SQL
INSERT INTO Animal
VALUES (NULL , 'chat', 'F', '2010-09-13 15:02:00', 'Schtroumpfette',
NULL);
Vous avez maintenant trois animaux dans votre table :
Id Espèce Sexe Date de naissance
Nom
Commentaires
1 chien M
2010-04-05 13:43:00 Rox
Mordille beaucoup
2 chat
NULL 2010-03-24 02:23:00 Roucky
NULL
Partie 1 : MySQL et les bases du langage SQL
46/414
www.openclassrooms.com
