Ajouter des enregistrements à une table à l’aide d’une requête Ajout

Cet article explique comment créer et exécuter une requête Ajout. Vous l’utilisez pour ajouter de nouveaux enregistrements à une table existante à partir d’autres sources.

Si vous avez besoin de modifier des données dans un jeu d’enregistrements existant, par exemple mettre à jour la valeur d’un champ, vous pouvez utiliser une requête Mise à jour. Si vous avez besoin de créer une nouvelle table à partir d’une sélection de données ou de fusionner deux tables dans une nouvelle table, vous pouvez utiliser une requête Création de table. Pour plus d’informations sur les requêtes Mise à jour ou les requêtes Création de table, ou pour obtenir des informations générales sur les autres méthodes pour ajouter des enregistrements à une base de données ou modifier des données existantes, voir la section Voir aussi.

 Remarque   Vous ne pouvez pas exécuter une requête Ajout dans un navigateur Web. Si vous souhaitez exécuter une requête Ajout dans une base de données Web, vous devez d’abord ouvrir la base de données Web à l’aide d’Access.

Dans cet article


Vue d’ensemble

Une requête Ajout sélectionne des enregistrements à partir d’une ou plusieurs sources de données et copie les enregistrements sélectionnés dans une table existante.

Par exemple, supposons que vous faites l’acquisition d’une base de données qui contient un tableau de nouveaux clients potentiels et que vous disposez déjà d’une table dans votre base de données existante qui stocke ce genre de données. Vous aimeriez stocker les données à un seul emplacement ; vous décidez donc de les copier de la nouvelle base de données vers votre table existante. Pour éviter d’entrer les nouvelles données manuellement, vous pouvez utiliser une requête Ajout pour copier les enregistrements.

Avantages offerts par l’utilisation d’une requête Ajout

L’utilisation d’une requête pour copier des données vous permet d’effectuer les opérations suivantes :

  • Ajouter plusieurs enregistrements simultanément    Si vous copiez des données manuellement, vous devez généralement effectuer plusieurs opérations de copier/coller. Avec une requête, vous sélectionnez toutes les données en même temps, puis vous les copiez.
  • Examiner votre sélection avant de la copier    Vous pouvez afficher votre sélection en mode Feuille de données et y apporter des ajustements en cas de besoin avant de copier les données. Ceci peut être particulièrement utile si votre requête inclut des expressions ou des critères et que plusieurs essais sont nécessaires pour obtenir le résultat parfait. Vous ne pouvez pas annuler une requête Ajout. Si vous commettez une erreur, vous devez restaurer votre base de données à partir d’une sauvegarde ou corriger votre erreur manuellement ou à l’aide d’une requête Suppression.
  • Utiliser des critères pour affiner la sélection    Par exemple, vous souhaiterez peut-être ajouter uniquement les enregistrements des clients qui résident dans une vile spécifique.
  • Ajouter des enregistrements lorsque certains champs dans les sources de données n’existent pas dans la table de destination     Par exemple, supposons que votre table de clients existante comporte onze champs et que la nouvelle table à partir de laquelle vous souhaitez effectuer la copie ne possède que neuf de ces onze champs. Vous pouvez utiliser une requête Ajout pour copier les données des neuf champs correspondants et laisser les deux autres champs vides.

Étapes de base d’une requête Ajout

La procédure de création d'une requête Ajout contient les étapes de base suivantes :

  • Créer une requête Sélection    Vous commencez par sélectionner les données à copier. Vous pouvez ajuster votre requête Sélection selon les besoins et l’exécuter autant de fois que vous le souhaitez afin de vous assurer de sélectionner les données que vous souhaitez copier.
  • Convertir la requête Sélection en requête Ajout    Une fois votre sélection prête, vous modifiez le type de requête en Ajout.
  • Choisir les champs de destination pour chaque colonne dans la requête Ajout    Dans certains cas, Access choisit automatiquement les champs de destination pour vous. Vous pouvez ajuster les champs de destination ou les sélectionner si Access ne l’a pas fait.
  • Afficher un aperçu et exécuter la requête pour ajouter les enregistrements    Avant d’ajouter les enregistrements, vous pouvez basculer en mode Feuille de données pour afficher un aperçu des enregistrements ajoutés.

 Important   Vous ne pouvez pas annuler une requête Ajout. Il peut être utile de sauvegarder votre base de données ou la table de destination.

Haut de la page Haut de la page

Créer et exécuter une requête Ajout

Dans cette section


Étape 1 : Créer une requête pour sélectionner les enregistrements à copier

  1. Ouvrez la base de données qui contient les enregistrements à copier.
  2. Sous l’onglet Créer, dans le groupe Macros et code, cliquez sur Création de requête.

 Remarque   Si vous travaillez sur une base de données Web, dans le groupe Macros et code, cliquez sur Objets clients, puis sur Création requête.

