Är mycket fundersam över en sak. Vilket är det bästa sättet att skapa en uppsättning på? Explict eller Implict?
I boken Lär dig ASP på 3 veckor förespråkar dem den Explicta postupsättningen dvs:
Set objConn = ServerCreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open Källa, objConn, Markörtyp, Låstyp, Alternativ
Men i Vides ASP-kurs verkar det som om han mer eller mindre förespråkar Execute metoden?
Vilken metod är bäst prestandamässigt och vad rekomenderar ni mig att använda? Kan båda men vet inte vilken jag ska köra med!
Det enda som är vettigt med explicit är att man kan skapa ett recordset som är frikopplat från databasen
set rs = server.createobject("adodb.recordset")
rs.cursorlocation = 3
rs.open sql,connect
connect.close
så får du allt data i recordsetet.
Det här kan man också åstadkomma med hjälp av metoden getrows och en implicit skapning
set rs = connect.execute(sql)
if not rs.eof then
arr = rs.getrows()
end if
connect.close
Att använda recordset för att göra update eller insert kostar mer än att göra execute på ett sql-statement.
Ett test som Jaan gjorde visade att om man gjorde insert på en tabell med tre kolumner via ett recordset så innebar det 50 anrop till ODBC medan om man gjorde execute så blev det 3 stycken ODBC-anrop. Visserligen så går inte alla anrop vidare till databas-servern men ändock.
------------------ essentitia preter non sans multiplicandum