Avatar billede burningice Nybegynder
28. oktober 2002 - 11:28 Der er 4 kommentarer og
1 løsning

Min datareader springer første record over

jeg har følgende kode som skriver poster ud fra en db... den skriver fint nok ud, men kun hvis der er OVER 1 post... hvis der f.eks. er 2 poster, skriver den kun den ene ud, osv.

if (!objDataReader.Read())
            {
                txtLog.Text += "Ingen post";               
            }
            else
            {
                while (objDataReader.Read())
               
                txtLog.Text += objDataReader.GetString(1);

            }
Jeg har fundet ud af at hvis jeg springer min tjek over, altså (!objDataReader), så virker det fint... men hvordan tjekker jeg så om min reader er tom?
Avatar billede odegaard Nybegynder
28. oktober 2002 - 11:50 #1
Din første if-betingelse får den til at læse den første række, så når du når til din while, beder du om række nr. to.
Avatar billede odegaard Nybegynder
28. oktober 2002 - 11:50 #2
øh svar :-)
Avatar billede z42cool Nybegynder
28. oktober 2002 - 12:20 #3
if (objDataReader.Read())
{
  do
  {
    txtLog.Text += objDataReader.GetString(1);
  } while(objDataReader.Read());
}
else
{
  txtLog.Text += "Ingen post"; 
}
Avatar billede burningice Nybegynder
28. oktober 2002 - 19:27 #4
z42cool>> tusind tak, det virkede... kan det passe at det som gjorde forskellen var at while'n ligger EFTER at man skriver den første record ud?
Avatar billede odegaard Nybegynder
29. oktober 2002 - 00:03 #5
Ja det er hele forskellen. Når du laver din while(...), så hopper den til næste record, og returnerer true hvis det lykkedes. If-sætningen får den til at hoppe til første record.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester