Probleme mit Array und Recordsets
Recardo
- vb-script
0 rouven thimm0 Recardo
Ich weiß echt nicht was ich falsch mach!
Ich hab folgendes Problem.
Ich hab eine Tabelle "Test" mit 3 Spalten und 9 Datensätzen hole die vom MS SQL Server 2000, die Daten kommen auch richtig an und übergebe die dann an ein Array (egal ob direkt oder über ein Recordset) mit GetRows(). Im Array stehen auch alle Daten drin.
Mein Problem ich bekomme nicht alle Daten aus dem Array, irgendwas stimmt mit dem Ubound() nicht ich bekomme immer nur soviele Datensätze wie ich Spalten haben (d.h. 3)
Die For-Schleife sieht so aus
<%For x = 0 to UBound(ArrayX)%>
Feld: <%=ArrayX(1,x)%>
<%next%>
Und wenn ich versuch von dem Recordset den RecordCount auszulesen bekomme ich -1 zurück. Da stimmt auch noch irgendwas nicht
Ich hoffe mir kann jemand helfen
Gruß Recardo
Hi,
Vorschlag von jemandem der in VB noch nicht allzu viel mit Arrays gemacht hat:
Kann man vielleicht das UBound auf so etwas wie Array(1) anwenden, also den ersten Eintrag des Arrays auszählen lassen (die andere Dimension halt?)
Ich habe deshalb noch keine Erfahrungen damit, weil ich nach der -1-Erkenntnis bei RecordCount auf While-Schleifen umgestiegen bin, im Sinne von
while (rs.eof = false)
rs.movenext
wend
Das mit dem rs.eof oder rs.bof würde auch nix bringen, da die bei mir beide False zurückgeben, das Recordset ist halt leer. Aber das Problem von mir ist jetzt gelößt ... das Ubound verlangt noch einen zweiten Parameter, was aber nirgendwo angegeben ist.
Warum das Recordset mist zurück gibt hab ich aber noch nicht rausgefunden.
Mit der While Schleife hab ich auch so meine Bedenken, da die ziemlich langsam sind im Vergleich zudem For schleifen. Merkt man deutlich bei vielen Datensätzen,
Trotzdem Danke
Gruß Recardo
Hi,
Vorschlag von jemandem der in VB noch nicht allzu viel mit Arrays gemacht hat:
Kann man vielleicht das UBound auf so etwas wie Array(1) anwenden, also den ersten Eintrag des Arrays auszählen lassen (die andere Dimension halt?)Ich habe deshalb noch keine Erfahrungen damit, weil ich nach der -1-Erkenntnis bei RecordCount auf While-Schleifen umgestiegen bin, im Sinne von
while (rs.eof = false)rs.movenext
wend