100 Enregistrements maxi (ODBC)

cs_tulesais Messages postés 175 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 11 avril 2013 - 22 mars 2006 à 16:03
cs_tulesais Messages postés 175 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 11 avril 2013 - 23 mars 2006 à 15:33
Bonjour,

je n'arrive pas à comprendre ce qu'il se passe.
Lorsque j'execute une requete via ODBC, le recordset ne me ramène que 100 Enregistrements alors que la requete lancée en direct récupère 1200 Enregistrements !!!

j'ai lu sur le forum qu'il fallait faire un movelast et movefirst afin de
lire tous les enregistrements mais en vain...
ma boucle n'est parcourue que 100 fois !!! snif...

Pourriez vous m'aider sur ce gros problème ???

merci d'avance pour vos réponses,


Set wrkODBC = CreateWorkspace("NewODBCWorkspace", "admin", "", dbUseODBC)
Set GicrDb = wrkODBC.OpenConnection("GICRConnexion", dbDriverNoPrompt, , "ODBC;DATABASE=" & ADPA_Base & ";UID=" & ADPA_Login & ";PWD=" & ADPA_Password & ";DSN=" & ADPA_DSN)
W_Req="select * from Table"
Set rs = GicrDb.OpenRecordset(W_Req, dbOpenSnapshot)

rs.MoveFirst
Do While Not rs.EOF
...
rs.MoveNext
loop

9 réponses

mcs2006 Messages postés 58 Date d'inscription dimanche 19 mars 2006 Statut Membre Dernière intervention 1 mai 2006
22 mars 2006 à 17:08
Bonjour,

Je pense que le problème se situe dans le code que tu symbolises par '...'.
Avec un "select * from table", il n'y a aucune raison qu'il n'y ait que 100 enregistrements remontés si la table en contient 1200.
0
cs_tulesais Messages postés 175 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 11 avril 2013 2
22 mars 2006 à 17:26
mcs2006 :

imaginons qu'il y ait juste un incrément à la place des '...'.

et bien, à la sortie de la boucle, le compteur ramenera 100 ! tout rond :-)

par contre, je viens de modifier une ligne et ca a l'air de fonctionner !!!
BIZARRE...BIZARRE...

Set rs = GicrDb.OpenRecordset(W_Req, dbOpenSnapshot)
-->
Set rs = GicrDb.OpenRecordset(W_Req)

par contre le movefirst ne fonctionne plus.

ce serait donc le dbopensnapshot qui poserait problème...
0
mcs2006 Messages postés 58 Date d'inscription dimanche 19 mars 2006 Statut Membre Dernière intervention 1 mai 2006
22 mars 2006 à 18:30
BIZARRE en effet.
As-tu cherché dans l'aide de ton VB pour OpenRecordset ?
0
olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
22 mars 2006 à 19:13
t sur koi comme base ?
sql server ? sioui quel version ?

Rollerman
0

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

Posez votre question
olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
22 mars 2006 à 19:14
renseigne toi sur la propriété cachesize, je pense que ca vient de la...

Rollerman
0
radcur Messages postés 282 Date d'inscription lundi 29 septembre 2003 Statut Membre Dernière intervention 15 août 2012 2
23 mars 2006 à 03:27
effectivement ca pourrait être la prpriété cachesize.

il y aurait peut-être aussi les propriétés pagesize et pagecount à vérifier.
0
cs_tulesais Messages postés 175 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 11 avril 2013 2
23 mars 2006 à 07:38
Tout d'abord, un grand Merci pour votre aide !

j'attaque un Serveur Sybase (aucune idée de la version) !
et quand j'essaye de modifier le cachesize, j'ai une erreur à l'execution.

Est ce bien cette syntaxe ???

rs.cachesize = 20

merci,
0
mcs2006 Messages postés 58 Date d'inscription dimanche 19 mars 2006 Statut Membre Dernière intervention 1 mai 2006
23 mars 2006 à 15:29
Je n'ai pas encore utilisé cette propriété mais j'ai trouvé l'exemple qui suit dans la MSDN :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdprocachesizex.asp

Si ça peut t'être utile...
0
cs_tulesais Messages postés 175 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 11 avril 2013 2
23 mars 2006 à 15:33
Merci !!!

je vais jeter un oeil...
0
Rejoignez-nous