Le Concepteur de requêtes s'ouvre et la boîte de dialogue Afficher la table s'affiche.

  1. Double-cliquez sur les tables ou les requêtes qui contiennent les enregistrements que vous souhaitez copier, puis cliquez sur Fermer.

Les tables ou les requêtes apparaissent sous la forme d’une ou plusieurs fenêtres dans le Concepteur de requêtes. Chaque fenêtre répertorie les champs dans une table ou une requête. Cette illustration montre une table classique dans le Concepteur de requêtes.

Table dans le Concepteur de requêtes

Légende 1 Table de biens dans le Concepteur de requêtes
Légende 2 Grille de création de requête
  1. Double-cliquez sur chaque champ que vous souhaitez ajouter. Les champs sélectionnés apparaissent sur la ligne Champ dans la grille de création de requête.

Les types de données des champs de la table source doivent être compatibles avec les types de données des champs de la table de destination. Les champs de texte sont compatibles avec la plupart des autres types de champs. Les champs numériques sont compatibles uniquement avec les autres champs numériques. Par exemple, vous pouvez ajouter des nombres à un champ de texte, mais vous ne pouvez pas ajouter de texte dans un champ numérique.

Vous pouvez également utiliser une expression en tant que champ (telle que =Date() pour renvoyer automatiquement la date du jour) et utiliser des expressions avec des champs de table ou de requête dans la grille de création pour personnaliser les données que vous sélectionnez. Par exemple, si votre table de destination possède un champ qui stocke une année à quatre chiffres et que la table source possède un champ date/heure ordinaire, vous pouvez utiliser la fonction DatePart avec le champ source pour sélectionner uniquement l’année.

Pour ajouter rapidement tous les champs d'une table, double-cliquez sur l'astérisque (*) en haut de la liste des champs de table. Cette illustration montre la grille de création avec tous les champs ajoutés.

Requête avec tous les champs de table ajoutés

  1. Vous pouvez éventuellement entrer un ou plusieurs critères dans la ligne Critères de la grille de création. Le tableau suivant répertorie certains exemples et explique leur effet sur une requête.
