Importer les données d’une base de données SQL Server ou établir une liaison avec celles-ci

Importer les données d’une base de données SQL Server ou établir une liaison avec celles-ci

Vous pouvez importer ou établir une liaison avec les données d’une base de données SQL, qui est une base de données gérée de haute performance utilisée pour les applications stratégiques. Pour plus d’informations, consultez SQL Server 2016.

  • Lorsque vous liez des données, Access crée une connexion bidirectionnelle qui synchronise les modifications apportées aux données dans Access et dans la base de données SQL Database.

  • Lorsque vous importez des données, Access crée une copie unique des données, de sorte que les modifications apportées aux données dans Access ou dans la base de données SQL Database ne sont pas synchronisées.

Vue d’ensemble de la connexion d’Access à SQL Server

Avant de commencer

Vous voulez que tout se passe mieux ? Préparez-vous avant de lier ou d’importer des données :

  • Localisez le nom du serveur de base de données SQL Server, identifiez les informations de connexion nécessaires et choisissez une méthode d’authentification (Windows ou SQL Server). Pour plus d’informations sur les méthodes d’authentification, consultez Se connecter au serveur (Moteur de base de données) et Sécurisation de votre base de données.

  • Identifiez les tables ou vues que vous souhaitez lier ou importer, ainsi que les champs à valeurs uniques des tables liées. Vous pouvez lier ou importer plusieurs tables ou vues en une seule opération.

  • Tenez compte du nombre de colonnes dans chaque table ou vue. Access ne prend pas en charge plus de 255 champs dans une table. De ce fait, Access lie ou importe uniquement les 255 premières colonnes. Pour contourner ce problème, vous pouvez créer une vue dans la base de données SQL Server pour accéder aux colonnes au-delà de la limite.

  • Déterminez la quantité totale de données importées. La taille maximale d’une base de données Access est de 2 gigaoctets, auxquels il faut retrancher l’espace nécessaire pour les objets système. Si la base de données SQL Server contient des tables volumineuses, vous ne pourrez peut-être pas les importer toutes dans une même base de données Access. Dans ce cas, envisagez une liaison aux données plutôt qu’une importation.

  • Sécurisez votre base de données Access et les informations de connexion qu’elle contient en utilisant un emplacement approuvé et un mot de passe de base de données Access. Ce point est particulièrement important si vous choisissez d’enregistrer le mot de passe SQL Server dans Access.

  • Planifiez l’établissement de relations supplémentaires. Access ne crée pas automatiquement de relations entre des tables liées à la fin d’une opération d’importation. Vous pouvez utiliser la fenêtre Relations pour créer manuellement les relations entre les nouvelles et les anciennes tables. Pour en savoir plus à ce sujet, consultez Qu’est-ce que la fenêtre Relations ? et Créer, modifier ou supprimer une relation.

Étape 1 : Prise en main

  1. Sélectionnez Données externes > Nouvelle source de données > À partir d’une base de données > À partir de SQL Server.

  2. Dans la boîte de dialogue Obtenir des données externes – Base de données ODBC, effectuez l’une des opérations suivantes :

    • Pour importer des données, sélectionnez Importer les données sources dans une nouvelle table de la base de données active.

    • Pour lier les données, sélectionnez Lier les données sources en créant une table liée.

  3. Sélectionnez OK.

Étape 2 : Créer ou réutiliser un fichier DSN

Vous pouvez créer un fichier DSN ou en réutiliser un qui existe déjà. Vous pouvez utiliser un fichier DSN lorsque vous voulez vous baser sur les mêmes informations de connexion pour différentes opérations de liaison et d’importation ou un partage avec une autre application qui utilise également les fichiers DSN. Vous pouvez créer un fichier DSN directement en utilisant le gestionnaire de connexion de données. Pour en savoir plus sur ce sujet, consultez Administrer des sources de données ODBC.

Même si vous pouvez toujours utiliser les versions antérieures du pilote SQL ODBC, nous vous recommandons d’utiliser la version 13.1, qui a de nombreuses améliorations et prend en charge de nouvelles fonctionnalités de SQL Server 2016. Pour en savoir plus sur le sujet, consultez Pilote Microsoft ODBC pour SQL Server sur Windows (contenu en anglais).

  1. Effectuez l’une des opérations suivantes :

    • Si le fichier DSN que vous voulez utiliser existe déjà, sélectionnez-le dans la liste.

      Boîte de dialogue Sélectionner la source de données

      Selon la méthode d’authentification que vous avez saisie dans les informations de connexion, il est possible que vous deviez entrer de nouveau un mot de passe.

    • Pour créer un fichier de nom de source de données (DSN) :

      1. Sélectionnez Nouveau.

        Boîte de dialogue Créer une source de données
      2. Sélectionnez Pilote ODBC 13 pour SQL Server, puis Suivant.

      3. Entrez un nom pour le fichier DSN, ou cliquez sur Parcourir pour créer le fichier à un autre emplacement.

  2. Cliquez surSuivant pour passer en revue les informations de synthèse, puis cliquez sur Terminer.

Étape 3 : Suivez l’Assistant Créer une nouvelle source de données vers SQL Server.

Dans l’Assistant Créer une nouvelle source de données vers SQL Server, procédez comme suit :

  1. Sur la première page, entrez les informations d’identification :

    • Dans la zone Description, vous pouvez entrer éventuellement des informations complémentaires sur le fichier DSN.

    • Dans la zone Serveur, entrez le nom du serveur SQL Server. Ne cliquez pas sur la flèche orientée vers le bas.

  2. Sur la deuxième page, sélectionnez une des méthodes d’authentification suivantes :

    • Avec l’authentification Windows intégrée    : connectez-vous à un compte d’utilisateur Windows. Si vous le souhaitez, entrez un nom de pour le principal de service (SPN). Pour en savoir plus à ce sujet, consultez Noms de principal de service (SPN) dans les connexion client (ODBC).

    • Avec l’authentification SQL Server    : connectez-vous avec les informations d’identification définies dans la base de données en entrant l’ID de connexion et le mot de passe.

  3. Sur les pages 3 et 4, sélectionnez les différentes options pour personnaliser votre connexion. Pour en savoir plus sur ces options, consultez Pilote Microsoft ODBC pour SQL Server (contenu en anglais).

  4. Un écran s’affiche, vous permettant de confirmer vos paramètres. Sélectionnez Tester la source de données pour confirmer votre connexion.

  5. Vous devrez peut-être vous connecter à la base de données. Dans la boîte de dialogue Connexion à SQL Server, entrez l’ID de connexion et le mot de passe. Pour modifier d’autres paramètres, sélectionnez Options.

Étape 4 : Sélectionner les tables à importer ou à lier

  1. Dans la boîte de dialogue Lier les tables ou Importer des objets, sous Tables, sélectionnez chaque table ou vue que vous voulez lier ou importer, puis cliquez sur OK.

    Liste des tables à lier ou importer
  2. Dans une opération de liaison, choisissez si vous voulez sélectionner Enregistrer le mot de passe.

    Sécurité    : en sélectionnant cette option, vous n’avez plus besoin d’entrer des informations d’identification à chaque fois que vous ouvrez Access et accédez aux données. Toutefois, cette option stocke un mot de passe sous forme non chiffrée dans la base de données Access, ce qui signifie que les personnes qui peuvent accéder au contenu source peuvent voir le nom d’utilisateur et mot de passe. Si vous sélectionnez cette option, nous vous recommandons vivement de stocker la base de données Access dans un emplacement sécurisé et de créer un mot de passe de base de données Access. Pour en savoir plus sur le sujet, consultez Décider d’approuver ou non une base de données et Chiffrer une base de données à l’aide d’un mot de passe de base de données.

Étape 5 : Créer des spécifications et des tâches (importation uniquement)

Résultats

