[Java] acces à plusieurs BD Access

Résolu
Bonjour,

Voila j'arrive a me connecter a une BD Access a partir d'un programme java sans probleme, mais il faut créer avant un lien Windows ODBC a l'aide de "l'Administrateur de sources de données ODBC" en donnant un nom a la source et en indiquant le lien vers la source.

Mon problème est le suivant:
J'aimerais avoir un programme qui accède aux différentes BD Access dont j'ai besoin mais indépendamment du poste sur lequel je me trouve. Est-il possible de réaliser cela, et par quel moyen y arriver.

Voici le code que j'utilise habituellement pour me connecter a une BD en ayant créé préalablement un lien ODBC dans Windows (ce que je veux éviter justement):

try {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        }
        catch(ClassNotFoundException e) {
        System.err.println(" Erreur de chargement du driver : "+ e) ;
        }
        try{
        String filename="C:/DTWH.mdb";    <--chemin de la BD
        String database = "jdbc:odbc:Driver={Microsoft Access Driver(*.mdb)};DBQ=";
        database+= filename.trim()+ ";DriverID=22;READONLY=true}";
        Connection conn = DriverManager.getConnection( database ,"","");
        Statement st = conn.createStatement();
        catch(SQLException e){}

5 réponses

  • Votes
  • Date
  • Date décroissante
  1. Merci beaucoup choubaka,

    j'ai récupérer a l'aide d'une méthode tous les fichiers relatif aux BD sur le serveurs dans un tableau de fichiers. En parcourant le tableau je charge a chaque fois la BD a l'aide de la méthode
    getAbsolutePath();
    qui me donne l'arborescence du fichier sur le serveur :p

    Ca marche maitenant !!
    1. Modérateur
      si tu mets les chemin du serveur au lieu de C:/, elle devraient être accessibles par le réseau ...

      pour choisir la BD que tu veux utiliser, rien ne t'empêche d'utiliser une fenêtre d'entrer pour rentrer le nom de la BD (ça peut marcher si tu connais les noms des BD par coeur et qu'elles se trouvent toutes dans le même répertoire ... Tu peux également utiliser un browser de ficher pour les rechercher... le JFileChooser peut t'aider pour ça ..

      https://docs.oracle.com/javase/1.5.0/docs/api/javax/swing/JFileChooser.html

      un