Cet article explique comment créer et exécuter une requête Création de table dans Access. Vous pouvez utiliser une requête Création de table lorsque vous souhaitez copier des données dans une table, archiver des données ou enregistrer les résultats d’une requête dans une table.
Pour modifier ou mettre à jour certaines données dans un jeu d’enregistrements (dans un ou plusieurs champs, par exemple), utilisez une requête Mise à jour. Pour plus d’informations sur les requêtes Mise à jour, consultez l’article Créer et exécuter une requête Mise à jour.
Pour ajouter des enregistrements (lignes) à une table existante, utilisez une requête Ajout. Pour plus d’informations sur les requêtes Ajout, consultez l’article Ajouter des enregistrements à une table à l’aide d’une requête Ajout.
Que voulez-vous faire ?
Comprendre les requêtes Création de table
Une requête Création de table récupère les données d’une ou plusieurs tables, puis charge le jeu de résultats dans une nouvelle table. Cette nouvelle table peut résider dans la base de données ouverte, mais vous pouvez aussi la créer dans une autre base de données.
En règle générale, vous créez des requêtes Création de table lorsque vous souhaitez copier ou archiver des données. Supposons, par exemple, que vous disposez d’une ou plusieurs tables contenant des données de vente passées et que vous utilisez ces données dans des rapports. Les chiffres des ventes ne peuvent pas changer, car les transactions ont plus de 24 heures, et l’exécution constante d’une requête pour récupérer les données peut prendre du temps, en particulier si vous exécutez une requête complexe dans un magasin de données volumineux. Le chargement des données dans une table distincte et l’utilisation de cette table comme source de données peut réduire la charge de travail et fournir des archives de données adéquates. N’oubliez pas que les données de votre nouvelle table ne sont que des instantanés ; elles n’ont aucune relation ou connexion avec la ou les tables sources.
Les principales étapes à suivre pour créer une requête Création de table sont décrites ci-dessous :
-
Activez la base de données, si elle n’est pas connectée ou si elle ne réside pas à un emplacement approuvé. Sinon, vous ne pourrez exécuter aucune requête Action (requêtes Ajout, Mise à jour et Création de table).
-
Dans la vue Création de requête, créez une requête Sélection, puis modifiez-la pour qu’elle renvoie les enregistrements souhaités. Vous pouvez sélectionner les données de plusieurs tables et dénormaliser vos données, au sens propre du terme. Par exemple, vous pouvez placer des données client, expéditeur et fournisseur dans la même table, ce que vous ne pourriez pas faire dans une base de données de production contenant des tables normalisées. Vous pouvez également appliquer des critères à la requête pour personnaliser ou affiner votre jeu de résultats.
Pour plus d’informations sur la normalisation de vos données, consultez l’article Concepts de base sur la conception d’une base de données.
-
Convertissez la requête Sélection en requête Création de table, choisissez l’emplacement de la nouvelle table, puis exécutez la requête pour créer la table.
Ne confondez pas une requête Création de table avec une requête Mise à jour ou Ajout. Une requête Mise à jour est utilisée pour ajouter ou modifier des données dans des champs individuels. Une requête Ajout est utilisée pour ajouter des enregistrements (lignes) à un jeu d’enregistrements dans une table existante.
Créer une requête Création de table
Pour créer une requête Création de table, commencez par créer une requête Sélection, puis convertissez-la en requête Création de table. La requête Sélection peut recourir aux champs calculés et expressions pour renvoyer les données requises. Les étapes suivantes expliquent comment créer et convertir cette requête. Si une requête Sélection existante répond à vos besoins, passez directement aux étapes décrivant comment convertir la requête Sélection et exécuter la requête Création de table.
Créer la requête Sélection
Remarque : Si une requête Sélection fournit les résultats escomptés, passez aux étapes suivantes.
-
Sous l’onglet Créer, dans le groupe Requêtes, cliquez sur Création de requête.
-
Double-cliquez sur les tables à partir desquelles vous souhaitez récupérer des données. Chaque table s’affiche sous forme de fenêtre dans la section supérieure du Concepteur de requêtes. Cliquez sur Fermer une fois l’ajout de vos tables terminé.
-
Dans chaque table, double-cliquez sur les champs que vous souhaitez utiliser dans votre requête. Chaque champ apparaît dans une cellule vide sur la ligne Champ de la grille de création. La figure ci-dessous illustre la grille de création après l’ajout de plusieurs champs.
-
Si vous le souhaitez, vous pouvez ajouter des expressions sur la ligne Champ.
-
Vous pouvez aussi ajouter des critères sur la ligne Critères de la grille de création.
-
Cliquez sur Exécuter pour exécuter la requête et afficher les résultats dans une feuille de données.
-
Vous pouvez également modifier vos champs, expressions ou critères et relancez la requête jusqu’à ce qu’elle renvoie les données que vous souhaitez placer dans votre nouvelle table.
Convertir la requête Sélection
-
Ouvrez la requête Sélection en mode Création ou basculez vers le mode Création. Access met à votre disposition plusieurs méthodes pour effectuer cette opération :
-
Si votre requête est ouverte dans une feuille de données, cliquez avec le bouton droit sur l’onglet de document, puis cliquez sur Mode Création.
-
Si la requête est fermée, cliquez dessus avec le bouton droit dans le volet de navigation, puis cliquez sur Mode Création dans le menu contextuel.
-
-
Sous l’onglet Création de requête , dans le groupe Type de requête , cliquez sur Créer une table.
La boîte de dialogue Création de table s’affiche.
-
Dans la zone Nom de la table, entrez un nom pour la nouvelle table.
-ou-
Cliquez sur la flèche déroulante et sélectionnez le nom d’une table existante.
-
Effectuez l’une des opérations suivantes :
-
Placez la nouvelle table dans une base de données active
-
Si l’option n’est pas déjà sélectionnée, cliquez sur Base de données active, puis cliquez sur OK.
-
Cliquez sur Exécuter , puis sur Oui pour confirmer l’opération.
Remarque : Si vous remplacez une table existante, Access commence par la supprimer, puis vous demande de confirmer la suppression. Cliquez sur Oui, puis cliquez sur Oui une deuxième fois pour créer la nouvelle table.
-
-
Placez la nouvelle table dans une autre base de données
-
Cliquez sur Autre base de données.
-
Dans la zone Nom de fichier, tapez l’emplacement et le nom de l’autre base de données.
-ou-
Cliquez sur Parcourir, utilisez la nouvelle boîte de dialogue Création de table pour rechercher l’autre base de données et cliquez sur OK.
-
Cliquez sur OK pour fermer la première boîte de dialogue Création de table.
-
Cliquez sur Exécuter , puis sur Oui pour confirmer l’opération.
Remarque : Si vous remplacez une table existante, Access commence par la supprimer, puis vous demande de confirmer la suppression. Cliquez sur Oui, puis cliquez sur Oui une deuxième fois pour créer la nouvelle table.
-
-
En savoir plus sur les critères et expressions de requête
Les étapes décrites dans cet article ont mentionné des critères de requête et des expressions. Un critère de requête est une règle qui identifie les enregistrements que vous souhaitez inclure dans une requête, et vous utilisez des critères lorsque vous ne souhaitez pas voir tous les enregistrements d’un jeu de données donné. Par exemple, le critère >25 ET <50 retourne des valeurs supérieures à 25 et inférieures à 50. Un critère tel que « Chicago » OU « Paris » OU « Moscou » renvoie uniquement les enregistrements de ces villes.
Pour plus d’informations sur l’utilisation des critères, consultez l’article Exemples de critères de requête.
Une expression est une combinaison d’opérateurs mathématiques ou logiques, de constantes, de fonctions, et de noms de champs, de commandes et de propriétés dont le résultat est une valeur unique. Vous pouvez utiliser une expression lorsque vous avez besoin de données qui ne résident pas directement dans une table. Par exemple, l’expression [PrixUnitaire]*[Quantité] multiplie la valeur du champ PrixUnitaire par la valeur du champ Quantité. Vous pouvez utiliser un large éventail d’expressions, et le processus de création et d’utilisation de celles-ci peut devenir relativement complexe.
Pour plus d’informations sur la création et l’utilisation d’expressions, consultez l’article Créer une expression.
Empêcher le mode Désactivé de bloquer une requête
Par défaut, si vous ouvrez une base de données qui n’est pas enregistrée à un emplacement approuvé, ou si vous n’avez pas choisi d’approuver la base de données, Access empêche toutes les requêtes Action (requêtes Ajout, Mise à jour, Suppression ou Création de table) de s’exécuter.
Si vous essayez d’exécuter une requête Action et qu’il ne se passe rien, vérifiez que le message suivant n’apparaît pas sur la barre d’état Access :
Le mode Désactivé a bloqué cette action ou cet événement.
Si vous voyez ce message, procédez comme suit :
-
Dans la barre des messages (juste en dessous du ruban), cliquez sur Activer le contenu.
-
Exécutez à nouveau votre requête.