IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

[Dbase 3] Comment s'y connecter en JDBC ? (Attention ODBC n'est pas la solution)


Sujet :

JDBC Java

  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    605
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 605
    Points : 670
    Points
    670
    Par défaut [Dbase 3] Comment s'y connecter en JDBC ? (Attention ODBC n'est pas la solution)
    Bonjour,

    Pour parvenir à lire et modifier des données dans des tables DBase 3 existantes (dans le cadre d'un GIS), j'ai besoin d'y lancer des requêtes SQL.
    Parce que le logiciel Java qui les emploie peut s'exécuter dans les environnements que l'on désire (Windows, Linux, etc.), un système JDBC-ODBC ne peut pas convenir.

    Il me faudrait un vrai driver JDBC de type 4 (idéalement !) pour DBase.
    Est-ce que cela se trouve, et si possible, dans le monde Open Source ou libre d'emploi ?

    Merci !

  2. #2
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    bonjour,
    Franchement c'est abusé, tu n'a même pas essayé de chercher sur google !
    J'ai lancé une recherche et j'ai trouvé plein d'infos !
    Pour du JDBC, on trouve du gratuit mais pas du libre.
    Pour de l'opensource, pas de JDBC mais des API de lecture direct de fichier DBF.

    Maintenant lance une recherche et tu vera !
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    605
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 605
    Points : 670
    Points
    670
    Par défaut
    Si j'ai cherché, et beaucoup.
    Et je n'ai absolument rien trouvé.

    SteelDBF et HXTT proposent des versions d'évaluation limitées, c'est tout.
    Rares sont les réponses, centrées pour un grand nombre d'entre-elles entre 2001 et 2004, qui ont encore une utilité : elles ne mènent souvent plus nulle-part.
    Quant aux solutions ODBC - JDBC, par principe, elles ne passent pas sur Linux.

    Je ne sais pas ce que tu as pu trouver qui m'a échappé, mais comme je suis très à l'affut de faire des SELECT, UPDATE, INSERT, DELETE en base DBase 3, donnes donc quelques exemples probants !
    Que je vois à quel point tu as eu raison d'être si véhément...

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    de toutes facons, odbc a disparu sur java 8 si je ne me trompe pas.

  5. #5
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    D'un autre coté, dbase 3 date des années 80 et est un peu obsolète de nos jours ... cela pour dire qu'il ne faut pas espérer trouver des pilotes qui date de 2014

    Cependant, en cherchant un minimum j'ai trouvé :
    - pour jdbc : dbf_jdbc
    - pour du non jdbc : dans-dbf-lib et jdbf
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    605
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 605
    Points : 670
    Points
    670
    Par défaut
    jbdf ne soutient pas SQL.
    dans-dbf-lib est abandonné, et n'a pas quitté le stade de la bêta.

    dbf_jdbc soutient SQL mais est une évaluation de 30 jours avant de passer à la version payante (cf. http://www.caigen.com/download.html)

    Il faut chercher plus qu'un minimum, malheureusement...
    Tu vois, ce n'est pas si simple.

  7. #7
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Si cet accès dbase est si important, en quoi la version payante est un problème?

    Comme certains l'ont déjà dit, dbase3 c'est un vieux truc qui moisi dans le coin de certains serveur. Tu as surement une très bonne raison de ne pas migrer vers une autre base, mais faut assumer les cout

    Edit: il reste aussi l'option suggérées sur d'autres forum: extraire les données de DB3, les injecter dans une autre base de données qui support SQL et partir de là. Quitte à retransférer dans l'autre sens après.

  8. #8
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    605
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 605
    Points : 670
    Points
    670
    Par défaut
    Il s'agit d'intégrer du SQL vers une base Dbase 3 à un logiciel open-source existant sous Apache.
    Du coup, le payant n'est pas adapté.

    Les utilisateurs de systèmes d'information géographique emploient des fichiers shapefile (.shp) qui reposent sur une base Dbase 3 sous-jacente (.dbf). Ça a été standardisé en 1989, et maintenant tout le monde vit avec. En fait, c'est même pire que ça : même quand il n'y a pas besoin de shapefile, si l'on veut des données géographiques et qu'on télécharge sur l'INSEE quelques simples données attributaires, et bien c'est très souvent un .dbf qu'on trouve dans le fichier .zip qu'on reçoit...

    Impossible de réformer tout le monde. Ça durera encore des années.

  9. #9
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par grunt2000 Voir le message
    Il s'agit d'intégrer du SQL vers une base Dbase 3 à un logiciel open-source existant sous Apache.
    De toutes façons, selon moi, les probabilités que tu trouve un driver jdbc dbase 3
    -> open source
    -> et en plus open-source compatible avec la licence du logiciel existant (la licence apache n'est pas compatible avec la GPL par exemple)

    Son très faibles.


    Ben soit tu abandonne cette idée qui pue
    Soit tu développe toi même le driver sur base des autres outils existant accédant aux données. Parce que ce qui fait que tu n'as pas d'outils open-source, c'est que Dbase ne connait pas le SQL, contrairement aux autres bases
    Soit, comme suggéré, tu fais un transfert temporaire en back-end vers une base de données réelle (genre h2) tu y fais exécute ton SQL et à la fermeture tu réécrit le dbf si il est prévu la possibilité de modifier
    Soit tu te limite a windows et ODBC, tant pis pour les non-windows
    Soit tu vérifie que tu est bien limité à cette licence d'apache (tu compte faire remonter le travail vers la fondation apache? Vous comptez distribuer le logiciel ou c'est pour usage interne uniquement?)

  10. #10
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    605
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 605
    Points : 670
    Points
    670
    Par défaut
    J'ai choisi de développer moi-même le driver.
    Mais bon, je voulais être sûr qu'il n'y avait pas vraiment d'autre alternative.

  11. #11
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    oublie pas de la passer en open source, ça pourrait resservir quelqu'un d'autre dans 10 ans

  12. #12
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    605
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 605
    Points : 670
    Points
    670
    Par défaut
    Pour le moment, je sais faire le plus simple : un SELECT * FROM <DBF>, à l'aide d'un Driver / Connection / Statement / ResultSet faits main.
    Le choix des colonnes, la clause where, les Insert/Update/Delete viendront progressivement, parce qu'ils sont plus complexes à implémenter.

Discussions similaires

  1. Réponses: 12
    Dernier message: 30/04/2015, 16h07
  2. Réponses: 1
    Dernier message: 16/10/2014, 18h37
  3. Réponses: 3
    Dernier message: 10/09/2009, 16h24
  4. Réponses: 3
    Dernier message: 11/12/2008, 14h37
  5. Réponses: 0
    Dernier message: 01/12/2008, 20h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo