How to connect to a Microsoft Access database

From The Document Foundation Wiki
< Faq‎ | Base
Jump to: navigation, search
This page is a translated version of the page Faq/Base/How to connect to a Microsoft Access database and the translation is 69% complete.

Other languages:
English • ‎français

These article describes how to connect to a Microsoft Access database file, if you use a MS Windows operating system.

Pré-requis sous Windows

La description qui est faite ici a été testée sous WinXP Familial. Il est possible que le fonctionnement sous d'autres versions soit légèrement différent.

Le type de fichier MDB est apparu avec MS Access 97 (MS Office 8) et a été utilisé jusqu'à la version MS Access 2003 (MS Office 11). Il peut être géré au moyen du moteur de bases de données "Jet 4.0". MS Access 2007 (MS Office 12) utilise le type de fichiers ACCDB, qui utilise un moteur de base de données Jet modifié, renommé en "Access Database Engine" (ACE).

Ces versions ne sont pas compatibles. D'une part ACCDB ne comporte pas de notions de sécurité basée sur l'utilisateur, d'autre part vous pouvez travailler avec des pièces jointes à l'intérieur du fichier de données par exemple.

Les deux versions peuvent être accédées en utilisant un "driver ODBC" ou un "OLE DB provider". D'anciennes versions de Microsoft Windows (p.ex. Win98) peuvent ne pas comporter d'emblée le nécessaire pour gérer des fichiers MDB. Les fichiers manquants peuvent être téléchargés depuis http://msdn2.microsoft.com/en-us/data/aa937730.aspx. Vous aurez sans doute besoin du “Jet 4.0 Service Pack” et des “Microsoft Data Access Components (MDAC)”. WinXP inclut ces fichiers d'emblée. Pour accéder à des fichiers ACCDB, vous aurez sans doute besoin des composants “ 2007 Office System Driver: Data Connectivity Components”. La recherche du terme AccessDatabaseEngine (sans espaces) dans le centre de téléchargement de Microsoft vous mènera au lien de téléchargement. Même sous WinXP, ces fichiers ne sont pas fournis automatiquement.