Lorsqu’une opération de liaison ou d’importation est terminée, les tables s’affichent dans le volet de navigation en portant le même nom que la table SQL Server ou la vue combinée avec le nom du propriétaire. Par exemple, si le nom SQL est dbo.Produit, le nom Access est dbo_Produit. Si ce nom est déjà utilisé, Access ajoute « 1 » au nom de la nouvelle table, par exemple, dbo_Produit1. Si dbo_Produit1 est aussi déjà utilisé, Access crée dbo_Produit2 et ainsi de suite. Mais vous pouvez renommer les tables en utilisant un nom plus parlant.

Dans une opération d’importation, Access ne remplace jamais de table dans la base de données. Même si vous ne pouvez pas ajouter directement de données SQL Server à une table existante, vous pouvez créer une requête Ajout pour ajouter des données, après avoir importé des données à partir de tables similaires.

Dans une opération de liaison, si des colonnes sont en lecture seule dans une table SQL Server, elles le sont aussi dans Access.

Conseil    Pour afficher la chaîne de connexion, pointez sur la table dans le volet de navigation Access.

Mettre à jour la création de table liée

Vous ne pouvez pas ajouter, supprimer ou modifier des colonnes, ni changer les types de données dans une table liée. Si vous voulez apporter des changements de conception, faites-le dans la base de données SQL Server. Pour voir les changements de conception dans Access, mettez à jour les tables liées :

  1. Sélectionnez Données externes > Gestionnaire de tables liées.

  2. Sélectionnez chaque table liée que vous voulez mettre à jour, cliquez sur OK, puis sur Fermer.

Comparer des types de données

Les types de données Access et les types de données SQL Server se nomment différemment. Par exemple, le type de données bit d’une colonne SQL Server importée ou liée dans Access devient le type de données Oui/Non. Le tableau suivant compare les types de données SQL Server et Access.

Type de données SQL Server

Type de données Access

Taille du champ Access

bigint

Grand numéro

Consultez Utilisation du type de données Grand nombre.

binaire (taille de fichier)

Binaire

Identique à la taille du champ SQL Server

bit

Oui/Non

caractère (taille du champ), où la taille est inférieure ou égale à 255

Texte

Identique à la taille du champ SQL Server

caractère (taille du champ), dont la taille est supérieure à 255

Mémo

datetime

Date/Heure

décimale (précision, échelle)

Nombre

Décimale (les propriétés Précision et Échelle d’Access correspondent à la précision et l’échelle de SQL Server).

float

Nombre

Double

image

Objet OLE

Int

Nombre

Entier long

money

Devise

nchar (taille du champ), où la taille est inférieure ou égale à 255

Texte

Identique à la taille du champ SQL Server

nchar (taille du champ), dont la taille est supérieure à 255

Mémo

ntext

Mémo

numérique (précision, échelle)

Nombre

Décimale (les propriétés Précision et Échelle d’Access correspondent à la précision et l’échelle de SQL Server).

nvarchar (taille du champ), où la taille est inférieure ou égale à 255

Texte

Identique à la taille du champ SQL Server

nvarchar (taille du champ), dont la taille est supérieure à 255

Mémo

nvarchar(MAX)

Mémo

real

Nombre

Célibataire

smalldatetime

Date/Heure

smallint

Nombre

Entier

smallmoney

Devise

sql_variant

Texte

255

texte

Mémo

timestamp

Binaire

8

tinyint

Nombre

Byte

uniqueidentifier

Nombre

N° de réplication

varbinary

Binaire

Identique à la taille du champ SQL Server

varbinary (MAX)

Objet OLE

varchar (taille du champ), où la taille est inférieure ou égale à 255

Texte

Identique à la taille du champ SQL Server

varchar (taille du champ), dont la taille est supérieure à 255

Mémo

varchar(MAX)

Mémo

xml

Mémo

Vous pouvez utiliser des données stockées dans SQL Server soit en établissant une liaison avec ces données, soit en important les données dans une base de données Access. La liaison est une meilleure solution si vous partagez ces données avec d’autres utilisateurs, car les données sont stockées à un emplacement centralisé et vous pouvez voir les données les plus récentes, ajouter ou modifier des données et exécuter des requêtes ou des états dans Access.

Remarque : Cet article ne s’applique pas aux applications Access (type de base de données que vous créez dans Access et publiez en ligne). Pour plus d’informations, voir Créer une application Access.

Étape 1 : Préparation pour la liaison

  1. Repérez la base de données SQL Server vers laquelle vous souhaitez établir une liaison. Le cas échéant, contactez l’administrateur de la base de données pour obtenir les informations de connexion.

  2. Identifiez les tables et vues auxquelles vous souhaitez établir une liaison dans la base de données SQL. Vous pouvez établir une liaison à plusieurs objets à la fois.

Passez en revue les données sources pour les considérations suivantes :

  • Access prend en charge jusqu’à 255 champs (colonnes) dans une table ; la table liée contiendra donc uniquement les 255 premiers champs de l’objet auquel vous établissez une liaison.

  • Les colonnes qui sont en lecture seule dans une table SQL Server seront également en lecture seule dans Access.

  1. Pour créer la table liée dans une nouvelle base de données, cliquez sur Fichier > Nouveau>Base de données du Bureau vide. Pour créer les tables liées dans une base de données Access existante, vérifiez que vous disposez des autorisations nécessaires pour ajouter des données à la base de données.

    Remarque : Une table liée créée dans une base de données Access existante porte le même nom que dans l’objet source. Si ce nom est déjà utilisé, Access ajoute « 1 » au nom de la nouvelle table par exemple Contacts1. (Si Contacts1 est déjà utilisé également, Access crée Contacts2, et ainsi de suite.)

Étape 2 : Liaison sur les données

Lorsque vous établissez une liaison à une table ou une vue dans une base de données SQL Server, Access crée une table (appelée table liée) qui reflète la structure et le contenu de la table source. Vous pouvez modifier les données soit dans SQL Server, soit en mode Feuille de données ou Formulaire dans Access, et les modifications sont reflétées à la fois dans SQL Server et dans Access. Toute modification structurelle apportée à une table liée, telle que la suppression ou la modification de colonnes, doit être effectuée depuis la base de données SQL Server et pas depuis Access.

  1. Ouvrez la base de données Access de destination.

  2. Sous l’onglet Données externes, cliquez sur Base de données ODBC.

  3. Cliquez sur Lier à la source de données en créant une table attachée> OK et suivez les étapes de l’Assistant. Dans la zone Sélectionner la source de données, si le fichier .dsn que vous voulez utiliser existe déjà, cliquez sur le fichier dans la liste.

    Pour créer un fichier .dsn :

    Dans la zone Sélectionner la source de données, cliquez sur Nouveau> SQL Server > Suivant.

    1. Attribuez un nom au fichier .dsn ou cliquez sur Parcourir.

      Remarque : Vous devez disposer des autorisations d’écriture sur le dossier pour enregistrer le fichier .dsn.

    2. Cliquez sur Suivant pour examiner les informations récapitulatives, puis cliquez sur Terminer.

      Suivez les étapes de l’Assistant Créer une nouvelle source de données vers SQL Server.

  4. Cliquez sur OK. Sous Tables, cliquez sur chaque table ou vue vers laquelle vous souhaitez établir une liaison, puis cliquez sur OK.

Si la boîte de dialogue Sélectionner un identificateur unique d’enregistrement s’affiche, cela signifie qu’Access n’a pas pu déterminer le ou les champs qui identifient de façon unique chaque ligne des données source. Sélectionnez simplement le champ ou la combinaison de champs qui est unique pour chaque ligne. Si vous avez des doutes, contactez l’administrateur de la base de données SQL Server.

Lorsque l’opération de liaison est terminée, vous pouvez voir la ou les nouvelles tables liées dans le volet de navigation.

Appliquer la structure d’objet SQL Server la plus récente

Lorsque vous ouvrez une table liée ou l’objet source, les données les plus récentes s’affichent. Toutefois, si des modifications structurelles sont apportées à un objet SQL Server, vous devrez mettre à jour la table liée pour que ces modifications prennent effet.

  1. Cliquez avec le bouton droit sur la table dans le volet de navigation, puis cliquez sur Gestionnaire d’attaches dans le menu contextuel.

  2. Activez la case à cocher en regard de chaque table liée que vous souhaitez mettre à jour, ou cliquez sur Sélectionner tout pour sélectionner toutes les tables liées.

  3. Cliquez sur OK > Fermer.

