Par Fabrice Constans (http://blogaccess.free.fr/)

Lorsque vous posez la question ; qu’est ce que Microsoft Access ? Immanquablement la réponse sera, « C’est une base de données ! ». Affirmation éculée mais totalement fausse colportée au mieux par les ignorants et au pire par les perroquets de salon. Cet article est là pour vous éclairer sur Microsoft Access.

Microsoft Access : une solution trop peu envisagée

Microsoft Access est plutôt à ranger dans la catégorie des RAD (Rapid Application Developpement – Outil de développement rapide d’application), accessoirement il est doté d’une base de données intégrées (Jet puis ACE depuis 2007) dont il se sert pour ses propres besoins. Cependant à aucun moment vous n’êtes tenu de l’utiliser dans votre projet. Beaucoup d’applications se résumant en un simple front-end (côté utilisateur) Microsoft Access utilisent comme un back-end (côté serveur) d’autres moteurs de bases de données comme MS SQL Server, Oracle, MySql/Mariadb, PostgreSql.

Microsoft Access est doté des composants suivants :

  • Les formulaires pour l’interaction avec l’utilisateur, ils sont dotés de composants riches et programmables.
  • Les états pour imprimer des données (test, image, graphique…). On y retrouve la totalité des composants du formulaire.
  • Les macros, un langage facile pour faire des tâches simples lorsqu’on ne connait rien à la programmation ça peut être suffisant.
  • Les modules VBA, certains nomment à tort le langage VBA comme un langage macro. C’est un véritable langage typés avec des instructions, des bibliothèques, des classes… On peut y faire des appels systèmes comme de la manipulation graphique.
  • Les requêtes, là on rentre dans le concept de base de données. Le générateur permet au néohpyte de se faire la main en générant rapidement des intructions SELECT, INSERT, DELETE… Elles prennent en charge les type UNION, Tableau croisé dynamique ou Passthrough (requête exécutée sur le serveur de base de données)
  • Les tables, la fameuse base de données accessoire.

Microsoft Access : ses qualités

L’une de ses premières qualité est que la conception de l’interface (IHM ou partie visible pour l’utilisateur) sera réalisée plus rapidement qu’avec les langages classiques. Vous serez donc à même de présenter une maquette sans que cela soit trop chronophage où l’utilisateur sera enfin son propre décideur.
De même que si la volumétrie de données et le nombre d’utilisateurs ne sont pas trop important vous opterez pour la base de données interne (ACE).
On peut également dire qu’il est assez accessible pour un profane, dans la limite d’un besoin simple.
En dernier ressort on peut également l’interfacer avec les produits VBA-Like (logiciels dont VBA est le langage de programmation), on y trouve bien évidemment les logiciels de la suite Office : Excel, Word, Powerpoint, Publisher… mais aussi AutoCad, Wordperfect, ArcGis, Solidwork…
Vous souhaitez faire des rapports complexes, envoyez vos données dans Microsoft Word ou bien dans Microsoft Excel.

Microsoft Access : ses défauts

Effectivement, à l’heure du tout-en-ligne, cloud et autre, une application Microsoft Access reste un client lourd, nécessitant Windows et qui n’est pas prévu pour le fonctionnement WEB. Il n’est donc pas possible de l’intégrer à du téléphone mobile.

Son éditeur VB (VBE) n’est pas un modèle d’avancée technologique puisqu’il n’a pas évolué depuis la version 7, soit 1995. Bien que quelques Add-in’s viennent compléter ses lacunes, beaucoup de développeurs souhaiteraient que Microsoft mettent un bon coup de collier pour fournir quelques évolutions essentielles.

Enfin la qualité d’accessibilité décrite dans le paragraphe précédent peut se transformer en défaut, et c’est ce que beaucoup lui reproche. On peut créer de véritables monstres dont la maintenance et l’évolution deviendra un repoussoir pour nombre d’expert de Microsoft Access.

Microsoft Access : une mauvaise réputation fondée ?

Je me permettrais de citer un paragraphe lu sur un site anglo-saxon qui résume à lui seul cet article.

« Les personnes qui n’ont jamais utilisé Microsoft Access ou quelque chose du genre et qui se considèrent comme des programmeurs invétérés ou des puristes de bases de données, considèrent Microsoft Access comme un jouet d’enfant dangereux, ne causant que du chagrin lorsque de vrais programmeurs et administrateurs de bases de données doivent déboguer le désordre désorganisé des amateurs. Ils rêvent du jour où cette nuisance sera éliminée et où leur entreprise pourra enfin être sous le contrôle bureaucratique strict d’applications bien conçues que personne ne se soucie d’utiliser. »

Microsoft Access n’échappe pas à la règles des outils et langages de développement, il ne fait que ce qu’on lui dit de faire et comment le faire. Une application inutilement gourmande en ressource, lente, mal conçue, désorganisée, moche ou simplement « user-spiteful » n’est pas la faute de l’outil mais bien du concepteur.

Conclusion

Pour conclure Microsoft Access, même si il a quelques défauts, n’en reste pas moins à ce jour un excellent moyen de concevoir rapidement des interfaces riches en faisant abstraction de la base de données utilisée.