Type de connexion (Étape 1 de l'Assistant)

Démarrez l'Assistant par Fichier ▸ Nouveau ▸ Base de données ou encore en appelant le menu Base de données dans le démarrage rapide d'OOo.À la première étape, choisissez Se connecter à une base de données existante. Ouvrez la liste déroulante et choisissez Microsoft Access, ADO ou ODBC. Le contenu des étapes suivantes dépend du type de connexion choisi ici. Lorsque la connexion sera effective, elle sera mentionnée sur la gauche de la barre d'état.

In the first step select Connect to an existing database. Open the drop-down list. You can use Microsoft Access, ADO, or ODBC. The next steps depend on the chosen kind of connection. When connection is finished, you see your chosen connection on the left side in the status bar.

Paramétrage de la connexion (Étape 2 de l'Assistant)

Microsoft Access

Fichiers de type MDB 
Choisissez MDB sur la deuxième page de l'Assistant. OOo utilise une connexion ADO dont tous les paramètres sont positionnés à leur valeur par défaut. Si votre base est protégée par mot de passe, vous ne pourrez donc pas employer cette méthode.
Fichiers de type ACCDB 
La gestion simplifiée de l'option Microsoft Access n'est pas encore disponible pour le format ACCDB.

ADO

Entrez l' URL de la source de données sur la deuxième page de l'Assistant. Ceci n'est pas le chemin et le nom de fichier de votre fichier de base de données, mais c'est ce qu'on appelle “la chaîne de connexion”.

Génération de la chaîne de connexion

Si vous ne connaissez pas la chaîne de connexion, cliquez sur Parcourir. Ceci a pour effet d'ouvrir l'Assistant “Universal Data Link (UDL)” de Windows. Vous obtenez une boîte de dialogue dont le titre est Propriétés de la liaison de données. Les pages Provider, Connexions, Avancé, et Tous peuvent être utilisées dans n'importe quel ordre. Lorsque vous refermez ce dialogue, le champ Data source URL contient la chaîne de connexion.

Page Provider
Fichiers de type MDB 
Choisissez Microsoft Jet 4.0 OLE DB Driver
Fichiers de type ACCDB 
Choisissez Microsoft Office 12.0 Access Database Engine OLE DB Provider
Page Connexions
Fichiers de type MDB 
Entrez le chemin absolu et le nom de votre fichier MDB ou cliquez sur les bouton pour rechercher le fichier en question.
Si vous avez une gestion des utilisateurs dans votre base de données 
Entrez ici le nom d'utilisateur, sinon laissez cette rubrique sur la valeur par défaut (Admin). Laissez également l'option Mot de passe vide inchangée car le paramétrage des mots de passe ne fonctionne pas ici.
Fichiers de type ACCDB 
Entrez le chemin absolu de votre fichier ACCDB. Il n'y a pas de recherche de fichier. Comme le type de fichier ACCDB ne dispose pas d'options d'administration des utilisateurs, laissez les paramètres par défaut Admin et Mot de passe vide inchangés.
Page Avancé

Cette page permet de définir les contraintes d'accès à la base de données. La valeur par défaut est lecture/écriture.

Page Tous

Cette page permet de définir d'autres paramètres d'initialisation pour le provider OLE DB. Veuillez vous reporter au site de Microsoft pour de plus amples informations.

Exemples :

  • Si votre base Access est protégée par un mot de passe, il vous faut l'entrer ici. Choisissez Jet OLEDB Database Password puis cliquez sur Edit Value. Entrez le mot de passe ici.
  • Pour les fichiers MDB, l'élément JetOLEDB:System database contient le chemin et le nom du fichier d'information sur le groupe. Sous WinXP, la valeur par défaut est c:\Windows\System32\system.mdw. Vous devez le saisir lorsqu'un autre utilisateur qu'“Admin” doit accéder à la base.

Enfin, allez à la page Connexions et testez la connexion. Si vous recevez un message d'erreur, vous devez la corriger sans quoi aucune connexion ne sera possible. Cliquez OK pour terminer.

Vous voila revenu à LibO. En cliquant Suivant>> vous passez au paramétrage de l'authentification de l'utilisateur.

ODBC

Sur la deuxième page de l'Assistant, entrez le nom de la source ODBC. Parcourir vous donne la liste des sources ODBC existantes.

Enregistrement d'une source de données ODBC

Si vous n'avez pas encore enregistré votre base Access en tant que source de données sous Windows, cliquez sur Parcourir puis sur Organiser. Vous entrez dans le dialogue Windows "Administrateur de source de données ODBC". Ce dialogue peut également être lancé depuis Panneau de configuration → Outils d'administration → Sources de données (ODBC).

Sélectionnez l'un des onglets DSN et cliquez sur Ajouter. Faites appel au système d'aide pour connaître celui qui est adapté à votre cas. Si vous vous connectez au moyen d'un File DSN, vous ne pourrez pas l'utiliser directement. Il vous faudra une chaîne de connexion ADO complémentaire. Les tables de données ne seront alors accessibles qu'en lecture dans ce cas.

Fichiers de type MDB 
Sélectionnez l'un des Microsoft Access Driver puis cliquez (German) Fertig stellen.
Fichiers de type ACCDB 
Sélectionnez Microsoft Access Driver (*.mdb *.accdb) puis cliquez (German) Fertig stellen.

À la fenêtre suivante Paramètres ODBC pour Microsoft Access, spécifiez le nom de la source de données. C'est cet identifiant qui sera listé plus tard.

En cliquant sur Choisir, on ouvre un dialogue de sélection de fichier par l'intermédiaire duquel vous pouvez choisir votre fichier de base de données.

Fichiers de type MDB 
Si vous gérez les utilisateurs dans votre base et qu'un autre qu' Admin doit y accéder, vérifiez l'option Banques de données dans la section Système de banques de données. Le bouton Système de banques de données ouvre un sélecteur de fichiers. Sous WinXP Home le fichier par défaut à choisir est c:\Windows\System32\system.mdw.

Si votre fichier de base de données Access est protégé par mot de passe, vous pouvez cliquer sur (German) Erweitert et entrer le mot de passe ici. Ce n'est néanmoins pas une bonne idée car dans ce cas le mot de passe est stocké en clair dans l'information ODBC qui figure dans la base de registre. Laissez le champ Nom d'utilisateur vide.

Vous pouvez accéder à d'autres paramètres sous (German) Erweitert et Options>>. Par exemple vous pouvez cocher l'ouverture exclusive mais alors vous ne pourrez pas cacher les tables sous OOo.Quittez les dialogues par OK et revenez au dialogue OOo Source de données.

La nouvelle source de données devrait faire partie de la liste. Sélectionnez-la puis validez par OK. Suivant>>.

Nom de source de données des fichiers ODBC (DSN)

Sélectionnez une connexion de type ADO et cliquez sur Parcourir afin de générer la chaîne de connexion.

Page Provider
choisissez "Microsoft OLE DB Provider for ODBC Drivers".
Page Connexion
Choisissez "Utiliser la Connexion par chaîne de caractères".

Cliquez sur Créer, noter le fichier DSN dans la liste fournie et cliquez sur OK.Si le fichier de base de données Access nécessite un mot de passe, vous devez le préciser.

Tester la connexion, OK.

Suivez la description donnée pour ODBC à l'étape 3 de l'Assistant.

Paramétrage de l'authentification de l'utilisateur (Étape 2 de l'Assistant)

ADO

Leave the fields empty. Test the connection. Next>>

ODBC

If your database is password protected and you haven't enter the password in the ODBC informations, check Password required.

File type MDB
If not Admin but another user shall work with the database, enter the user name here, otherwise leave the field empty.
File type ACCDB
The file type doesn't know user management, leave the field User name empty.

Test the connection. If necessary enter the password now. Next>>

Save and Proceed (Wizard Step 4)

If you want to use the data source in other office modules, for example for mail merge, you must check the option Yes, register the database for me. After click on Finish you determine file name and folder to save for the Open Document Base file. Now you can work with the database.

Properties of the Connections

Access to the Tables

File type MDB
You can alter the content of the table, add and remove records.
File type ACCDB
In an ADO connection you can only read the tables but not write them. It is not sure whether this is fault of OOo. In an ODBC connection you have got read and write access to the tables.

You are able to define new tables. However in both connection types you cannot alter the structure of existing tables.

MS queries are handled as views in OOo and shown in the table container.

See also

MSDN Office Development http://msdn2.microsoft.com/en-us/library/ms400535.aspx


Autor: Regina 14 September 2007 (original at openoffice.org)
Please don't hesitate to improve this guide and adapt it to new versions.