OVH Cloud OVH Cloud

ADO - Enregistrement trop long ou nombre de verrous trop important ?

3 réponses
Avatar
Teddy
Bonjour à tous,

J'utilise une base ACCESS via ADO dans une application VB.
Dans quelques cas, j'ai des messages d'erreur ADO pour un enregistrement trop long ou pour
le nombre de verrous.

Pour l'enregistrement trop long, quels sont les limites d'ACCESS en nombre de colonnes, en
longueur de libellé de colonnes ?

Par contre, pour le nombre de verrous, je ne comprends rien car je fait une mise à jour
comme suit :

Rset1.Open "nom_table", Cnx, 3, 3
Do While Not Rset1.EOF
tableau = Split(Rset1(3) , "/"))
If UBound(tableau) > 2 Then
Rset1(3) = tableau(1)
Rset1.Update
End If
Rset1.MoveNext
Loop

3 réponses

Avatar
Arnaud
Bonsoir,

Il me semble que la limite pour Access est de 255 colonnes.

Pour votre extrait de code je vous recommande de faire :

Rset1.Open "nom_table", Cnx, 3, 3
Do While Not Rset1.EOF
tableau = Split(Rset1(3) , "/"))
If UBound(tableau) > 2 Then
Rset1(3) = tableau(1)
End If
Rset1.MoveNext
Loop
Rset1.Update

Le fait de faire un movenext valide la modification en ADO. L'update n'est
donc utile qu'en sortie et cela s'exécutera plus rapidement.

Pour les verrous je ne peux pas répondre, je ne connais pas cette situation.
--
Arnaud,
http://cerbermail.com/?CMJMEZByvW




" Teddy" a écrit dans le message de
news:
Bonjour à tous,

J'utilise une base ACCESS via ADO dans une application VB.
Dans quelques cas, j'ai des messages d'erreur ADO pour un enregistrement


trop long ou pour
le nombre de verrous.

Pour l'enregistrement trop long, quels sont les limites d'ACCESS en nombre


de colonnes, en
longueur de libellé de colonnes ?

Par contre, pour le nombre de verrous, je ne comprends rien car je fait


une mise à jour
comme suit :

Rset1.Open "nom_table", Cnx, 3, 3
Do While Not Rset1.EOF
tableau = Split(Rset1(3) , "/"))
If UBound(tableau) > 2 Then
Rset1(3) = tableau(1)
Rset1.Update
End If
Rset1.MoveNext
Loop





Avatar
Guy DETIENNE
Salut ;O)

Voici un lien où tu trouveras les spécification pour Access 2000, 2002 (XP)
et 2003:
http://officesystem.access.free.fr/specifications.htm

Guy

" Teddy" a écrit dans le message de
news:
Bonjour à tous,

J'utilise une base ACCESS via ADO dans une application VB.
Dans quelques cas, j'ai des messages d'erreur ADO pour un enregistrement


trop long ou pour
le nombre de verrous.

Pour l'enregistrement trop long, quels sont les limites d'ACCESS en nombre


de colonnes, en
longueur de libellé de colonnes ?

Par contre, pour le nombre de verrous, je ne comprends rien car je fait


une mise à jour
comme suit :

Rset1.Open "nom_table", Cnx, 3, 3
Do While Not Rset1.EOF
tableau = Split(Rset1(3) , "/"))
If UBound(tableau) > 2 Then
Rset1(3) = tableau(1)
Rset1.Update
End If
Rset1.MoveNext
Loop





Avatar
teddy
Merci !


"Guy DETIENNE" a écrit dans le message de news:
%
Salut ;O)

Voici un lien où tu trouveras les spécification pour Access 2000, 2002
(XP)
et 2003:
http://officesystem.access.free.fr/specifications.htm

Guy

" Teddy" a écrit dans le message de
news:
Bonjour à tous,

J'utilise une base ACCESS via ADO dans une application VB.
Dans quelques cas, j'ai des messages d'erreur ADO pour un enregistrement


trop long ou pour
le nombre de verrous.

Pour l'enregistrement trop long, quels sont les limites d'ACCESS en
nombre


de colonnes, en
longueur de libellé de colonnes ?

Par contre, pour le nombre de verrous, je ne comprends rien car je fait


une mise à jour
comme suit :

Rset1.Open "nom_table", Cnx, 3, 3
Do While Not Rset1.EOF
tableau = Split(Rset1(3) , "/"))
If UBound(tableau) > 2 Then
Rset1(3) = tableau(1)
Rset1.Update
End If
Rset1.MoveNext
Loop