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

Quel type de verrouillage des enregistrements avec ADO et ACCESS ?

1 réponse
Avatar
teddy
Bonjour,

Lorsque je crée une connexion à une base de données (Access),
j'ai une connexion ADO que j'appellerais "Cnn".

Si je lance une procédure stockée ou tout autre chaîne SQL "MySQLString" qui
écrit et/ou met à jour des données dans les tables avec Cnn.Execute
MySQLString, comment fonctionne le verrouillage des enregistrements dans les
tables ?

Est-ce que ce type d'exécution verrouille à tour de rôle l'enregistrement à
modifier ou bien est-ce que toutes les tables concernées sont verrouillées
jusqu'à la fin de la procédure ?

J'ai apparemment des problèmes lorsqu'une procédure est exécutée en même
temps que des accès en modification dans les tables.

Merci beaucoup pour ces précisions !

Ted

1 réponse

Avatar
Daniel Carollo
Bonjour Teddy!

Avec ADO, le type de verrouillage depend du type de curseur utilise
(ForwardOnly, Keyset, Dynamic ou Static) et du type choisi lors de la
declaration du recordset (ReadOnly, Pessimistic, Optimistic ou Batch).

A noter qu'il est possible d'encapsuler les mises a jour dans une
transaction pour s'assure que "tout ou rien" s'effectue lors des changements
de donnees.

Votre application est-elle multi-utilisateur?

Quand vous dites
J'ai apparemment des problèmes lorsqu'une procédure est exécutée en même
temps que des accès en modification dans les tables.
quelle est l'apparence de ce qui se passe?


Qu'appelez vous "procedure"? S'agit-il d'une procedure stockee?
Ne serait-il pas sage de verifier que la procedure a termine d'executer
avant d'essayer de modifier les donnees (surtout si la procedure agit sur
les donnees qui sont censees etre modifiees)?

J'espere que ca vous donne des pistes...

--
Daniel :-)

Computing Technologies International - www.computing-tech.com - We
provide solutions...

" teddy" wrote in message
news:%
Bonjour,

Lorsque je crée une connexion à une base de données (Access),
j'ai une connexion ADO que j'appellerais "Cnn".

Si je lance une procédure stockée ou tout autre chaîne SQL "MySQLString"
qui

écrit et/ou met à jour des données dans les tables avec Cnn.Execute
MySQLString, comment fonctionne le verrouillage des enregistrements dans
les

tables ?

Est-ce que ce type d'exécution verrouille à tour de rôle l'enregistrement
à

modifier ou bien est-ce que toutes les tables concernées sont verrouillées
jusqu'à la fin de la procédure ?

J'ai apparemment des problèmes lorsqu'une procédure est exécutée en même
temps que des accès en modification dans les tables.

Merci beaucoup pour ces précisions !

Ted