Remarque : Étant donné qu’Access et SQL Server n’utilisent pas les mêmes types de données, Access établit une liaison vers le type de données le plus approprié pour chaque colonne. Vous pouvez passer en revue, mais vous ne pouvez pas modifier, les types de données affectés dans Access.

Pour plus d’informations, consultez Méthodes pour partager une base de données de bureau Access.

Haut de la page

Si votre service ou groupe de travail utilise Microsoft SQL Server pour stocker des données, vous serez peut-être amené à travailler avec des données SQL Server dans Access.

Vous pouvez transférer les données d’objets (tables ou vues) SQL Server dans Access de deux manières : par importation ou par liaison. Voici ce qui différencie ces deux processus :

  • Quand vous importez les données, Access crée une copie des données SQL Server et les éventuelles modifications qui sont apportées par la suite aux données dans votre base de données Access ne sont pas répercutées dans la base de données SQL Server. De la même manière, les modifications ultérieures apportées dans la table ou la vue SQL Server ne sont pas répercutées dans Access.

  • Quand vous établissez une liaison avec les données SQL Server, vous vous connectez directement à la source de données, si bien que les modifications apportées par la suite aux données dans Access sont répercutées dans SQL Server et inversement.

Cet article explique comment établir une liaison avec des données SQL Server et comment les importer.

Choisir entre l’importation ou la liaison

Cas où l’importation est indiquée

En règle générale, vous importez des données SQL Server dans une base de données Access pour les raisons suivantes :

  • Pour déplacer de façon permanente des données SQL Server dans une base de données Access, car vous n’avez plus besoin des données dans la base de données SQL Server. Après avoir importé les données dans Access, vous pouvez supprimer les données de la base de données SQL Server.

  • Votre service ou groupe de travail utilise Access, mais vous êtes parfois dirigé vers une base de données SQL Server pour obtenir des données supplémentaires qui doivent être fusionnées dans l’une de vos bases de données Access.

Comme l’importation de données SQL Server donne lieu à la création d’une copie des données dans votre base de données Access, vous devez à cette occasion spécifier les tables ou les vues que vous voulez copier.

Cas où la liaison est indiquée

En règle générale, vous établissez une liaison avec les données SQL Server pour les raisons suivantes :

  • Pour vous connecter directement aux données sources. Vous pouvez ainsi voir et modifier les informations les plus récentes aussi bien dans la base de données SQL Server que dans votre base de données Access.

  • Une base de données SQL Server contient un grand nombre de tables volumineuses, si bien que vous ne pouvez pas toutes les importer dans un même fichier .accdb. La taille maximale d’une base de données Access est de 2 gigaoctets, auxquels il faut retrancher l’espace nécessaire pour les objets système.

  • Si votre objectif est d’exécuter des requêtes et de générer des états basés sur les données de SQL Server sans créer une copie des données, envisagez une liaison à SQL Server.

  • Votre service ou groupe de travail utilise Access pour créer des états et exécuter des requêtes et utilise SQL Server pour le stockage des données. Chaque équipe peut créer des tables et des vues SQL Server pour le stockage centralisé, mais il est souvent nécessaire de transférer ces données dans des programmes de bureau pour des besoins d’agrégation et de création de rapports. La liaison est la solution idéale, car elle permet aux utilisateurs de la base de données SQL Server et de la base de données Access d’ajouter et de mettre à jour des données, mais aussi de pouvoir toujours voir et exploiter les données les plus récentes.

  • Vous êtes un utilisateur Access et utilisez SQL Server depuis peu. Vous avez fait migrer plusieurs de vos bases de données vers SQL Server et la plupart des tables de ces bases de données sont des tables liées. Désormais, au lieu de créer des tables Access, vous créerez des tables et des vues dans SQL Server et vous établirez des liaisons avec celles-ci à partir de vos bases de données Access.

  • Vous voulez continuer de stocker vos données dans SQL Server, mais vous souhaitez aussi travailler avec les données les plus récentes dans Access pour pouvoir exécuter les requêtes et imprimer les états que vous avez conçus dans Access.

Haut de la page

Importer des données à partir de SQL Server

Préparer l’importation

Pendant l’opération d’importation, Access crée une table pour y copier les données de la base de données SQL Server. Après quoi, vous pouvez choisir d’enregistrer les détails de l’opération d’importation pour en faire une spécification.

Remarque : Une spécification d’importation vous permet ultérieurement de répéter l’opération d’importation sans avoir à parcourir chaque fois toutes les étapes de l’Assistant Importation.

  1. Localisez la base de données SQL Server qui contient les données à importer. Procurez-vous les informations de connexion auprès de l’administrateur de la base de données.

  2. Identifiez les tables ou les vues que vous voulez importer. Vous pouvez importer plusieurs objets au cours d’une même opération d’importation.

  3. Passez en revue les données sources et gardez à l’esprit les points suivants :

    • Access ne prend pas en charge plus de 255 champs dans une table. De ce fait, Access importe seulement les 255 premières colonnes.

    • La taille maximale d’une base de données Access est de 2 gigaoctets, auxquels il faut retrancher l’espace nécessaire pour les objets système. Si la base de données SQL Server contient un grand nombre de tables volumineuses, vous ne pourrez peut-être pas les importer toutes dans une même base de données .accdb. Dans ce cas, envisagez de lier les données à votre base de données Access.

    • Access ne crée pas automatiquement les relations entre les tables liées à la fin d’une opération d’importation. Vous devez par conséquent créer manuellement les relations entre les diverses tables nouvelles et existantes à l’aide des options de la fenêtre Relations. Pour afficher la fenêtre Relations :

      • Cliquez sur l’onglet Fichier puis, sous l’onglet Infos, cliquez sur Relations.

  4. Identifiez la base de données Access dans laquelle vous voulez importer les données SQL Server.

    Vérifiez que vous disposez des autorisations nécessaires pour ajouter des données à la base de données Access. Si vous ne voulez pas stocker les données dans l’une de vos bases de données existantes, créez une base de données vide en cliquant successivement sur l’onglet Fichier, sur l’onglet Nouveau, puis sur Base de données vide.

  5. Examinez les tables éventuellement présentes dans la base de données Access.

    L’opération d’importation donne lieu à la création d’une table qui reprend le nom de l’objet SQL Server. Si ce nom est déjà utilisé, Access ajoute « 1 » au nom de la nouvelle table, par exemple Contacts1. (Si Contacts1 est aussi déjà utilisé, Access crée Contacts2, et ainsi de suite.)

    Remarque : Access ne remplace jamais une table dans la base de données au cours d’une opération d’importation, et vous ne pouvez pas ajouter de données SQL Server à une table existante.

