Hej, använder oftast MySQL, men händer ibland att man kör Access. När man kör paging i MySQL så är det ju ganska smidigt då man bara kan köra Limit start,antal medan i access måste man köra med recordset.absolutepage osv, då funderade jag, hämtar den alla poster eller blir det endast inom dom som bör skrivas ut? För är det inte så är det ju hyffsad prestandaförlust att hämta ut några tusen poster men bara skriva ut 20. Jag tror men är inte säker att den gör arbetet korrekt, dvs att inte läsa upp all information till serverns minne. Hmm testade lite, den hämtar ju alla poster, kan vara så att den inte hämtar själva informationen innan man faktiskt vill använda den? men problemet är då om jag använder GetRows() så hämtar den in alla poster till arrayen. Så länge recordsetet är kopplat mot databasen så använder den alltid en buffert för att hämta data. Den hämtar alltså bara så många poster i taget som får plats i bufferten. Bufferten är normalt ungefär 8 kiB. Okej, hur skall man gå tillväga när man vill hämta till array då utan att behöva få med alla poster? Placera markören på den första posten med AbsoltePosition eller AbsolutePage, och ange i anropet till GetRows hur många poster som ska hämtas.Fråga om prestanda på recordset.
Sv: Fråga om prestanda på recordset.
Sv:Fråga om prestanda på recordset.
Sv: Fråga om prestanda på recordset.
(Undantaget är blob-fält (PM/text) som inte hämtas i bufferten utan i en ström bredvid.)Sv:Fråga om prestanda på recordset.
Sv: Fråga om prestanda på recordset.