General tips HReading records from a table is not hard, reading records in a optimized way is a little tougher. Often I see code like

        Set oRS = oConn.Execute ("select ..." )
While it will work most of the times, there are certain aspects that will not be very optimized - and some features that will not be available for you. However, when creating the recordset object yourself with Server.CreateObject("ADODB.Recordset") and then setting the various properties for optimization it is easy to do mistakes and also easy to forget what those properties are for.