Importer les données

  1. Ouvrez la base de données de destination.

    Sous l’onglet Données externes, dans le groupe Importer et lier, cliquez sur Base de données ODBC.

  2. Cliquez sur Importer les données sources dans une nouvelle table de la base de données active, puis sur OK.

  3. Dans la boîte de dialogue Sélectionner la source de données, si le fichier .dsn que vous voulez utiliser existe déjà, cliquez sur le fichier dans la liste.

    J’ai besoin de créer un fichier .dsn

    Remarque : Selon le logiciel qui est installé sur votre ordinateur, les étapes décrites dans cette procédure peuvent varier légèrement.

    1. Cliquez sur Nouveau pour créer un nouveau nom de source de données (DSN).

      L’Assistant Créer une nouvelle source de données démarre.

    2. Dans l’Assistant, sélectionnez SQL Server dans la liste de pilotes, puis cliquez sur Suivant.

    3. Attribuez un nom au fichier .dsn ou cliquez sur Parcourir pour enregistrer le fichier à un autre emplacement.

      Remarque : Vous devez disposer des autorisations d’écriture sur le dossier pour enregistrer le fichier .dsn.

    4. Cliquez sur Suivant, passez en revue les informations récapitulatives, puis cliquez sur Terminer pour mettre fin à l’Assistant.

      La boîte de dialogue Créer une nouvelle source de données vers SQL Server s’affiche à l’écran.

    5. Tapez une description de la source de données dans la zone Description. Cette étape est facultative.

    6. Sous À quel serveur SQL Server voulez-vous vous connecter ?, dans la zone Serveur, tapez ou sélectionnez le nom du serveur SQL Server auquel vous voulez vous connecter, puis cliquez sur Suivant pour continuer.

    7. Vous devrez peut-être vous renseigner auprès de l’administrateur de la base de données SQL Server pour savoir, par exemple, quelle authentification utiliser (Microsoft Windows NT ou SQL Server). Cliquez sur Suivant pour continuer.

    8. Si vous voulez vous connecter à une base de données spécifique, vérifiez que la case Changer la base de données par défaut par est cochée. Sélectionnez ensuite la base de données que vous voulez utiliser, puis cliquez sur Suivant.

    9. Cliquez sur Terminer.

    10. Passez en revue les informations récapitulatives, puis cliquez sur Tester la source de données.

    11. Examinez les résultats du test, puis cliquez sur OK pour fermer la boîte de dialogue.

      Si le test est concluant, cliquez à nouveau sur OK ou cliquez sur Annuler pour modifier vos paramètres.

  4. Cliquez sur OK pour fermer la boîte de dialogue Sélectionner la source de données.

    Access affiche la boîte de dialogue Importer des objets.

  5. Sous Tables, cliquez sur chacune des tables ou des vues que vous voulez importer, puis cliquez sur OK.

  6. Si la boîte de dialogue Sélectionner un identificateur unique d’enregistrement s’affiche, cela signifie qu’Access n’a pas pu identifier le ou les champs qui identifient de façon unique chaque ligne d’un objet particulier. Dans ce cas, sélectionnez le champ ou la combinaison de champs qui est unique pour chaque ligne, puis cliquez sur OK. Si vous avez des doutes, contactez l’administrateur de la base de données SQL Server.

    Access importe les données. Si vous prévoyez de répéter l’opération d’importation à un moment ultérieur, vous pouvez enregistrer les étapes d’importation sous forme de spécification d’importation et réexécuter facilement les mêmes étapes d’importation à un moment ultérieur. Pour créer une tâche, vous devez avoir installé Microsoft Office Outlook sur votre ordinateur.

  7. Cliquez sur Fermer sous Enregistrer les étapes d’importation dans la boîte de dialogue Données externes - Base de données ODBC Access finalise l’opération d’importation et affiche la ou les nouvelles tables dans le volet de navigation.

Si vous voulez enregistrer l’importation sous forme de tâche réutilisable, passez à la section suivante.

Haut de la page

Enregistrer et utiliser les paramètres d’importation

Remarque : Pour créer une tâche, vous devez avoir installé Microsoft Office Outlook.

  1. Sous Enregistrer les étapes d’importation dans la boîte de dialogue Données externes - Base de données ODBC, cochez la case Enregistrer les étapes d’importation. Un ensemble de contrôles supplémentaires s’affiche.

  2. Dans la zone Enregistrer sous, attribuez un nom à la spécification d’importation.

  3. Tapez une description dans la zone Description. Cette étape est facultative.

  4. Pour effectuer l’opération à intervalles réguliers (p. ex., toutes les semaines ou tous les mois), cochez la case Créer une tâche Outlook. La tâche ainsi créée dans Microsoft Outlook 2010 vous permet d’exécuter la spécification.

  5. Cliquez sur Enregistrer l’importation.

Si Outlook n’est pas installé, Access affiche un message d’erreur au moment où vous cliquez sur Enregistrer l’importation.

Remarque : Si Outlook 2010 n’est pas configuré correctement, l’Assistant Démarrage de Microsoft Outlook 2010 démarre. Suivez les instructions de l’Assistant pour configurer Outlook.

Si vous le souhaitez, vous pouvez créer une tâche Outlook. Il peut être utile de créer une tâche dans Outlook si vous avez l’intention d’exécuter l’opération d’importation à intervalles réguliers ou périodiques. Cependant, si vous ne créez pas de tâche, Access continue d’enregistrer la spécification.

Créer une tâche Outlook

Si vous avez coché la case Créer une tâche Outlook, Access démarre Office Outlook 2010 et affiche une nouvelle tâche. Pour configurer la tâche, procédez comme suit :

Remarque : Si Outlook n’est pas installé, Access affiche un message d’erreur. Si Outlook n’est pas configuré correctement, l’Assistant Configuration d’Outlook démarre. Suivez les instructions de l’Assistant pour configurer Outlook.

  1. Examinez et modifiez les paramètres de la tâche, tels que Date de début et Échéance et Rappel.

    Pour faire de la tâche d’importation un événement périodique, cliquez sur Périodicité et fournissez les informations appropriées.

  2. Cliquez sur Enregistrer et fermer.

Exécuter une tâche enregistrée

  1. Dans le volet de navigation Outlook, cliquez sur Tâches et double-cliquez sur la tâche que vous exécutez.

  2. Sous l’onglet Tâche, dans le groupe Microsoft Access, cliquez sur Exécuter l’importation.

  3. Retournez dans la fenêtre Access, puis appuyez sur F5 pour actualiser le volet de navigation.

  4. Double-cliquez sur la table importée pour l’ouvrir en mode Feuille de données.

  5. Vérifiez que tous les champs et les enregistrements ont bien été importés et qu’il n’y a pas d’erreurs.

  6. Dans le volet de navigation, cliquez avec le bouton droit sur la table importée, puis cliquez sur Mode Création dans le menu contextuel. Examinez les types de données des champs et les autres propriétés des champs.

Haut de la page

Établir une liaison avec des données SQL Server

Sachant que les données sont stockées dans des tables, quand vous établissez une liaison avec une table ou une vue d’une base de données SQL Server, Access crée une nouvelle table (souvent appelée table liée) qui reprend la structure et le contenu de l’objet source. Vous pouvez modifier les données soit dans SQL Server, soit dans Access en mode Feuille de données ou Formulaire. Les modifications que vous apportez aux données à un endroit sont répercutées dans l’autre. Cependant, si vous voulez apporter des modifications structurelles, comme supprimer ou modifier une colonne, vous devez le faire à partir de la base de données SQL Server ou à partir d’un projet Access qui est connecté à cette base de données. Vous ne pouvez pas ajouter, supprimer ou modifier les champs d’une table liée pendant que vous travaillez dans Access.

