webForumDet fria alternativet

Stänger verkligen = Nothing

ASP

6 svar · 248 visningar · startad av nill

Medlem sedan okt. 2001387 inlägg
Frågan#1

Hej

Jag kör ASP mot mySQL men har problem med för många anslutningar. Stänger mina kopplingar direkt efter jag använt dem och inte "öppnar i början av sidan och stänger i slutet", för så har jag hört at man ska göra med ASP.
Jag stänger mina Kopplingar med

Set Connect = Nothing

vilket jag har läst motsvarar

Connect.Close
Set Connect = Nothing

Motsvarar inte ..=Nothing ...Close också eller? Vad kan vara fel?

Medlem sedan sep. 2002538 inlägg
#2

Jag kör med båda, dvs:

Connect.Close
Set Connect = Nothing

Trodde man först skulle stänga anslutningen och sedan döda den men vet inte riktigt.

Medlem sedan feb. 200112 078 inlägg
#3

Detta har diskuterats innan i forumet, sökning blir nog svårt då både nothing och close finns med i oändligt många trådar.

Däremot har jag för mig att när objektet förstörs med metoden Nothing, så anropades Close också. Personligen använder jag bara Nothing, för att jag, som sagt, har för mig att det räcker.

Medlem sedan okt. 2001387 inlägg
#4

Ja det har jag också för mig. Men tydligen inte. Har försökt söka, men som du säger var det inte så lätt :)
Hittade detta någonstans:

Recordset.close behöver bara köras om recordsetet öppnas med recordset.open, om det skapats med set recordset = Connection.Execute(SQL-sträng) så behövs bara Set Recordset = Nothing raden utföras

Kan det vara så? och Set RecSet = Connect.Execute(SQL) är väl det snabbaste, ultimata sättet att skapa ett recordsätt mot mysql?

Medlem sedan sep. 2002538 inlägg
#5

nill skrev:

Set RecSet = Connect.Execute(SQL) är väl det snabbaste, ultimata sättet att skapa ett recordsätt mot mysql?

Du skapar väl inget riktigt recordset när du använder "Connect.Execute(SQL)..

Medlem sedan maj 20018 027 inlägg
#6

Såvitt jag vet kommer Set connect = Nothing bara innebära att referensen till connect inte längre pekar på sitt objekt. Om andra referenser pekar mot samma objekt, finns det fortfarande kvar. Alltså skulle jag använda connect.Close innan jag sätter objektet till Nothing.

Medlem sedan okt. 2001387 inlägg
#7

även när man öppnar "Recordsätt" (eller vad det nu heter) med Set RecSet = Connect.Execute(SQL) ???

270 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
146 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)