Critères Effet
> 234 Renvoie tous les nombres supérieurs à 234. Pour rechercher tous les nombres inférieurs à 234, utilisez < 234.
>= "Callahan" Renvoie tous les enregistrements de Callahan à la fin de l'alphabet.
Entre #02.02.07# Et #01.12.07# Renvoie les dates entre le 2-fév-07 et le 1-déc-07 (ANSI-89). Si votre base de données utilise les caractères génériques ANSI-92, utilisez des apostrophes (') au lieu des signes #. Exemple : Entre '2/2/2007' Et '12/1/2007'.
Pas "Allemagne" Recherche tous les enregistrements pour lesquels le contenu du champ n'est pas exactement égal à « Allemagne». Le critère renvoie les enregistrements qui contiennent des caractères en plus d'« Allemagne » tel qu'« Allemagne (Euro) » ou « Europe (Allemagne) ».
Pas "T*" Recherche tous les enregistrements hormis ceux commençant par T. Si votre base de données utilise le jeu de caractères génériques ANSI-92, utilisez le signe de pourcentage (%) à la place de l'astérisque (*).
Pas "*t" Recherche tous les enregistrements qui ne se terminent pas par t. Si votre base de données utilise le jeu de caractères génériques ANSI-92, utilisez le signe de pourcentage à la place de l'astérisque.
Dans(Canada,R-U) Dans une liste, recherche tous les enregistrements contenant Canada ou R-U.
Comme "[A-D]*" Dans un champ Texte, recherche tous les enregistrements commençant par les lettres A à D. Si votre base de données utilise le jeu de caractères génériques ANSI-92, utilisez le signe de pourcentage à la place de l'astérisque.
Comme "*ar*" Recherche tous les enregistrements comportant la séquence de lettres « ar ». Si votre base de données utilise le jeu de caractères génériques ANSI-92, utilisez le signe de pourcentage à la place de l'astérisque.
Comme "Maison Dewe?" Recherche tous les enregistrements commençant par « Maison » et contenant une deuxième chaîne de 5 lettres dont les 4 premières lettres sont « Dewe » et la dernière est inconnue (avec un point d'interrogation). Si votre base de données utilise le jeu de caractères génériques ANSI-92, utilisez le caractère de soulignement (_) à la place du point d'interrogation.
#02.02.07# Recherche tous les enregistrements du 2 février 2007. Si votre base de données utilise le jeu de caractères génériques ANSI-92, mettez la date entre apostrophes au lieu d'utiliser des signes #. Exemple : '2/2/2007'.
< Date( )- 30 Renvoie toutes les dates postérieures aux 30 derniers jours.
Date() Renvoie toutes les enregistrements contenant la date du jour.
Entre Date( ) Et AjDate("m", 3, Date( )) Renvoie tous les enregistrements compris entre la date du jour et les trois derniers mois.
Est Null Renvoie tous les enregistrements contenant une valeur Null (vide ou non définie).
Est Pas Null Renvoie tous les enregistrements contenant une valeur.
"" Renvoie tous les enregistrements contenant une chaîne vide. Les chaînes vides sont utilisées lorsqu'un champ rend obligatoire l'ajout d'une valeur, mais que la valeur n'est pas connue. Par exemple, un champ peut nécessiter la saisie d'un numéro de télécopie. Or, si certains de vos clients ne possèdent pas de télécopieur, vous pouvez taper deux guillemets droits sans espace entre eux ("") à la place d'un numéro.
  1. Sous l’onglet Créer, dans le groupe Résultats, cliquez sur Exécuter.
  2. Vérifiez que la requête a renvoyé les enregistrements que vous souhaitez copier. Si vous devez ajouter ou supprimer des champs dans la requête, repassez en mode Création et ajoutez des champs comme décrit à l’étape précédente ou sélectionnez les champs dont vous n’avez plus besoin et appuyez sur la touche Suppr pour les supprimer de la requête.

Étape 2: Convertir la requête Sélection en requête Ajout

  1. Sous l’onglet Accueil, dans le groupe Affichage, cliquez sur Affichage, puis sur Mode création.
  2. Sous l’onglet Créer, dans le groupe Type de requête, cliquez sur Ajout.

La boîte de dialogue Ajout s'affiche.

  1. Ensuite, vous spécifiez s’il faut ajouter les enregistrements à une table dans la base de données actuelle ou à une table dans une autre base de données.

Effectuez l'une des opérations suivantes :

  • Dans la boîte de dialogue Ajout, cliquez sur Base de données actuelle, sélectionnez la table de destination dans la liste déroulante Nom de la table, puis cliquez sur OK .

- ou -

  1. Dans la boîte de dialogue Ajout, cliquez sur Autre base de données.
  2. Dans la zone Nom de fichier, tapez l'emplacement et le nom de la base de données de destination.
  3. Dans la liste déroulante Nom de la table, tapez le nom de la table de destination, puis cliquez sur OK.

Étape 3 : Choisir les champs de destination

La façon dont vous choisissez les champs de destination dépend de la façon dont vous avez créé votre requête Sélection à l’Étape 1.

Si vous... Access...
avez ajouté tous les champs de votre table ou requête source ajoute tous les champs de la table de destination à la ligne Ajouter à dans la grille de création
avez ajouté des champs spécifiques à la requête ou utilisé des expressions, et que les noms des champs des tables source et de destination correspondent ajoute automatiquement les champs de destination correspondants à la ligne Ajouter à dans la requête
avez ajouté des champs spécifiques ou utilisé des expressions, et que les noms dans les tables source et de destination ne correspondent pas ajoute les champs correspondants, et les champs sans correspondance restent vides

Si Access laisse des champs vides, vous pouvez cliquer sur une cellule de la ligne Ajouter à et sélectionner un champ de destination.

Cette illustration montre comment cliquer sur une cellule de la ligne Ajouter à et sélectionner un champ de destination.

Liste déroulante dans ligne Ajouter à

 Remarque   Si vous laissez le champ de destination vide, la requête n'y ajoutera pas de données.

Étape 4 : Afficher un aperçu et exécuter la requête Ajout

  1. Pour obtenir un aperçu de vos modifications, basculez en mode Feuille de données.

 Conseil   Pour basculer rapidement entre les affichages, cliquez avec le bouton droit sur l’onglet en haut de la requête, puis cliquez sur l’affichage souhaité.

  1. Revenez en mode Création, puis cliquez sur ExécuterImage du bouton pour ajouter les enregistrements.

 Important   Vous ne pouvez pas annuler les résultats d’une requête Ajout.

Haut de la page Haut de la page

Empêcher le mode désactivé de bloquer une requête

Si vous essayez d’exécuter une requête Ajout et que rien ne semble se produire, vérifiez si le message suivant s’affiche dans la barre d’état Access :

Le mode désactivé a bloqué cette action ou cet événement.

Pour empêcher le mode désactivé de bloquer la requête, vous devez activer le contenu de la base de données. Utilisez le bouton Activer le contenu dans la barre des messages pour activer la requête.

 Remarque   Lorsque vous activez la requête Ajout, vous activez également tout autre contenu de base de données.

Pour plus d’informations sur la sécurité, voir l’article Introduction à la sécurité dans Access 2010 (éventuellement en anglais).

Haut de la page Haut de la page

 
 
S'applique à :
Access 2010