OVH Cloud OVH Cloud

sql

19 réponses
Avatar
seb-seb
bonjour

dim rs as recordset
set rs = db.openrecordset("SELECT * FROM table")
et ca ne me renvoi que le 1er de la table !!!
ca vient de quoi ?
merci

9 réponses

1 2
Avatar
seb-seb
non c'est le truc de base quand on s'y connait pas de trop

dim db as database
dim rs as recordset
F1 dans le pire des cas sur l'un des 2 vous en dira plus
set rs = db.openrecordset(source , ...)
et apres avec la variable rs on a un curseur et on fait ce qu'on veux
enfin je comprends pas ca doit etre un bug interne à mon pc
car c'est impossible ....


"Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de news: Oj$
Salut seb-seb,

pourait tu me donner un exemple complet de ton code car je doit dire que
bien que je connaisse asser bien VB6 et tres bien ASP je ne connais pas la
methode OpenRecordset
elle vient de quoi ?? un composant COM à vous??

voici deux exemple en VB6 et ASP de l'utilisation d'un recordset

'========================================================================== > ======== > ' FUNCTION: GetRSfromQuery(ByVal SQLquery)
' Description: retourne un RecordSet depuis une query
'========================================================================== > ======== > Public Function GetRSfromQuery(ByVal sqlQuery) As ADODB.Recordset
Dim ObjCmd

'ActiveConnection = chaine de connection à la base SQL server
If ActiveConnection <> "" Then
Set ObjCmd = CreateObject("ADODB.Command")
ObjCmd.ActiveConnection = ActiveConnection
ObjCmd.CommandText = sqlQuery
Set GetRSfromQuery = ObjCmd.Execute()
Else
Set GetRSfromQuery = Nothing
End If
End Function

maintenant en ASP
'Application("SgbdConnectionString") = chaine de connection à la base SQL
server
Set oRs = Server.CreateObject("ADODB.Recordset")
oRs.Open sqlQuery, Application("SgbdConnectionString")

comme tu peut le constater il n'y a pas de "OpenRecordset"

merci

@+
Boss Hog

"seb-seb" wrote in message
news:
voici les seules choses que j'ai mises
je ne sais pas quel curseur est choisit par défaut
et RSemployes.recordcount renvoi soit 14 soit 1 selon la méthode
je veux passer par du sql pour faire un order by mais meme en tout simple


la requete marche pas

dim RSemployes as recordset
Set RSemployes = DBcoord.OpenRecordset("employes")
Set RSemployes = DBcoord.OpenRecordset("SELECT * FROM employes")




"Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de news:



> Salut
> la propriété recordcount est dépendante du type de curseur utilisé pour
> ouvrir ton Recordset
> AddOpenStatic
> AddOpenForward
> AddLockOptimistic ETC....
>
> selon le type de curseur la propriété recorcount ne renvoi rien.
>
> deux solution
> 1- pour tester que ton RecordSet n'est pas vide tu fait ceci
>
> oRs = l'objet recordset
>
> If Not oRs.EOF and Not oRs.BOF Then
> 'y'a des données
> Else
> 'y'a rien
> End If
>
> 2-
> apres tu peut boucler sur ton Recordset sans oblier oRs.MoveNext
> While Not oRs.EOF
> 'tu recupère les valeurs et tu passe au record suivant
> toto = oRs("MyField")
> oRs.MoveNext
> Wend
>
> il faut aussi verifier que tu n'a pas affecter 1 à la propriété PageSize
>
> @+
> Boss Hog
>
> "Giques" wrote in message
> news:4173a599$0$15438$
>> Rs.RecordCount renvoi quelle valeur?
>>
>> Si >1, tu peux passer au suivant par rs.movenext etc.
>>
>> Salut
>>
>> Giques
>>
>> "seb-seb" a écrit dans le message de news:
>>
>> > bonjour
>> >
>> > dim rs as recordset
>> > set rs = db.openrecordset("SELECT * FROM table")
>> > et ca ne me renvoi que le 1er de la table !!!
>> > ca vient de quoi ?
>> > merci
>> >
>> >
>>
>>
>
>








Avatar
Boss Hog
Essaie avec le function que je t'ai envoyée GetRSfromQuery il faut que tu
ajoute dans les references de ton projet Microsoft ActiveX Data Object 2.6
ou 2.7 (MDAC).
cette fonction est extraite d'une DLL que j'ai developpée pour notre appli
et cela marche tres bien.

pour info le type de curseur n'est pas spécifié ce qui fait que par defaul
le recordset est en AddOpenForwardOnly(je crois) et ne propose pas la
methode recordcount.
donc soit tu modifie la fonction soit pour avoir le nombre de record tu
utilise une boucle while wend:

Nrows = 0
oRs.MoveFirst
While Not oRs.EOF
Nrows = Nrows +1
oRs.MoveNext
Wend
oRs.MoveFirst

cela prend 1miliseconde(celon la taille du rs) et n'est pas debile ensoit,
il faut savoir que celon le type de curseur le temp de reponse de
l'ouverture du recordset est plus ou moin long, le plus rapide etant celui
par defaut.

apres cela depend si tu doit faire de l'update sur ton recordset ou non.

ouala
@+
Boss Hog

PS: en prime la meme chose pour XML


'========================================================================== ======== ' FUNCTION: ExecuteXMLProcstoc()
' Description: retourne un flux XML à utiliser avec openXML d'un Objet
DOM

'========================================================================== ======== 'Renvoi le resultat XML de la Procedure Stockee speifiee ecrite pour
retourner du XML
Public Function ExecuteXMLProcstoc(ByVal MysqlQuery)
If ActiveConnection <> "" Then
Dim ObjCmd, sqlQuery, ObjStreamheader
Set ObjCmd = CreateObject("ADODB.Command")
ObjCmd.ActiveConnection = ActiveConnection
ObjCmd.CommandText = MysqlQuery
Set ObjStream = CreateObject("ADODB.Stream")
ObjStream.Open
ObjCmd.CommandType = 1
ObjCmd.Properties("XML Root") = "root"
ObjCmd.Properties("Output Stream") = ObjStream
ObjCmd.Execute , , 1024
ExecuteXMLProcstoc = ObjStream.ReadText
Set ObjStream = Nothing
Set ObjCmd = Nothing
Else
ExecuteXMLProcstoc = False
End If
End Function


"seb-seb" wrote in message
news:
non c'est le truc de base quand on s'y connait pas de trop

dim db as database
dim rs as recordset
F1 dans le pire des cas sur l'un des 2 vous en dira plus
set rs = db.openrecordset(source , ...)
et apres avec la variable rs on a un curseur et on fait ce qu'on veux
enfin je comprends pas ca doit etre un bug interne à mon pc
car c'est impossible ....


"Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de news:


Oj$
> Salut seb-seb,
>
> pourait tu me donner un exemple complet de ton code car je doit dire que
> bien que je connaisse asser bien VB6 et tres bien ASP je ne connais pas


la
> methode OpenRecordset
> elle vient de quoi ?? un composant COM à vous??
>
> voici deux exemple en VB6 et ASP de l'utilisation d'un recordset
>
>


'========================================================================== > > ======== > > ' FUNCTION: GetRSfromQuery(ByVal SQLquery)
> ' Description: retourne un RecordSet depuis une query
>


'========================================================================== > > ======== > > Public Function GetRSfromQuery(ByVal sqlQuery) As ADODB.Recordset
> Dim ObjCmd
>
> 'ActiveConnection = chaine de connection à la base SQL server
> If ActiveConnection <> "" Then
> Set ObjCmd = CreateObject("ADODB.Command")
> ObjCmd.ActiveConnection = ActiveConnection
> ObjCmd.CommandText = sqlQuery
> Set GetRSfromQuery = ObjCmd.Execute()
> Else
> Set GetRSfromQuery = Nothing
> End If
> End Function
>
> maintenant en ASP
> 'Application("SgbdConnectionString") = chaine de connection à la base