Préparer la liaison

  1. Localisez la base de données SQL Server qui contient les données avec lesquelles vous voulez établir une liaison. Contactez l’administrateur de la base de données pour obtenir les informations de connexion.

  2. Identifiez les tables et les vues avec lesquelles vous souhaitez établir une liaison. Vous pouvez établir une liaison avec plusieurs objets en une seule opération de liaison.

  3. Passez en revue les données sources et gardez à l’esprit les points suivants :

    • Access ne prend pas en charge plus de 255 champs dans une table. De ce fait, la table liée contiendra seulement les 255 premiers champs de l’objet avec lequel vous établissez une liaison.

    • Les colonnes qui sont en lecture seule dans un objet SQL Server continuent de l’être dans Access.

    • Vous ne pouvez pas ajouter, supprimer ou modifier des colonnes dans une table liée dans Access.

  4. Identifiez la base de données Access dans laquelle vous voulez créer les tables liées. Vérifiez que vous disposez des autorisations nécessaires pour ajouter des données à la base de données. Si vous ne voulez pas stocker les données dans l’une vos bases de données existantes, créez-en une vide en cliquant successivement sur l’onglet Fichier, sur l’onglet Nouveau, puis sur Base de données vide.

  5. Passez en revue les tables de la base de données Access. Quand vous établissez une liaison avec une table ou une vue SQL Server, Access crée une table liée sous le même nom que l’objet source. Si ce nom est déjà utilisé, Access ajoute le chiffre « 1 » au nom de la nouvelle table liée, par exemple Contacts1. (Si Contacts1 est déjà utilisé, Access crée Contacts2, et ainsi de suite.)

  6. Pour établir une liaison vers les données, ouvrez la base de données de destination.

  7. Sous l’onglet Données externes, dans le groupe Importer et lier, cliquez sur Base de données ODBC.

  8. Cliquez sur Lier à la source de données en créant une table attachée, puis sur OK.

  9. Dans la boîte de dialogue Sélectionner la source de données, cliquez sur le fichier .dsn que vous voulez utiliser ou cliquez sur Nouveau pour créer un nouveau nom de source de données (DSN).

  10. Dans la boîte de dialogue Sélectionner la source de données, si le fichier .dsn que vous voulez utiliser existe déjà, cliquez sur le fichier dans la liste.

    J’ai besoin de créer un fichier .dsn

    Remarque : Selon le logiciel qui est installé sur votre ordinateur, les étapes décrites dans cette procédure peuvent varier légèrement.

    1. Cliquez sur Nouveau pour créer un nouveau nom de source de données (DSN).

      L’Assistant Créer une nouvelle source de données démarre.

    2. Dans l’Assistant, sélectionnez SQL Server dans la liste de pilotes, puis cliquez sur Suivant.

    3. Attribuez un nom au fichier .dsn ou cliquez sur Parcourir pour enregistrer le fichier à un autre emplacement.

      Remarque : Vous devez disposer des autorisations d’écriture sur le dossier pour enregistrer le fichier .dsn.

    4. Cliquez sur Suivant, passez en revue les informations récapitulatives, puis cliquez sur Terminer pour mettre fin à l’Assistant Créer une nouvelle source de données.

      L’Assistant Créer une nouvelle source de données vers SQL Server démarre.

    5. Dans l’Assistant, tapez une description de la source de données dans la zone Description. Cette étape est facultative.

    6. Sous À quel serveur SQL Server voulez-vous vous connecter ?, dans la zone Serveur, tapez ou sélectionnez le nom de l’ordinateur SQL Server auquel vous voulez vous connecter, puis cliquez sur Suivant pour continuer.

    7. Dans cette page de l’Assistant, vous aurez peut-être besoin de vous procurer des informations auprès de l’administrateur de la base de données SQL Server à propos, par exemple, du type d’authentification à utiliser (Windows NT ou SQL Server). Cliquez sur Suivant pour continuer.

    8. Dans la page suivante de l’Assistant, vous devrez peut-être obtenir davantage d’informations de l’administrateur de la base de données SQL Server. Si vous voulez vous connecter à une base de données spécifique, vérifiez que la case Changer la base de données par défaut par est cochée, sélectionnez la base de données SQL Server que vous voulez utiliser, puis cliquez sur Suivant.

    9. Cliquez sur Terminer. Passez en revue les informations récapitulatives, puis cliquez sur Tester la source de données.

    10. Examinez les résultats du test, puis cliquez sur OK pour fermer la boîte de dialogue Test de la source de données ODBC de SQL Server.

      Si le test est concluant, cliquez à nouveau sur OK pour terminer l’Assistant ou cliquez sur Annuler pour retourner dans l’Assistant et modifier vos paramètres.

  11. Cliquez sur OK.

    Access affiche la boîte de dialogue Attacher les tables.

  12. Sous Tables, cliquez sur chaque table ou vue avec laquelle vous souhaitez établir une liaison, puis cliquez sur OK.

    1. Si la boîte de dialogue Sélectionner un identificateur unique d’enregistrement s’affiche, cela signifie qu’Access n’a pas pu identifier le ou les champs qui identifient de façon unique chaque ligne des données sources. Dans ce cas, sélectionnez le champ ou la combinaison de champs qui est unique pour chaque ligne, puis cliquez sur OK. Si vous avez des doutes, contactez l’administrateur de la base de données SQL Server.

Access finalise l’opération de liaison et affiche la ou les nouvelles tables liées dans le volet de navigation.

Important : Chaque fois que vous ouvrez une table liée ou l’objet source, les données les plus récentes y apparaissent. Cependant, les modifications structurelles apportées à un objet SQL Server ne sont pas automatiquement répercutées dans une table liée.

Mettre à jour une table liée en appliquant la structure d’objet SQL Server la plus récente

  1. Cliquez avec le bouton droit sur la table dans le volet de navigation, puis cliquez sur Gestionnaire d’attaches dans le menu contextuel.

  2. Activez la case à cocher en regard de chaque table liée que vous souhaitez mettre à jour, ou cliquez sur Sélectionner tout pour sélectionner toutes les tables liées.

  3. Cliquez sur OK.

    Si la mise à jour aboutit, Access affiche un message à cet effet. Sinon, Access affiche un message d’erreur.

  4. Cliquez sur Fermer pour fermer le Gestionnaire de tables liées.

Haut de la page

Interprétation des types de données SQL Server dans Access

Les types de données Access étant différents de ceux de SQL Server, Access doit identifier le type de données Access le plus adapté à chaque colonne de chaque table ou vue SQL Server que vous importez ou avec laquelle vous établissez une liaison. Par exemple, le type de données bit d’une colonne SQL Server importée ou liée dans Access devient le type de données Oui/Non. Autre exemple : une colonne SQL Server dont le type de données est nvarchar(255) (ou plus petit) est importée ou liée avec le type de données Texte, mais une colonne de type nvarchar (256)(ou plus grand) est importée en tant que champ Access Mémo. À l’issue d’une opération d’importation ou de liaison, vous pouvez ouvrir la table en mode Création et vérifier les types de données qu’Access a assignés à ses champs. Vous pouvez modifier les types de données des champs dans les tables importées. Cependant, vous ne pouvez pas modifier les types de données des champs dans les tables liées, sauf si vous les modifiez dans la base de données SQL Server proprement dite ou dans un projet Access qui est connecté à cette base de données.

Le tableau suivant répertorie les principaux types de données SQL Server. Les deuxième et troisième colonnes montrent comment Access interprète chaque type.

Type de données SQL Server

Type de données Access

Taille de champ Access

bigint

Texte

255

binary( taille de champ )

Binaire

Identique à la taille de champ SQL Server

bit

Oui/Non

char( taille de champ ), où la taille de champ est inférieure ou égale à 255

Texte

Identique à la taille de champ SQL Server

char( taille de champ ), où la taille de champ est supérieure à 255

Mémo

datetime

Date/Heure

decimal( précision , échelle )

Nombre

Décimale (les propriétés Précision et Échelle d’Access correspondent à la précision et à l’échelle de SQL Server).

float

Nombre

Double

image

Objet OLE

int

Nombre

Entier long

money

Monétaire

nchar( taille de champ ), où la taille de champ est inférieure ou égale à 255

Texte

Identique à la taille de champ SQL Server

nchar( taille de champ ), où la taille de champ est supérieure à 255

Mémo

ntext

Mémo

numeric( précision , échelle )

Nombre

Décimale (les propriétés Précision et Échelle d’Access correspondent à la précision et à l’échelle de SQL Server).

nvarchar( taille de champ ), où la taille de champ est inférieure ou égale à 255

Texte

Identique à la taille de champ SQL Server

nvarchar( taille de champ ), où la taille de champ est supérieure à 255

Mémo

nvarchar(MAX)

Mémo

real

Nombre

Unique

smalldatetime

Date/Heure

smallint

Nombre

Entier

smallmoney

Monétaire

sql_variant

Texte

255

text

Mémo

timestamp

Binaire

8

tinyint

Nombre

Octet

uniqueidentifier

Nombre

N° de réplication

varbinary

Binaire

Identique à la taille de champ SQL Server

varbinary(MAX)

Objet OLE

varchar( taille de champ ), où la taille de champ est inférieure ou égale à 255

Texte

Identique à la taille de champ SQL Server

varchar( taille de champ), où la taille de champ est supérieure à 255

Mémo

varchar(MAX)

Mémo

xml

Mémo

Haut de la page

Si votre service ou groupe de travail utilise Microsoft SQL Server pour stocker des données, vous serez peut-être parfois amené à utiliser des données SQL Server dans Microsoft Office Access 2007.

