Avatar billede riishoj Nybegynder
10. august 2005 - 14:41 Der er 9 kommentarer og
1 løsning

Hvornår skal databasen lukkes?

Jeg har en asp-side, som udfører 7 forskellige SELECT handlinger. Skal jeg åbne og lukke databasen for hver SELECT, eller er det en fordel at åbne db'en, køre hele scriptet igennem og så lukke til sidst? Som det er nu, så åbner og lukker jeg 7 gange, men jeg har ind i mellem problemer med denne fejl

Provider error '80004005'
Unspecified error

Kan det skyldes, at jeg åbner og lukker db'en for ofte?
Avatar billede erikjacobsen Ekspert
10. august 2005 - 14:49 #1
Bedst at åbne een gang, og huske at lukke til sidst, ja.
Avatar billede busschou Praktikant
10. august 2005 - 14:52 #2
Du bør åbne og lukke den hver gang asp koden køres
Så åbne i toppen og lukke i bunden burde være godt nok mig bekendt
Avatar billede busschou Praktikant
10. august 2005 - 14:52 #3
Det man skal være sikker på det er at lukke databasen
Hvis du fx har en redirect så skal du lukke den inden du redirecter
Avatar billede riishoj Nybegynder
10. august 2005 - 14:54 #4
Ok. Kan min periodiske fejl skyldes, at jeg åbner og lukker for ofte?
Avatar billede busschou Praktikant
10. august 2005 - 15:01 #5
tja det er jo en ret "tåbelig" fejlmelding hehe den siger ikke meget
Måske er det fordi du refererer til rs("noget") efter du har lukket forbindelsen
Avatar billede riishoj Nybegynder
10. august 2005 - 15:08 #6
busschou> Jeg tror, at du har ledt mig på sporet med hensyn til fejlen. Siden redirecter hvert 30 sekund til en anden side, som tjekker, om en bestemt betingelse er opfyldt. Hvis den ikke er det, redirectes tilbage til den første side, som så igen efter 30 sek .... osv. Jeg kan så godt se, at det er lidt tilfældigt, om db'en er åben eller lukket, når der redirectes. Er der nogen måde, at jeg kan løse dette på? Hvordan får jeg lukket db'en inden siden redirectes?
Avatar billede busschou Praktikant
10. august 2005 - 15:12 #7
på normal vis
---
<%
//en masse kode blalba
if betingelse then
  conn.close
  set conn = nothing
  response.redirect "en ny side"
else
  //gør noget andet fx
  conn.execute("update ....blalba"
  conn.close
  set conn=nothing
end if
Avatar billede busschou Praktikant
10. august 2005 - 15:12 #8
det ligger næsten i ordene "Hvordan får jeg lukket db'en inden siden redirectes?"
Det gør du ved at lukke den inden du redirecter ;o)
Avatar billede riishoj Nybegynder
10. august 2005 - 15:29 #9
Ikke umiddelbart så nemt at lave, men du har givet mig en løsning, som jeg må prøve. Send et svar, så du kan få dine point.
Avatar billede busschou Praktikant
10. august 2005 - 15:31 #10
Nu kender jeg jo ikke din struktur :o)
Men jeg gør det selv sådan at jeg på alle mine sider åbner databasen aller øverst
Alle steder hvor jeg så kan risikere en redirect eller noget andet som gør scriptet stopper, så sørger jeg for at lukke databasen ned inden den handling kan ske :o)

Håber du får det til at virke med alle dine redirects :o)
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