SQL
> server
> Set oRs = Server.CreateObject("ADODB.Recordset")
> oRs.Open sqlQuery, Application("SgbdConnectionString")
>
> comme tu peut le constater il n'y a pas de "OpenRecordset"
>
> merci
>
> @+
> Boss Hog
>
> "seb-seb" wrote in message
> news:
>> voici les seules choses que j'ai mises
>> je ne sais pas quel curseur est choisit par défaut
>> et RSemployes.recordcount renvoi soit 14 soit 1 selon la méthode
>> je veux passer par du sql pour faire un order by mais meme en tout


simple
> la requete marche pas
>>
>> dim RSemployes as recordset
>> Set RSemployes = DBcoord.OpenRecordset("employes")
>> Set RSemployes = DBcoord.OpenRecordset("SELECT * FROM employes")
>>
>>
>>
>>
>> "Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de


news:
>
>> > Salut
>> > la propriété recordcount est dépendante du type de curseur utilisé


pour
>> > ouvrir ton Recordset
>> > AddOpenStatic
>> > AddOpenForward
>> > AddLockOptimistic ETC....
>> >
>> > selon le type de curseur la propriété recorcount ne renvoi rien.
>> >
>> > deux solution
>> > 1- pour tester que ton RecordSet n'est pas vide tu fait ceci
>> >
>> > oRs = l'objet recordset
>> >
>> > If Not oRs.EOF and Not oRs.BOF Then
>> > 'y'a des données
>> > Else
>> > 'y'a rien
>> > End If
>> >
>> > 2-
>> > apres tu peut boucler sur ton Recordset sans oblier oRs.MoveNext
>> > While Not oRs.EOF
>> > 'tu recupère les valeurs et tu passe au record suivant
>> > toto = oRs("MyField")
>> > oRs.MoveNext
>> > Wend
>> >
>> > il faut aussi verifier que tu n'a pas affecter 1 à la propriété


PageSize
>> >
>> > @+
>> > Boss Hog
>> >
>> > "Giques" wrote in message
>> > news:4173a599$0$15438$
>> >> Rs.RecordCount renvoi quelle valeur?
>> >>
>> >> Si >1, tu peux passer au suivant par rs.movenext etc.
>> >>
>> >> Salut
>> >>
>> >> Giques
>> >>
>> >> "seb-seb" a écrit dans le message de news:
>> >>
>> >> > bonjour
>> >> >
>> >> > dim rs as recordset
>> >> > set rs = db.openrecordset("SELECT * FROM table")
>> >> > et ca ne me renvoi que le 1er de la table !!!
>> >> > ca vient de quoi ?
>> >> > merci
>> >> >
>> >> >
>> >>
>> >>
>> >
>> >
>>
>>
>
>




Avatar
christophe-pasde
Merci,

norme sql qui se resume pour moi à mode sql en création de requete sous
access ...

Christophe

Quasimodo a écrit :
christophe-pasde<> laid this down on his screen :

Bonjour,

à confirmer
set rs = db.openrecordset("SELECT table.* FROM table")

Christophe

seb-seb a écrit :

bonjour

dim rs as recordset
set rs = db.openrecordset("SELECT * FROM table")
et ca ne me renvoi que le 1er de la table !!!
ca vient de quoi ?
merci






bonjour,
Attention select * from table est exactement la même chose que select
table.* From table.
Cela n'a rien avoir avec le système d'accès à la base de données mais
bien à la norme ansi du sql.

@+Quaz



Avatar
Boss Hog
j'ai trouvé ceci sa peut peu etre t'aider

http://www.adminlife.com/247reference/msgs/35/177177.aspx

@+
Boss Hog


"seb-seb" wrote in message
news:
non c'est le truc de base quand on s'y connait pas de trop

dim db as database
dim rs as recordset
F1 dans le pire des cas sur l'un des 2 vous en dira plus
set rs = db.openrecordset(source , ...)
et apres avec la variable rs on a un curseur et on fait ce qu'on veux
enfin je comprends pas ca doit etre un bug interne à mon pc
car c'est impossible ....


"Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de news:


Oj$
> Salut seb-seb,
>
> pourait tu me donner un exemple complet de ton code car je doit dire que
> bien que je connaisse asser bien VB6 et tres bien ASP je ne connais pas


la
> methode OpenRecordset
> elle vient de quoi ?? un composant COM à vous??
>
> voici deux exemple en VB6 et ASP de l'utilisation d'un recordset
>
>


'========================================================================== > > ======== > > ' FUNCTION: GetRSfromQuery(ByVal SQLquery)
> ' Description: retourne un RecordSet depuis une query
>


'========================================================================== > > ======== > > Public Function GetRSfromQuery(ByVal sqlQuery) As ADODB.Recordset
> Dim ObjCmd
>
> 'ActiveConnection = chaine de connection à la base SQL server
> If ActiveConnection <> "" Then
> Set ObjCmd = CreateObject("ADODB.Command")
> ObjCmd.ActiveConnection = ActiveConnection
> ObjCmd.CommandText = sqlQuery
> Set GetRSfromQuery = ObjCmd.Execute()
> Else
> Set GetRSfromQuery = Nothing
> End If
> End Function
>
> maintenant en ASP
> 'Application("SgbdConnectionString") = chaine de connection à la base


SQL
> server
> Set oRs = Server.CreateObject("ADODB.Recordset")
> oRs.Open sqlQuery, Application("SgbdConnectionString")
>
> comme tu peut le constater il n'y a pas de "OpenRecordset"
>
> merci
>
> @+
> Boss Hog
>
> "seb-seb" wrote in message
> news:
>> voici les seules choses que j'ai mises
>> je ne sais pas quel curseur est choisit par défaut
>> et RSemployes.recordcount renvoi soit 14 soit 1 selon la méthode
>> je veux passer par du sql pour faire un order by mais meme en tout


simple
> la requete marche pas
>>
>> dim RSemployes as recordset
>> Set RSemployes = DBcoord.OpenRecordset("employes")
>> Set RSemployes = DBcoord.OpenRecordset("SELECT * FROM employes")
>>
>>
>>
>>
>> "Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de


news:
>
>> > Salut
>> > la propriété recordcount est dépendante du type de curseur utilisé


pour
>> > ouvrir ton Recordset
>> > AddOpenStatic
>> > AddOpenForward
>> > AddLockOptimistic ETC....
>> >
>> > selon le type de curseur la propriété recorcount ne renvoi rien.
>> >
>> > deux solution
>> > 1- pour tester que ton RecordSet n'est pas vide tu fait ceci
>> >
>> > oRs = l'objet recordset
>> >
>> > If Not oRs.EOF and Not oRs.BOF Then
>> > 'y'a des données
>> > Else
>> > 'y'a rien
>> > End If
>> >
>> > 2-
>> > apres tu peut boucler sur ton Recordset sans oblier oRs.MoveNext
>> > While Not oRs.EOF
>> > 'tu recupère les valeurs et tu passe au record suivant
>> > toto = oRs("MyField")
>> > oRs.MoveNext
>> > Wend
>> >
>> > il faut aussi verifier que tu n'a pas affecter 1 à la propriété


PageSize
>> >
>> > @+
>> > Boss Hog
>> >
>> > "Giques" wrote in message
>> > news:4173a599$0$15438$
>> >> Rs.RecordCount renvoi quelle valeur?
>> >>
>> >> Si >1, tu peux passer au suivant par rs.movenext etc.
>> >>
>> >> Salut
>> >>
>> >> Giques
>> >>
>> >> "seb-seb" a écrit dans le message de news:
>> >>
>> >> > bonjour
>> >> >
>> >> > dim rs as recordset
>> >> > set rs = db.openrecordset("SELECT * FROM table")
>> >> > et ca ne me renvoi que le 1er de la table !!!
>> >> > ca vient de quoi ?
>> >> > merci
>> >> >
>> >> >
>> >>
>> >>
>> >
>> >
>>
>>
>
>




Avatar
Boss Hog
et aussi ceci

http://p2p.wrox.com/topic.asp?TOPIC_ID™33

@+
Boss Hog



"seb-seb" wrote in message
news:
non c'est le truc de base quand on s'y connait pas de trop

dim db as database
dim rs as recordset
F1 dans le pire des cas sur l'un des 2 vous en dira plus
set rs = db.openrecordset(source , ...)
et apres avec la variable rs on a un curseur et on fait ce qu'on veux
enfin je comprends pas ca doit etre un bug interne à mon pc
car c'est impossible ....


"Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de news:


Oj$
> Salut seb-seb,
>
> pourait tu me donner un exemple complet de ton code car je doit dire que
> bien que je connaisse asser bien VB6 et tres bien ASP je ne connais pas


la
> methode OpenRecordset
> elle vient de quoi ?? un composant COM à vous??
>
> voici deux exemple en VB6 et ASP de l'utilisation d'un recordset
>
>


'========================================================================== > > ======== > > ' FUNCTION: GetRSfromQuery(ByVal SQLquery)
> ' Description: retourne un RecordSet depuis une query
>


'========================================================================== > > ======== > > Public Function GetRSfromQuery(ByVal sqlQuery) As ADODB.Recordset
> Dim ObjCmd
>
> 'ActiveConnection = chaine de connection à la base SQL server
> If ActiveConnection <> "" Then
> Set ObjCmd = CreateObject("ADODB.Command")
> ObjCmd.ActiveConnection = ActiveConnection
> ObjCmd.CommandText = sqlQuery
> Set GetRSfromQuery = ObjCmd.Execute()
> Else
> Set GetRSfromQuery = Nothing
> End If
> End Function
>
> maintenant en ASP
> 'Application("SgbdConnectionString") = chaine de connection à la base


SQL
> server
> Set oRs = Server.CreateObject("ADODB.Recordset")
> oRs.Open sqlQuery, Application("SgbdConnectionString")
>
> comme tu peut le constater il n'y a pas de "OpenRecordset"
>
> merci
>
> @+
> Boss Hog
>
> "seb-seb" wrote in message
> news:
>> voici les seules choses que j'ai mises
>> je ne sais pas quel curseur est choisit par défaut
>> et RSemployes.recordcount renvoi soit 14 soit 1 selon la méthode
>> je veux passer par du sql pour faire un order by mais meme en tout


simple
> la requete marche pas
>>
>> dim RSemployes as recordset
>> Set RSemployes = DBcoord.OpenRecordset("employes")
>> Set RSemployes = DBcoord.OpenRecordset("SELECT * FROM employes")
>>
>>
>>
>>
>> "Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de


news:
>
>> > Salut
>> > la propriété recordcount est dépendante du type de curseur utilisé


pour
>> > ouvrir ton Recordset
>> > AddOpenStatic
>> > AddOpenForward
>> > AddLockOptimistic ETC....
>> >
>> > selon le type de curseur la propriété recorcount ne renvoi rien.
>> >
>> > deux solution
>> > 1- pour tester que ton RecordSet n'est pas vide tu fait ceci
>> >
>> > oRs = l'objet recordset
>> >
>> > If Not oRs.EOF and Not oRs.BOF Then
>> > 'y'a des données
>> > Else
>> > 'y'a rien
>> > End If
>> >
>> > 2-
>> > apres tu peut boucler sur ton Recordset sans oblier oRs.MoveNext
>> > While Not oRs.EOF
>> > 'tu recupère les valeurs et tu passe au record suivant
>> > toto = oRs("MyField")
>> > oRs.MoveNext
>> > Wend
>> >
>> > il faut aussi verifier que tu n'a pas affecter 1 à la propriété


PageSize
>> >
>> > @+
>> > Boss Hog
>> >
>> > "Giques" wrote in message
>> > news:4173a599$0$15438$
>> >> Rs.RecordCount renvoi quelle valeur?
>> >>
>> >> Si >1, tu peux passer au suivant par rs.movenext etc.
>> >>
>> >> Salut
>> >>
>> >> Giques
>> >>
>> >> "seb-seb" a écrit dans le message de news:
>> >>
>> >> > bonjour
>> >> >
>> >> > dim rs as recordset
>> >> > set rs = db.openrecordset("SELECT * FROM table")
>> >> > et ca ne me renvoi que le 1er de la table !!!
>> >> > ca vient de quoi ?
>> >> > merci
>> >> >
>> >> >
>> >>
>> >>
>> >
>> >
>>
>>
>
>




Avatar
Boss Hog
encore un qui à l'air pas mal
http://www.info-3000.com/access/daorecordset.php

@+
Boss Hog


"seb-seb" wrote in message
news:
non c'est le truc de base quand on s'y connait pas de trop

dim db as database
dim rs as recordset
F1 dans le pire des cas sur l'un des 2 vous en dira plus
set rs = db.openrecordset(source , ...)
et apres avec la variable rs on a un curseur et on fait ce qu'on veux
enfin je comprends pas ca doit etre un bug interne à mon pc
car c'est impossible ....


"Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de news:


Oj$
> Salut seb-seb,
>
> pourait tu me donner un exemple complet de ton code car je doit dire que
> bien que je connaisse asser bien VB6 et tres bien ASP je ne connais pas


la
> methode OpenRecordset
> elle vient de quoi ?? un composant COM à vous??
>
> voici deux exemple en VB6 et ASP de l'utilisation d'un recordset
>
>


'========================================================================== > > ======== > > ' FUNCTION: GetRSfromQuery(ByVal SQLquery)
> ' Description: retourne un RecordSet depuis une query
>


'========================================================================== > > ======== > > Public Function GetRSfromQuery(ByVal sqlQuery) As ADODB.Recordset
> Dim ObjCmd
>
> 'ActiveConnection = chaine de connection à la base SQL server
> If ActiveConnection <> "" Then
> Set ObjCmd = CreateObject("ADODB.Command")
> ObjCmd.ActiveConnection = ActiveConnection
> ObjCmd.CommandText = sqlQuery
> Set GetRSfromQuery = ObjCmd.Execute()
> Else
> Set GetRSfromQuery = Nothing
> End If
> End Function
>
> maintenant en ASP
> 'Application("SgbdConnectionString") = chaine de connection à la base


SQL
> server
> Set oRs = Server.CreateObject("ADODB.Recordset")
> oRs.Open sqlQuery, Application("SgbdConnectionString")
>
> comme tu peut le constater il n'y a pas de "OpenRecordset"
>
> merci
>
> @+
> Boss Hog
>
> "seb-seb" wrote in message
> news:
>> voici les seules choses que j'ai mises
>> je ne sais pas quel curseur est choisit par défaut
>> et RSemployes.recordcount renvoi soit 14 soit 1 selon la méthode
>> je veux passer par du sql pour faire un order by mais meme en tout


simple
> la requete marche pas
>>
>> dim RSemployes as recordset
>> Set RSemployes = DBcoord.OpenRecordset("employes")
>> Set RSemployes = DBcoord.OpenRecordset("SELECT * FROM employes")
>>
>>
>>
>>
>> "Boss Hog @tiscali.fr>" <bosshog<replace> a écrit dans le message de


news:
>
>> > Salut
>> > la propriété recordcount est dépendante du type de curseur utilisé


pour
>> > ouvrir ton Recordset
>> > AddOpenStatic
>> > AddOpenForward
>> > AddLockOptimistic ETC....
>> >
>> > selon le type de curseur la propriété recorcount ne renvoi rien.
>> >
>> > deux solution
>> > 1- pour tester que ton RecordSet n'est pas vide tu fait ceci
>> >
>> > oRs = l'objet recordset
>> >
>> > If Not oRs.EOF and Not oRs.BOF Then
>> > 'y'a des données
>> > Else
>> > 'y'a rien
>> > End If
>> >
>> > 2-
>> > apres tu peut boucler sur ton Recordset sans oblier oRs.MoveNext
>> > While Not oRs.EOF
>> > 'tu recupère les valeurs et tu passe au record suivant
>> > toto = oRs("MyField")
>> > oRs.MoveNext
>> > Wend
>> >
>> > il faut aussi verifier que tu n'a pas affecter 1 à la propriété


PageSize
>> >
>> > @+
>> > Boss Hog
>> >
>> > "Giques" wrote in message
>> > news:4173a599$0$15438$
>> >> Rs.RecordCount renvoi quelle valeur?
>> >>
>> >> Si >1, tu peux passer au suivant par rs.movenext etc.
>> >>
>> >> Salut
>> >>
>> >> Giques
>> >>
>> >> "seb-seb" a écrit dans le message de news:
>> >>
>> >> > bonjour
>> >> >
>> >> > dim rs as recordset
>> >> > set rs = db.openrecordset("SELECT * FROM table")
>> >> > et ca ne me renvoi que le 1er de la table !!!
>> >> > ca vient de quoi ?
>> >> > merci
>> >> >
>> >> >
>> >>
>> >>
>> >
>> >
>>
>>
>
>




Avatar
Mourad DJEBLI
Bonjour,

Lorsqu'on ouvre le recordset il se positionne automatiquement sur le premier
entregistrement.
Pour accéder aux enregistrements suivants, il faut faire une boucle avec un
movenext
exemple :
set rs = db.openrecordset("SELECT * FROM table")
do while not rs.eof
x = rs.fields("Monchamp").value & empty
....
call rs.movenext
loop

CIAO

"seb-seb" a écrit dans le message news:

bonjour

dim rs as recordset
set rs = db.openrecordset("SELECT * FROM table")
et ca ne me renvoi que le 1er de la table !!!
ca vient de quoi ?
merci




Avatar
Driss HANIB
Recordcount ne donne pas toujours le bon nombre d'élements.
Pour ma part je fais systématiquement
Rs.movelast
Rs.movefirst
et en ensuite

Nb=Rs.recordcount

ensuite je fais

for i = 1 to nb
' traitemlnt
rs.movenext
next i

j'avais queque part que cela va plus vite que de tester sur 'not rs.eof'


Driss
"seb-seb" a écrit dans le message de
news:
"seb-seb" a écrit dans le message de news:



> bonjour
>
> dim rs as recordset
> set rs = db.openrecordset("SELECT * FROM table")
> et ca ne me renvoi que le 1er de la table !!!
> ca vient de quoi ?
> merci
>

rs.recordcount renvoi 1
alors que je fais openrecordset("table") ca me renvoi 14 elements




Avatar
Quasimodo
Driss HANIB formulated on Friday :
Recordcount ne donne pas toujours le bon nombre d'élements.
Pour ma part je fais systématiquement
Rs.movelast
Rs.movefirst
et en ensuite

Nb=Rs.recordcount

ensuite je fais

for i = 1 to nb
' traitemlnt
rs.movenext
next i

j'avais queque part que cela va plus vite que de tester sur 'not rs.eof'


Driss
"seb-seb" a écrit dans le message de
news:
"seb-seb" a écrit dans le message de news:

bonjour

dim rs as recordset
set rs = db.openrecordset("SELECT * FROM table")
et ca ne me renvoi que le 1er de la table !!!
ca vient de quoi ?
merci




rs.recordcount renvoi 1
alors que je fais openrecordset("table") ca me renvoi 14 elements





bonjour,
il n'existe pas d'eproximation, il donne le nombre exacte ou pas (-1),
il n'y pas d'autre valeurs possible et c'est logique.

@quaz

--
This is an automatic signature of MesNews.
Site : http://mesnews.no-ip.com
1 2