Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Accès concurrent via ADO

1 réponse
Avatar
myname
Bonjour,

j'envisage d'utiliser une base MS Access 2002 via ADODB.

Une vingtaine d'utilisateur l'utiliserait en parallèle.

Est-ce possible ?

Existe-t-il une gestion des transactions ?

Chaque poste doit-il avoir Access ou les MDAC suffisent-ils ?

Merci.

1 réponse

Avatar
david
salut,

1° est-ce possible ?
En info, tout est possible, c'est juste une question de temps (de
dévelopement). Mais dans ce cas, précis, OUI.
ADO permet la connexion à une base de données partagées sur un
réseaux. Toutefois, il faut savoir que si l'objet est instancié en
local :
- new adodb.connection
ou
- createobject("adodb.connection")
Les données sont envoyées au poste client pour qu'il traite les
informations. Cela implique une charge sur le réseau avec toutes ces
données qui vont y naviguées.

Mais, ADO permet l'utisation DCOM (nécéssite une installation du
serveur DCOM sur la machine contenant la base Access). Dans ce cas, les
objets sont crées par :
- createObject(adodb.connection","192.168.1.1")
Le 2° paramètre est l'adresse IP (ou le nom d'hôte) de ton serveur
DCOM.
Avec ce système, les objets sont créés et exécutés directement sur
le serveur. Seules les données explicitement demandées sont
récupérées sur le client. Par contre, cette technique a un coup,
elle n'est pas supportée directement par l'interface d'Access... Il
faut tout refaire (déplacement dans les formulaires, ...)

2° gestion des transactions :
Il existe les méthodes : beginTrans, commitTrans, rollBack, liées à
l'objet connection qui permettent, respectivement, d'ouvrir, de valider
d'annuler une transaction.
Même si les transactions sont "empilables", je te conseil pas de trop
exagérer sinon, le .ldb de ta base va exploser et ta base va
"casser"...

3° chaque poste Access, ...
Le run-time d'access suffit pour les postes clients, toutefois, garde
un access normal pour le poste de développement. De même une fois ta
base applicative terminée, compile la (.mde). Tu gagneras un peu de
temps et de sécurité.

A+