Base en réseau avec VB + Access+ ADO : HELPPPP !!!!

cs_globule Messages postés 327 Date d'inscription mardi 8 octobre 2002 Statut Membre Dernière intervention 6 octobre 2010 - 21 mars 2005 à 14:21
cs_globule Messages postés 327 Date d'inscription mardi 8 octobre 2002 Statut Membre Dernière intervention 6 octobre 2010 - 22 mars 2005 à 10:56
Bonjour,

J'ai toujours des problemes avec ADO et access. Lorsque j'attaque en reseau un même base avec le programme ci dessous ADO m'affiche le message au apres quelques secondes "Champ actuellement verouillé". Puis il n'y à plus qu'à faire CTRL+ALT+SUP sur le VB

J'ai déjà posé la question dur le forum et on m'a repondu d'utiliser directement une requete SQL. J'ai testé et le resultat est pire.

Bref comment gérer proprement l'accés à une base réseau avec ADO ou du moins comment gérer cette erreur "Champ actuellement verouillé".

For Cpt = 0 To 25500
Set MyRecordSet = New ADODB.Recordset
MyRecordSet.open "MaTable", AdoMyBase, adOpenKeyset, adLockOptimistic

MyRecordSet.AddNew



MyRecordSet.fields("MyType").value = "TOTO"
MyRecordSet.Update

' Fermeture du recordset
If (Not MyRecordSet Is Nothing) Then
If MyRecordSet.State = adStateOpen Then MyRecordSet.Close
Set MyRecordSet = Nothing
End If

Next

7 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
21 mars 2005 à 14:50
Essaye d'ouvrir ton recordet en adOpenDynaset au lieu de AdOpenKeySet

Christophe R
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
21 mars 2005 à 16:02
Salut,

S'il s'agit seulement d'ajouter un enreg, pourquoi ne pas faire un simple ?

AdoMyBase.Execute " INSERT INTO MaTable (MyType) VALUES ('" & TaVarTxt & "')"

Loup Gris
0
cs_globule Messages postés 327 Date d'inscription mardi 8 octobre 2002 Statut Membre Dernière intervention 6 octobre 2010
22 mars 2005 à 07:29
Pour reponde a Lou Gris, comme je l'ai dit dans mon message le SQL conduit au même resultat (enregistrement bloqué si on utilise trop de requetes en reseau simultanement).
Mon programme fonctionne, le probleme c'est uniquement en réseau.
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
22 mars 2005 à 09:28
Alors, il ne reste plus qu'à utiliser

sub machin()
on error goto etiquette
....
....
....
exit sub
etiquette:
resume
end sub

Ca bouclera tant qu'il y aura verrouillage.
Je reconnais, c'est pas très propre et risqué mais je ne vois rien d'autre pour l'instant.

Loup Gris
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_globule Messages postés 327 Date d'inscription mardi 8 octobre 2002 Statut Membre Dernière intervention 6 octobre 2010
22 mars 2005 à 09:55
J'ai deja essayé et le resultat est pas terrible. De plus il y a le risque de boucle infinie.
Mais d'apres les reponses, j'en conclu qu'ADO+access et incapable de gérer un réseau proprement. C'est incroyable !
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
22 mars 2005 à 10:14
ADO sait parfaitement bien travailler en réseau, mais Access, il n'aime pas vraiment cela.

Christophe R
0
cs_globule Messages postés 327 Date d'inscription mardi 8 octobre 2002 Statut Membre Dernière intervention 6 octobre 2010
22 mars 2005 à 10:56
Je parle de bases de type access 2002 pas du logiciel lui même
0
Rejoignez-nous