Remplir une firebase database MS Access sous Linux

Est-il possible de créer une firebase database Access / Jet depuis Linux?

J’essaie de nourrir des données à partir d’un serveur d’applications Linux (backend mysql) et je n’ai trouvé aucun outil qui me permette de le faire – il semble y avoir quelque chose.

Si je ne peux pas créer de firebase database, y a-t-il un moyen d’insérer dans un fichier de firebase database Access existant à partir de Linux?

Outil CLI, wrapper vers fichier de commande SQL, bibliothèque C, bibliothèque Ruby, n’importe quoi?

Merci.

Il existe une bibliothèque Java appelée jackcess qui peut écrire dans Access mdb à partir de toute plate-forme capable d’exécuter un jvm.

EasySoft possède un pilote ODBC qui peut être utilisé pour insérer des données dans une firebase database MS Access existante.

Si vous le pouvez, je permuterais Access pour SQL Server Express (téléchargement gratuit), puis vous pouvez utiliser le pilote ODBC FreeTDS pour lui parler depuis Linux ou l’un des autres pilotes ODBC commerciaux disponibles pour accéder à MS SQL Server à partir de Linux.

pourrait être une question stupide, mais pourquoi y accéder? Je dois supposer que ces données doivent être transmises à Windows à un moment donné? Il pourrait y avoir d’autres moyens de résoudre ce problème. Si la firebase database d’access doit être utilisée en interne, vous pouvez configurer une connexion à MySQL à partir d’Access en exécutant Windows et obtenir les données de cette façon. Si le fichier de données va être déconnecté, vous pouvez essayer de créer un fichier séparé fichier texte avec les données, mais donnez-lui une extension .xls – sur une machine Windows, cela provoquera son ouverture dans Excel, ce qui pourrait convenir à de nombreux utilisateurs.

Pour créer une firebase database MS Access sous Linux, vous pouvez utiliser Windows.

  1. Configurer un partage SMB sous Linux
  2. Sous Windows, créez un lecteur mappé sur votre partage SMB.
  3. Créer une firebase database Access 3.1 Si MS Access est installé, vous pouvez simplement créer une nouvelle firebase database sur le partage. 3.2 Si vous n’avez pas installé MS Access mais que vous avez un pilote ODBC MS Access sous Windows, créez simplement une nouvelle source de données ODBC Microsoft Access – cela vous donnera la possibilité de créer une firebase database.

Vous pouvez ensuite utiliser le pilote ODBC Easysoft Access pour écrire des données dans votre firebase database.

Vous pouvez également utiliser un autre outil Easysoft, le pont ODBC-ODBC Easysoft . Cela vous permet de conserver votre firebase database Access sous Windows, mais vous permet de l’appeler depuis votre application Linux.

  1. Si vous voulez créer une firebase database d’access (fichier mdb) à partir de zéro, vous aurez besoin de la DLL de Microsoft Office, donc je pense que vous pouvez l’oublier.

  2. Si votre idée est d’insérer / manipuler des données dans un fichier Access mdb, vous aurez besoin d’un pilote spécifique pour le type de connexion que vous souhaitez utiliser. Je pense que votre choix sera essentiellement entre ODBC et OLEDB. Vous pouvez ensuite utiliser cette connexion pour modifier vos données (INSERT, UPDATE, DELETE), les extraire (SELECT) ou même manipuler la structure de votre firebase database via des instructions DDL (CREATE, DROP, etc.).

Pourquoi ne pas utiliser un service Web? Vous pouvez exécuter un service ASP (ou autre) sur une machine Windows et créer le fichier .mdb requirejs à l’aide d’ODBC. Ensuite, votre application Linux pourrait télécharger les données brutes et recevoir un fichier .mdb en réponse.

Ou alternativement, exécutez simplement votre script entier sous Windows. Vous pouvez installer cygwin et / ou ActiveSate perl et accéder aux pilotes ODBC Windows (y compris Access) à partir de là.

Est-il possible pour vous d’éditer votre firebase database d’access dans Windows afin d’utiliser des tables liées qui sont ensuite liées à un fichier texte externe, un fichier XML, un document HTML, etc.?

Dans Office2007, utilisez l’onglet “Données externes”, puis sélectionnez “Fichier texte”, “Fichier XML”, etc. Assurez-vous simplement de sélectionner le bouton radio “Lier à la source de données en créant une table liée”. Si vous supprimez d’abord la table existante et créez une table liée avec le même nom, vous risquez de tromper votre application en affichant le fichier texte via Access en tant que proxy.

De cette façon, vous pouvez facilement mettre à jour le fichier externe depuis votre application Linux et votre application doit voir ces données lorsqu’elle interagit avec la firebase database d’access.

Vous pouvez exécuter Access 2002 sur le système Linux à l’aide de Crossover Office et automatiser à partir d’un script. (Par exemple, vous pouvez écrire du VBScript et l’exécuter en utilisant wscript.exe sous CrossOver.)

Dernièrement, je le fais moi-même pour certaines bases de données et cela fonctionne très bien. Envoyez-moi un email si vous avez besoin d’aide pour le configurer.

MDB Tools fournit:

  • une bibliothèque C
  • un ensemble d’outils en ligne de commande
  • un pilote ODBC [unixODBC] (pour http://www.unixodbc.org/ ) qui à son tour a des wrappers pour d’autres langues

C’est gratuit et open source.

Est-il possible de créer une firebase database Access / Jet depuis Linux?

Absolument. UCanAccess est un pilote JDBC Java pur, open source et gratuit, capable de créer / lire / écrire des bases de données Access 2000+ (lecture seule pour Access 97) sur toute machine exécutant Java. Vous trouverez plus d’informations sur son utilisation avec Java ici:

Manipulation d’une firebase database Access à partir de Java sans ODBC

Si vous préférez travailler avec Python, vous pouvez utiliser UCanAccess avec Jython ou JayDeBeApi, comme illustré dans ma réponse ici .