La relation entre le serveur Web et le réseau du client n'est pas claire. Si le serveur Linux est sur le LAN local du client et qu'il exécute Samba, vous pouvez certainement stocker la base de données Access/Jet/ACE sur le serveur Linux et les utilisateurs peuvent la modifier dans Access. Vous aurez alors besoin de l'un des émulateurs Jet fonctionnant sur le serveur Linux (pour autant que je sache, il n'y a pas d'émulation de l'ACE disponible pour Linux, donc si leur base de données est au format ACCDB, vous êtes hors de bonne chance, à moins que je ne sois tout simplement dépassé par ce que j'ai entendu à propos des émulateurs). Certains des émulateurs Jet sont en lecture seule, alors soyez prudent avec cela.
Maintenant, je ne recommande pas ce scénario, car Jet/ACE n'est pas conçu pour ce type d'application. Cela fonctionne très bien dans un environnement de bureau/groupe de travail avec un réseau SMB, mais je ne l'utiliserais pas comme back-end d'un site web qui n'était pas en lecture seule, preuve de concept ou très, très faible volume de lecture/écriture. Je ne recommanderais certainement jamais avoir le même MDB servant de backend de site Web et être utilisé simultanément par les utilisateurs d'Access interactifs.
Si ce scénario est correct, vos utilisateurs peuvent toujours travailler avec Access si vous transférez le serveur principal vers une base de données de serveur qui s'exécute sous Linux.J'utilise MySQL tout le temps, et comme je suis un idiot d'Access, je dépend de phpMyAdmin pour mon interface utilisateur pour gérer mes bases de données MySQL. Il devrait être assez facile pour un utilisateur d'Access de comprendre pour se moquer du schéma. En utilisant MyODBC, vous pouvez configurer des tables liées dans Access, et les rapports et les formulaires fonctionneront à peu près de la même manière qu'avec un backend Jet.
Mais je doute fortement que votre client héberge son site web sur un serveur Linux connecté à son réseau local. Il est plus probable que le serveur Linux soit un hébergement Web partagé, auquel cas il n'y aura pas de réseau SMB disponible, donc vous ne pourrez pas avoir une seule base de données Access éditée à la fois par le site Web et par les utilisateurs interactifs. C'EST UNE BONNE CHOSE, car cela serait déconseillé en premier lieu.
Avec partagé vous hébergement peut être autorisé à ouvrir un port à une base de données de serveur (serveur d'hébergement de mon site fournit à la fois MySQL et PostgreSQL et mais permet l'accès à distance uniquement à MySQL et uniquement par le nom d'hôte/adresse IP. C'est ne fonctionnera probablement pas très bien avec un réseau local de bureau.Tout hôte Web qui permet un accès illimité et ouvert à un serveur de base de données à partir de l'Internet sauvage et laineux n'est probablement pas celui que votre client devrait utiliser. Dans ce cas, un VPN pourrait être utilisé, mais dans mon expérience, les hébergeurs facturent un bras et une jambe pour cela (ce qui est déraisonnable, en fait), donc ce n'est généralement pas une bonne option. vous serez en mesure de fournir connexions en temps réel à une base de données de serveur exécutée sur le site Web. Dans ce cas, il vous reste à synchroniser les bases de données d'une manière ou d'une autre. Si le site est un esclave complet de la base de données Access (pas d'édition, d'ajouts ou de suppressions sur le site), cela peut être très simple, car vous pouvez simplement écrire des scripts pour exporter les données vers un fichier ou des fichiers téléchargés. le site Web et ensuite traiter sur le site Web pour remplacer les données existantes.
Si vous avez un scénario multi-maître (mises à jour aux deux emplacements), c'est beaucoup plus compliqué, surtout si les mises à jour doivent aller dans les deux sens. J'ai programmé la fin d'accès exactement de ce scénario, c'est-à-dire, synchroniser une base de données MySQL sur un site Web avec une base de données Access, et ce n'est pas une tâche triviale. Si vous pouvez obtenir MySQL des deux côtés, cela pourrait être un peu plus facile (en supposant que vous puissiez configurer la réplication, ce qui dans un scénario d'hébergement web bas de gamme me semble assez improbable), mais je ne compterais pas là-dessus .
D'après ce que je sais de la situation, votre client doit tout repenser, car il n'y a pratiquement pas d'intégration possible sans beaucoup de solutions de contournement. Une chose à considérer si le site n'est pas public mais pour supporter les utilisateurs distants est qu'Access 2010 va ajouter un support incroyable pour l'intégration avec Sharepoint Server 2010 qui permettra de publier une base de données Access sur un Sharepoint Server et de l'exécuter dans le navigateur Web. D'un autre côté, si les circonstances sont limitées aux utilisateurs distants, l'application Access pourrait être exécutée sur un serveur Terminal Server et épargner à tout le monde beaucoup de problèmes.
Vous ne répondez pas à la question, mais êtes-vous vraiment sûr de vouloir utiliser MS Access dans un environnement de serveur en direct? L'accès est terrible quand il s'agit de mise à l'échelle et ne fonctionnera pas bien (j'irais même jusqu'à dire) avec les utilisateurs simultanés. – beny23
je n'ai rien comme utilisateur et tout ça. Mon utilisateur ne souhaite pas implémenter l'interface pour ajouter un enregistrement dans DB. Donc, pour cela, ils veulent qu'ils entrent des données dans la base de données d'accès et obtenir les détails mis à jour sur le site. – Avinash
Votre utilisateur ne comprend pas les problèmes impliqués. En supposant que vous avez décrit la situation dans son intégralité, cela ne peut pas être fait comme ils le souhaitent. Vous devez utiliser autre chose que Jet/ACE comme base de données. Selon l'environnement, ils pourraient toujours le mettre à jour avec Access, mais les tables ne seraient plus dans Access/Jet/ACE. –