Si vous ne connaissez pas bien SQL Server et souhaitez en savoir plus sur ce produit, consultez la page d’accueil de Microsoft SQL Server. Suivez le lien indiqué dans la section Voir aussi de cet article.

Vous pouvez transférer les données d’objets (tables ou vues) SQL Server dans Office Access 2007 de deux manières : par importation ou par liaison. Si vous optez pour l’importation des données, les données seront copiées dans votre base de données Access. Les éventuelles modifications que vous apportez par la suite aux données dans Access ne sont pas répercutées dans la base de données SQL Server. De la même manière, les modifications apportées ultérieurement dans la table ou la vue SQL Server ne sont pas répercutées dans la table Access. En revanche, si vous établissez une liaison avec des données SQL Server, les données restent sur l’ordinateur SQL Server et Access conserve une connexion aux données. Les éventuelles modifications que vous apportez par la suite aux données dans Access sont répercutées dans les données SQL Server, et les modifications que vous apportez dans la base de données SQL Server sont répercutées dans la table liée dans Access.

Cet article décrit les étapes à suivre pour importer des données SQL Server dans Access 2007 ou pour établir une liaison avec celles-ci.

Importer des données SQL Server

L’importation de données SQL Server donne lieu à la création d’une copie de ces données dans une base de données Access. Pendant l’opération d’importation, vous devez spécifier les tables ou les vues que vous voulez copier.

L’opération d’importation donne lieu à la création d’une table dans Access et les données de la base de données SQL Server sont copiées dans la table Access. Dans la section Voir aussi, vous trouverez des liens vers des informations complémentaires sur les tables et sur la structure d’une base de données.

À la fin de l’opération d’importation, vous pouvez choisir d’enregistrer les détails de l’opération sous forme de spécification. Une spécification d’importation vous permet de répéter ultérieurement une opération d’importation sans avoir à parcourir chaque fois les étapes de l’Assistant Importation.

Scénarios courants d’importation d’une table SQL Server dans Access

En règle générale, vous importez les données SQL Server dans une base de données Access pour les raisons suivantes :

  • Vous voulez déplacer de façon permanente des données SQL Server dans une base de données Access, car vous n’avez plus besoin des données dans votre base de données SQL Server. Vous pouvez importer les données dans Access, puis les supprimer de la base de données SQL Server.

  • Votre service ou groupe de travail utilise Access, mais vous êtes parfois dirigé vers une base de données SQL Server pour obtenir des données supplémentaires qui doivent être fusionnées dans l’une de vos bases de données Access.

Les étapes suivantes expliquent comment importer des données SQL Server dans une base de données Access.

Préparer l’opération d’importation

  1. Localisez la base de données SQL Server qui contient les données à copier. Procurez-vous les informations de connexion auprès de l’administrateur de la base de données.

  2. Identifiez les tables ou les vues que vous voulez copier dans la base de données Access. Vous pouvez importer plusieurs objets au cours d’une même opération d’importation.

  3. Passez en revue les données sources et gardez à l’esprit les points suivants :

    • Access ne prend pas en charge plus de 255 champs dans une table. De ce fait, Access importe seulement les 255 premières colonnes.

    • La taille maximale d’une base de données Access est de 2 gigaoctets, auxquels il faut retrancher l’espace nécessaire pour les objets système. Si la base de données SQL Server contient un grand nombre de tables volumineuses, vous ne pourrez peut-être pas les importer toutes dans une même base de données .accdb. Dans ce cas, envisagez de lier les données à votre base de données Access.

    • Access ne crée pas automatiquement les relations entre les tables liées à la fin d’une opération d’importation. Vous devez par conséquent créer manuellement les relations entre les diverses tables nouvelles et existantes à l’aide des options de l’onglet Relations. Pour afficher l’onglet Relations :
      Sous l’onglet Outils de base de données, dans le groupe Afficher/Masquer, cliquez sur Relations. Image du bouton

  4. Identifiez la base de données Access dans laquelle vous voulez importer les données SQL Server.

    Vérifiez que vous disposez des autorisations nécessaires pour ajouter des données à la base de données Access. Si vous ne souhaitez pas stocker les données dans l’une de vos bases de données existantes, créez une base de données vide en cliquant sur le bouton Microsoft Office Image du bouton Office , puis sur Nouveau.

  5. Examinez les tables éventuellement présentes dans la base de données Access.

    L’opération d’importation donne lieu à la création d’une table qui reprend le nom de l’objet SQL Server. Si ce nom est déjà utilisé, Access ajoute « 1 » au nom de la nouvelle table, par exemple Contacts1. (Si Contacts1 est aussi déjà utilisé, Access crée Contacts2, et ainsi de suite.)

    Remarque : Access ne remplace jamais une table dans la base de données au cours d’une opération d’importation, et vous ne pouvez pas ajouter de données SQL Server à une table existante.

Importer les données

  1. Ouvrez la base de données de destination.

    Sous l’onglet Données externes, dans le groupe Importer, cliquez sur Autres.

  2. Cliquez sur Base de données ODBC Image du bouton .

  3. Cliquez sur Importer les données sources dans une nouvelle table de la base de données active, puis sur OK.

  4. Dans la boîte de dialogue Sélectionner la source de données, si le fichier .dsn que vous voulez utiliser existe déjà, cliquez sur le fichier dans la liste.

    J’ai besoin de créer un fichier .dsn

    Remarque : Selon le logiciel qui est installé sur votre ordinateur, les étapes décrites dans cette procédure peuvent varier légèrement.

    1. Cliquez sur Nouveau pour créer un nouveau nom de source de données (DSN).
      L’Assistant Créer une nouvelle source de données démarre.

    2. Dans l’Assistant, sélectionnez SQL Server dans la liste de pilotes, puis cliquez sur Suivant.

    3. Attribuez un nom au fichier .dsn ou cliquez sur Parcourir pour enregistrer le fichier à un autre emplacement.

      Remarque : Vous devez disposer des autorisations d’écriture sur le dossier pour enregistrer le fichier .dsn.

    4. Cliquez sur Suivant, passez en revue les informations récapitulatives, puis cliquez sur Terminer pour mettre fin à l’Assistant.
      L’Assistant Créer une nouvelle source de données vers SQL Server démarre.

    5. Dans l’Assistant, tapez une description de la source de données dans la zone Description. Cette étape est facultative.

    6. Sous À quel serveur SQL Server voulez-vous vous connecter ?, dans la zone Serveur, tapez ou sélectionnez le nom du serveur SQL Server auquel vous voulez vous connecter, puis cliquez sur Suivant pour continuer.

    7. Dans cette page de l’Assistant, vous aurez peut-être besoin de vous procurer des informations auprès de l’administrateur de la base de données SQL Server à propos, par exemple, du type d’authentification à utiliser (Microsoft Windows NT ou SQL Server). Cliquez sur Suivant pour continuer.

    8. Dans la page suivante de l’Assistant, vous devrez peut-être obtenir davantage d’informations de l’administrateur de la base de données SQL Server avant de poursuivre l’opération. Si vous voulez vous connecter à une base de données spécifique, vérifiez que la case Changer la base de données par défaut par est cochée. Sélectionnez ensuite la base de données que vous voulez utiliser, puis cliquez sur Suivant.

    9. Cliquez sur Terminer. Passez en revue les informations récapitulatives, puis cliquez sur Tester la source de données.

    10. Examinez les résultats du test, puis cliquez sur OK pour fermer la boîte de dialogue Test de la source de données ODBC de SQL Server.

      Si le test est concluant, cliquez à nouveau sur OK pour terminer l’Assistant ou cliquez sur Annuler pour retourner dans l’Assistant et apporter des modifications à vos paramètres.

  5. Cliquez sur OK pour fermer la boîte de dialogue Sélectionner la source de données.

    Access affiche la boîte de dialogue Importer des objets.

  6. Sous Tables, cliquez sur chacune des tables ou des vues que vous voulez importer, puis cliquez sur OK.

  7. Si la boîte de dialogue Sélectionner un identificateur unique d’enregistrement s’affiche, cela signifie qu’Access n’a pas pu identifier le ou les champs qui identifient de façon unique chaque ligne d’un objet particulier. Dans ce cas, sélectionnez le champ ou la combinaison de champs qui est unique pour chaque ligne, puis cliquez sur OK. Si vous avez des doutes, contactez l’administrateur de la base de données SQL Server.

