Avatar billede food4u.dk Nybegynder
13. januar 2002 - 14:48 Der er 6 kommentarer og
2 løsninger

Luk databaseforbindelse korrekt ned?

Hejsa

Jeg har et problem, hvordan lukker jeg min forbindelse til en database korrekte ned?

Jeg plejer at køre sådan:
<%
Set conn = Server.CreateObject(\"ADODB.Connection\")
conn.open \"DRIVER={MySql}; SERVER=127.0.0.1; DATABASE=xxx; UID=xxx; PWD=xxx\"

kon_stat = \"SELECT * FROM system where id = 2\"
set stat = conn.execute( kon_stat )
konkurrence = stat(\"stat\")
conn.close
set stat = nothing
%>

Men når man så kigger på \"Process\" i WinMySQLadmin, så står der, at Command = sleep, og så en eller anden tid.

Hvis jeg derimod køre noget i phpMyAdmin, så forsvinder den helt når den er færdig, hvordan gør man det?

/Christoffer
www.food4u.dk
Avatar billede hojben Novice
13. januar 2002 - 14:52 #1
btw: har \"lånt\" dit banner til reklame på mit site men har modificeret det.. er det ok?

http://www.vejs.dk/Sounds/
Avatar billede dth Nybegynder
13. januar 2002 - 15:00 #2
Jeg plejer at skrive
<%
conn.close: set conn = nothing
%>

/trier :-)
Avatar billede food4u.dk Nybegynder
13. januar 2002 - 15:04 #3
hojben > yes yes, helt fint med mig :o)

dth > hmm, det for den heller ikke til at forsvinde
Avatar billede dth Nybegynder
13. januar 2002 - 15:06 #4
Hmm... Så kan jeg sq ikke hjælpe dig.. :-)
Avatar billede hojben Novice
13. januar 2002 - 15:09 #5
Food4u > nice site du har der.. du kan bare snuppe \"dit\" banner tilbage hvis du kan bruge den modificerede.. ;)
Avatar billede richardr Nybegynder
13. januar 2002 - 15:24 #6
i dit tilfælde vill jeg:
stat.close
set stat = Nothing
conn.close
set conn = Nothing

men det er bare mig.. :)
Avatar billede a1a1 Novice
13. januar 2002 - 15:44 #7
Tja....
richardr har ret..

Men jeg har læst (og selv prøvet at teste) at hvis du UNDLADER den sidste:
set conn = Nothing
Vil du få bedre performance...
Fordi at Set conn = Nothing SLETTER din connection helt (fra serverens connection pool), hvis du derimod ikke sletter den vil din connection blive i din connection pool og når en bruger så vil connecte vil \"han\" først se om der skulle være en i connection pool\'en.....
Avatar billede food4u.dk Nybegynder
13. januar 2002 - 18:02 #8
Ok, hvad er bedst af disse to


-------nummer1-----
<%
Set conn = Server.CreateObject(\"ADODB.Connection\")
conn.open \"DRIVER={MySql}; SERVER=127.0.0.1; DATABASE=xxx; UID=xxx; PWD=xxx\"

kon_stat = \"SELECT * FROM system where id = 2\"
set stat = conn.execute( kon_stat )
konkurrence = stat(\"stat\")
conn.close
set stat = nothing
%>
<%
Set conn = Server.CreateObject(\"ADODB.Connection\")
conn.open \"DRIVER={MySql}; SERVER=127.0.0.1; DATABASE=xxx; UID=xxx; PWD=xxx\"

kon_stat = \"SELECT id FROM system where id = 2\"
set stat = conn.execute( kon_stat )
konkurrence = stat(\"stat\")
conn.close
set stat = nothing
%>

-----------nummer2----------
<%
Set conn = Server.CreateObject(\"ADODB.Connection\")
conn.open \"DRIVER={MySql}; SERVER=127.0.0.1; DATABASE=xxx; UID=xxx; PWD=xxx\"

kon_stat = \"SELECT * FROM system where id = 2\"
set stat = conn.execute( kon_stat )
konkurrence = stat(\"stat\")

kon_stat = \"SELECT id FROM system where id = 2\"
set stat = conn.execute( kon_stat )
konkurrence = stat(\"stat\")
conn.close
set stat = nothing
%>

Er det bedst at åbne en fobindelse, laver alle ens kald, og så lukke. Eller skal man åbne, lave kald, lukke, åbne osv.

Er det ikke bedste nummer 2?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester