ASP recordset

Résolu
nico7382 Messages postés 287 Statut Membre -  
 mmm -
Bonjour,
j'ai quelques soucis avec mon recordset sur base access 97 via ASP

j'aimerais avoir le nombre d'enregistrement que je recupere sans faire une boucle et revenir au premier

du genre:
resultat.recorsetcount()

merci de votre aide

7 réponses

  1. shaiulud Messages postés 51 Date d'inscription   Statut Membre 15
     
    <%
    set conn=Server.CreateObject("ADODB.Connection")
    conn.Provider="Microsoft.Jet.OLEDB.4.0"
    conn.Open(Server.Mappath("northwind.mdb"))
    set rs=Server.CreateObject("ADODB.recordset")
    sql="SELECT * FROM Customers"
    rs.Open sql,conn
    if rs.Supports(adApproxPosition)=true then
    i=rs.RecordCount
    response.write("The number of records is: " & i)
    end if
    rs.Close
    conn.Close
    %>

    tu trouveras la doc ADO ici
    http://www.w3schools.com/ado/ado_ref_recordset.asp
    ou ici
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdobjodbrec.asp
    1
  2. shaiulud Messages postés 51 Date d'inscription   Statut Membre 15
     
    ok, le méthode recourdCount ne fonctione pas car ton curseur est forwardOnly, passes le en openDynamic (cf lien )

    ADO parcourt le jeu d'enregistrement or en forward only, s'il le fait, tu ne peux plus lire les données.

    http://www.w3schools.com/ado/prop_rs_cursortype.asp
    1
  3. nico7382 Messages postés 287 Statut Membre 50
     
    merci,
    mais ca me renvoie toujours le meme resultat : -1

    ....
    if not (rspers.EOF) and not(rspers.BOF) then
       Response.Write ">" & rspers.RecordCount
    ...
    

    et mon rspers varie c sur j'ai executer la requete a partir d'access
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. nico7382 Messages postés 287 Statut Membre 50
     
    voila le code en plus clair:
    
    Response.Write sqlpers
    set rspers = connexion.execute(sqlpers)
    
    if not(rspers.EOF) then
    
      if rspers.Supports(adApproxPosition)=true then
        count=rspers.RecordCount
        Response.Write ">" & count 
      
        if nb=rspers.RecordCount  then
          Response.Write " disabled"
        end if
      end if
    end if
    


    sqlpers me retourne 4 enregistrements par Access,
    je ne suis pas a la fin des enregistrements
    mais il me retourne toujours -1 .
    Je ne vois pas pourquoi
    0
  6. nico7382 Messages postés 287 Statut Membre 50
     
    Est-ce qu'il y a un mode séquentiel sur les recordset???
    0
  7. nico7382 Messages postés 287 Statut Membre 50
     
    ok merci,

    je me doutais que ca devait etre quelques chose comme ca.
    Mais finalement j'ai rajouter un count dans la requete et ca me suffit

    Merci de t'etre penché sur ma question et de m'avoir appris la différence entre le forwardonly et le opendynamic

    Bonne continuation
    0