Access importe les données. Si vous prévoyez de répéter l’opération d’importation à un moment ultérieur, vous pouvez enregistrer les étapes d’importation sous forme de spécification d’importation et réexécuter facilement les mêmes étapes d’importation à un moment ultérieur. Passez à la section suivante de cet article pour terminer la tâche. Si vous ne voulez pas enregistrer les détails de la spécification d’importation, cliquez sur Fermer sous Enregistrer les étapes d’importation dans la boîte de dialogue Données externes - Base de données ODBC. Access finalise l’opération d’importation et affiche la ou les nouvelles tables dans le volet de navigation.

Enregistrer les étapes d’importation sous forme de spécification

  1. Sous Enregistrer les étapes d’importation dans la boîte de dialogue Données externes - Base de données ODBC, cochez la case Enregistrer les étapes d’importation.

    Un ensemble de contrôles supplémentaires s’affiche.

  2. Dans la zone Enregistrer sous, attribuez un nom à la spécification d’importation.

  3. Tapez une description dans la zone Description. Cette étape est facultative.

  4. Si vous voulez effectuer l’opération à intervalles réguliers (p. ex. : toutes les semaines ou tous les mois), activez la case à cocher Créer une tâche Outlook. Une tâche est créée dans Microsoft Office Outlook 2007 qui vous permet d’exécuter la spécification.

  5. Cliquez sur Enregistrer l’importation.

Configurer la tâche Outlook

Si vous avez coché la case Créer une tâche Outlook dans la procédure précédente, Access démarre Office Outlook 2007 et affiche une nouvelle tâche. Pour configurer la tâche, procédez comme suit.

Remarque : Si Outlook n’est pas installé, Access affiche un message d’erreur. Si Outlook n’est pas configuré correctement, l’Assistant Configuration d’Outlook démarre. Suivez les instructions de l’Assistant pour configurer Outlook.

  1. Dans la fenêtre Tâche Outlook, examinez et modifiez les paramètres de la tâche, tels que Échéance et Rappel.

    Pour rendre la tâche périodique, cliquez sur Périodicité, puis fournissez les informations appropriées.

    Cette illustration présente le Planificateur de tâches avec certains paramètres standard.

    Planificateur de tâches Outlook

    Pour plus d’informations sur la planification des tâches Outlook, consultez l’article Planifier une opération d’importation ou d’exportation.

  2. Une fois les paramètres de la tâche configurés dans Outlook, sous l’onglet Tâche, dans le groupe Actions, cliquez sur Enregistrer et fermer.

Exécuter une tâche enregistrée

  1. Dans le volet de navigation Outlook, cliquez sur Tâches et double-cliquez sur la tâche que vous exécutez.

  2. Sous l’onglet Tâche, dans le groupe Microsoft Office Access, cliquez sur Exécuter l’importation Image du bouton .

  3. Retournez dans la fenêtre Access, puis appuyez sur F5 pour actualiser le volet de navigation.

  4. Double-cliquez sur la table importée pour l’ouvrir en mode Feuille de données.

  5. Vérifiez que tous les champs et les enregistrements ont bien été importés et qu’il n’y a pas d’erreurs.

  6. Dans le volet de navigation, cliquez avec le bouton droit sur la table importée, puis cliquez sur Mode Création dans le menu contextuel. Examinez les types de données des champs et les autres propriétés des champs.

Haut de la page

Établir une liaison avec des données SQL Server

Une liaison vous permet de vous connecter à des données sans importer ces informations. Vous pouvez ainsi consulter et modifier les données les plus récentes à la fois dans la base de données SQL Server et dans votre base de données Access sans avoir à créer ni conserver une copie des données dans Access. Si vous ne voulez pas copier les données SQL Server dans votre base de données Access, mais que vous voulez à la place exécuter des requêtes et générer des états basés sur ces données, vous devez opter pour la liaison et non pour l’importation.

Quand vous établissez une liaison avec une table ou une vue dans une base de données SQL Server, Access crée une nouvelle table (souvent appelée table liée) qui reprend la structure et le contenu de l’objet source. Vous pouvez apporter des modifications aux données soit dans SQL Server, soit dans Access en mode Feuille de données ou Formulaire. Les modifications que vous apportez aux données à un endroit sont répercutées dans l’autre. Cependant, si vous voulez apporter des modifications structurelles, comme supprimer ou modifier une colonne, vous devez le faire à partir de la base de données SQL Server ou à partir d’un projet Access qui est connecté à cette base de données. Vous ne pouvez pas ajouter, supprimer ou modifier les champs d’une table liée pendant que vous travaillez dans Access.

Si la base de données SQL Server contient une grande quantité de données, vous avez tout intérêt à choisir la liaison plutôt que l’importation, car la taille maximale d’une base de données Access est de 2 gigaoctets (auxquels il faut retrancher l’espace nécessaire pour les objets système). Si l’importation de nombreuses tables ou vues peut faire dépasser cette limite, l’établissement d’une liaison avec des données ne fait pas croître votre base de données Access de manière importante.

Scénarios courants de liaison avec des données SQL Server

En règle générale, vous établissez une liaison avec une table ou une vue SQL Server à partir d’une base de données Access pour les raisons suivantes :

  • Votre service ou groupe de travail utilise Access pour créer des états et exécuter des requêtes et utilise SQL Server pour le stockage des données. Chaque équipe peut créer des tables et des vues SQL Server pour le stockage centralisé, mais il est souvent nécessaire de transférer ces données dans des programmes de bureau pour des besoins d’agrégation et de création de rapports. La liaison est la solution idéale, car elle permet aux utilisateurs de la base de données SQL Server et de la base de données Access d’ajouter et de mettre à jour des données, mais aussi de pouvoir toujours voir et exploiter les données les plus récentes.

  • Vous êtes un utilisateur Access et utilisez SQL Server depuis peu. Vous avez fait migrer plusieurs de vos bases de données vers SQL Server et la plupart des tables de ces bases de données sont des tables liées. Désormais, au lieu de créer des tables Access, vous créerez des tables et des vues dans SQL Server et vous établirez des liaisons avec celles-ci à partir de vos bases de données Access.

  • Vous voulez continuer de stocker vos données dans SQL Server, mais vous souhaitez aussi travailler avec les données les plus récentes dans Access pour pouvoir exécuter les requêtes et imprimer les états que vous avez conçus dans Access.

Préparer à établir une liaison avec une table SQL Server

  1. Localisez la base de données SQL Server qui contient les données avec lesquelles vous voulez établir une liaison. Contactez l’administrateur de la base de données pour obtenir les informations de connexion.

  2. Identifiez les tables et les vues avec lesquelles vous souhaitez établir une liaison. Vous pouvez établir une liaison avec plusieurs objets en une seule opération de liaison.

  3. Passez en revue les données sources et gardez à l’esprit les points suivants :

    • Access ne prend pas en charge plus de 255 champs dans une table. De ce fait, la table liée contiendra seulement les 255 premiers champs de l’objet avec lequel vous établissez une liaison.

    • Les colonnes qui sont en lecture seule dans un objet SQL Server continuent de l’être dans Access.

    • Vous ne pouvez pas ajouter, supprimer ou modifier des colonnes dans une table liée dans Access.

  4. Identifiez la base de données Access dans laquelle vous voulez créer les tables liées. Vérifiez que vous disposez des autorisations nécessaires pour ajouter des données à la base de données. Si vous ne voulez pas stocker les données dans l’une de vos bases de données existantes, créez-en une vide à l’aide de la commande suivante :

    Cliquez sur le bouton Microsoft Office Image du bouton Office , puis sur Nouveau.

  5. Passez en revue les tables de la base de données Access. Quand vous établissez une liaison avec une table ou une vue SQL Server, Access crée une table liée sous le même nom que l’objet source. Si ce nom est déjà utilisé, Access ajoute le chiffre « 1 » au nom de la nouvelle table liée, par exemple Contacts1. (Si Contacts1 est déjà utilisé, Access crée Contacts2, et ainsi de suite.)

Lier des données

  1. Ouvrez la base de données de destination.

  2. Sous l’onglet Données externes, dans le groupe Importer, cliquez sur Autres.

  3. Cliquez sur Base de données ODBC.

  4. Cliquez sur Lier à la source de données en créant une table attachée, puis sur OK.

  5. Dans la boîte de dialogue Sélectionner la source de données, cliquez sur le fichier .dsn que vous voulez utiliser ou cliquez sur Nouveau pour créer un nouveau nom de source de données (DSN).

  6. Dans la boîte de dialogue Sélectionner la source de données, si le fichier .dsn que vous voulez utiliser existe déjà, cliquez sur le fichier dans la liste.

    J’ai besoin de créer un fichier .dsn

    Remarque : Selon le logiciel qui est installé sur votre ordinateur, les étapes décrites dans cette procédure peuvent varier légèrement.

    1. Cliquez sur Nouveau pour créer un nouveau nom de source de données (DSN).
      L’Assistant Créer une nouvelle source de données démarre.

    2. Dans l’Assistant, sélectionnez SQL Server dans la liste de pilotes, puis cliquez sur Suivant.

    3. Attribuez un nom au fichier .dsn ou cliquez sur Parcourir pour enregistrer le fichier à un autre emplacement.

      Remarque : Vous devez disposer des autorisations d’écriture sur le dossier pour enregistrer le fichier .dsn.

    4. Cliquez sur Suivant, passez en revue les informations récapitulatives, puis cliquez sur Terminer pour mettre fin à l’Assistant Créer une nouvelle source de données.
      L’Assistant Créer une nouvelle source de données vers SQL Server démarre.

    5. Dans l’Assistant, tapez une description de la source de données dans la zone Description. Cette étape est facultative.

    6. Sous À quel serveur SQL Server voulez-vous vous connecter ?, dans la zone Serveur, tapez ou sélectionnez le nom de l’ordinateur SQL Server auquel vous voulez vous connecter, puis cliquez sur Suivant pour continuer.

    7. Dans cette page de l’Assistant, vous aurez peut-être besoin de vous procurer des informations auprès de l’administrateur de la base de données SQL Server à propos, par exemple, du type d’authentification à utiliser (Windows NT ou SQL Server). Cliquez sur Suivant pour continuer.

    8. Dans la page suivante de l’Assistant, vous devrez peut-être obtenir davantage d’informations de l’administrateur de la base de données SQL Server. Si vous voulez vous connecter à une base de données spécifique, vérifiez que la case Changer la base de données par défaut par est cochée, sélectionnez la base de données SQL Server que vous voulez utiliser, puis cliquez sur Suivant.

    9. Cliquez sur Terminer. Passez en revue les informations récapitulatives, puis cliquez sur Tester la source de données.

    10. Examinez les résultats du test, puis cliquez sur OK pour fermer la boîte de dialogue Test de la source de données ODBC de SQL Server.

      Si le test est concluant, cliquez à nouveau sur OK pour terminer l’Assistant ou cliquez sur Annuler pour retourner dans l’Assistant et apporter des modifications à vos paramètres.

  7. Cliquez sur OK.
    Access affiche la boîte de dialogue Attacher les tables.

  8. Sous Tables, cliquez sur chaque table ou vue avec laquelle vous souhaitez établir une liaison, puis cliquez sur OK.

  9. Si la boîte de dialogue Sélectionner un identificateur unique d’enregistrement s’affiche, cela signifie qu’Access n’a pas pu identifier le ou les champs qui identifient de façon unique chaque ligne des données sources. Dans ce cas, sélectionnez le champ ou la combinaison de champs qui est unique pour chaque ligne, puis cliquez sur OK. Si vous avez des doutes, contactez l’administrateur de la base de données SQL Server.

Access finalise l’opération de liaison et affiche la ou les nouvelles tables liées dans le volet de navigation.

Important : Chaque fois que vous ouvrez une table liée ou l’objet source, les données les plus récentes y apparaissent. Cependant, les modifications structurelles apportées à un objet SQL Server ne sont pas automatiquement répercutées dans une table liée.


Pour mettre à jour une table liée en appliquant la structure d’objet SQL Server la plus récente :

  1. Cliquez avec le bouton droit sur la table dans le volet de navigation, puis cliquez sur Gestionnaire d’attaches dans le menu contextuel.

  2. Activez la case à cocher en regard de chaque table liée que vous souhaitez mettre à jour, ou cliquez sur Sélectionner tout pour sélectionner toutes les tables liées.

  3. Cliquez sur OK.

    Si la mise à jour aboutit, Access affiche un message à cet effet. Sinon, Access affiche un message d’erreur.

  4. Cliquez sur Fermer pour fermer le Gestionnaire de tables liées.

Haut de la page

Interprétation des types de données SQL Server dans Access

Les types de données Access étant différents de ceux de SQL Server, Access doit identifier le type de données Access le plus adapté à chaque colonne de chaque table ou vue SQL Server que vous importez ou avec laquelle vous établissez une liaison. Par exemple, le type de données bit d’une colonne SQL Server importée ou liée dans Access devient le type de données Oui/Non. Autre exemple : une colonne SQL Server dont le type de données est nvarchar(255) (ou plus petit) est importée ou liée dans Access avec le type de données Texte, mais une colonne de type nvarchar (256) (ou plus grand) est transférée en tant que champ Access Mémo. À l’issue d’une opération d’importation ou de liaison, ouvrez la table en mode Création et vérifiez les types de données qu’Access a assignés à ses champs. S’il est possible de modifier les types de données des champs dans les tables importées, vous ne pouvez pas le faire dans les tables liées, sauf dans la base de données SQL Server ou dans un projet Access qui est connecté à cette base de données.

Le tableau suivant répertorie les principaux types de données SQL Server. Les deuxième et troisième colonnes montrent comment Access interprète chaque type.

Type de données SQL Server

Type de données Access

Taille de champ Access

bigint

Texte

255

binary( taille de champ )

Binaire

Identique à la taille de champ SQL Server

bit

Oui/Non

char( taille de champ ), où la taille de champ est inférieure ou égale à 255

Texte

Identique à la taille de champ SQL Server

char( taille de champ ), où la taille de champ est supérieure à 255

Mémo

datetime

Date/Heure

decimal( précision , échelle )

Nombre

Décimale (les propriétés Précision et Échelle d’Access correspondent à la précision et à l’échelle de SQL Server).

float

Nombre

Double

image

Objet OLE

int

Nombre

Entier long

money

Monétaire

nchar ( taille de champ ), où la taille de champ est inférieure ou égale à 255

Texte

Identique à la taille de champ SQL Server

nchar ( taille de champ ), où la taille de champ est supérieure à 255

Mémo

ntext

Mémo

numeric( précision , échelle )

Nombre

Décimale (les propriétés Précision et Échelle d’Access correspondent à la précision et à l’échelle de SQL Server).

nvarchar ( taille de champ ), où la taille de champ est inférieure ou égale à 255

Texte

Identique à la taille de champ SQL Server

nvarchar ( taille de champ ), où la taille de champ est supérieure à 255

Mémo

nvarchar (MAX)

Mémo

real

Nombre

Unique

smalldatetime

Date/Heure

smallint

Nombre

Entier

smallmoney

Monétaire

sql_variant

Texte

255

text

Mémo

timestamp

Binaire

8

tinyint

Nombre

Octet

uniqueidentifier

Nombre

N° de réplication

varbinary

Binaire

Identique à la taille de champ SQL Server

varbinary (MAX)

Objet OLE

varchar ( taille de champ ), où la taille de champ est inférieure ou égale à 255

Texte

Identique à la taille de champ SQL Server

varchar ( taille de champ), où la taille de champ est supérieure à 255

Mémo

varchar (MAX)

Mémo

xml

Mémo

Haut de la page

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×