17. oktober 2002 - 12:02Der er
7 kommentarer og 1 løsning
Udtræk af DataReader?????
Hejsa
Jeg har nu fået forbindelse til min database, men har lidt problemer med at få udtrækket de data jeg har hentet i databasen fra mit dataReader objekt.
Min kode ser indtil videre ud som følger:
... objCommand = new SQLCommand(strSQL,objConn) objConn.Open() dataReader = objCommand.ExecuteReader() objConn.Close() ... (Variablerne er derfineret tidligere!!!!)
Mit spørgsmål er så nu, hvordan man på en nem måde får udtrukket dataene fra datareader objektet. Jeg har set mange vilde løsninger med databind og andet, men i mit tilfælde drejer det sig i denne omgang om et enkelt felt... Hvordan får jeg det ud???? Jeg vil helst bare have det ud som en String, da den er nemmest at arbejde med.
Hvad nu, hvis der er mange poster i mit udtræk?? Eks: Select navn, fornavn, telefon osv. Hvordan gør jeg så??? Og værre endnu, hvad nu hvis jeg slet ikke ved hvor mange rækker der er???? Select * ???
Jeg håber der er nogen der kan hjælpe!!
Pointene gives til den med flest kode eksempler, og det skal være letforståelige kodeeksempler. Altså: Keep It Simple!!!!
Når jeg "sorterer" lidt i din kode, så er det essentille:
if(objDataReader.Read()) dim var as string = objDataReader("kolonne").ToString() end if
(oversat til VB :-) )
Til det har jeg dog lige et spørgsmål: If-sætning. Hvad gør den helt nøjagtigt? Så vidt jeg kan læse mig til i dokumentationen, så skulle obj.DataReader.Read() bare flytte mig til den næste kolonne? Men den returnerer åbenbart også en boolean????
Ja den returnerer også en boolean (det står også i SDK'en ;-)).
Og ved if(objDataReader.Read()) undersøges der om der overhovedet er returneret en række. Hvis du vil køre gennem flere rækker skriver du while(objDataReader.Read()).
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.