jeudi 17 novembre 2011

Accéder à une base de donnée DBase / FoxPro (dbf)

Introduction
Les bases de donnée DBBase sont principalement constituées de fichiers dbf stocké dans un répertoire du disque dur.
Ayant connu ses jours de gloires, aujourd'hui DBase n'est plus que l'ombre de lui même.

Mais qui donc pourrait bien avoir besoin de travailler avec une base de donnée de l'age de pierre?

Et bien, de nombreux logiciels utilisent encore des fichiers DBase.
C'est entre autre le cas dans ma société où l'on utilise encore un vieux logiciel Clipper pour gérer le stock et les commandes.
Ce logiciel DOS, certes vieux, est de loin nettement plus efficace que ses équivalents Windows car il fonctionne entièrement au clavier et est totalement prévisible.

Donc dans l'attente d'une solution satisfaisante, nous maintenons ce logiciel en production.
Mais pour valoriser ces données, il est venu le temps d'accéder à cette base de donnée avec autre chose que Clipper.
C'est la raison même de l'existence de cet article :-)

xBaseView
Avant d'extraire les informations du coeur de la base de données, j'ai besoin d'en connaître la structure pour me familiariser avec elle.
Pour me faciliter la vie, je suis parti à la recherche de soft sur le net.

Si je n'ai pas trouvé d'alternative gratuite, j'ai trouvé xBaseView disponible en version d'essai.
Et dans un premier temps, je trouve ce logiciel suffisamment efficace pour faire mes premières explorations.
Source: xBaseView.com

Il semble même disposer d'une section "SQL" pour permettre de faire des jointures en SQL.
Bien que je ne l'ai pas encore essayé, il semble aussi possible de faire des exportations Excel.

Pour plus d'information:
Accéder à la base de donnée
En vérifiant les pilotes utilisés par xBaseView (cfr menu Aide | Pilotes DB), j'ai remarqué que xBaseView utilisait le pilote ODBC odbcj32.dll made in Microsoft.
De là à penser qu'il est possible d'y accéder en PowerShell, il n'y a qu'un pas.
Je vais donc m'y atteler... mais ce sera l'objet de l'article "Accéder à une base de donnée DBase / FoxPro (dbf) en PowerShell".

Aucun commentaire: