Avatar billede george Nybegynder
22. december 2004 - 21:16 Der er 20 kommentarer og
2 løsninger

Fejl i slet funktion

Jeg får denne fejl hver gang jeg prøver at slette en post i min access database :

Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver] Could not delete from specified tables.
/bodygym/admin/admin_timeplan.asp, line 35

Her er slette funktionen :

TmpMode = Request("mode")

If TmpMode = "slet" Then
'Delete record
  strSQL = "DELETE * FROM Timeplan WHERE ID=" & CInt(request("id"))
  Conn.Execute(strSQL)
'Response.Redirect "admin_timeplan.asp"
End If

Mit slette link ser således ud : <A HREF=admin_timeplan.asp?mode=slet&id=" & rs("id") & ">

Er der nogen der kan se hvad der er galt ?
Avatar billede goose Nybegynder
22. december 2004 - 21:45 #1
Du er sikker på, at det er den rigtige tabel du prøver at slette fra ?

Hvis ja, så prøv følgende:

TmpMode = Request("mode")

If TmpMode = "slet" Then
'Delete record
  strSQL = "DELETE * FROM Timeplan WHERE ID=" & request.querystring("id")
  Conn.Execute(strSQL)
'Response.Redirect "admin_timeplan.asp"
End If

- og kald den med:
<A HREF=admin_timeplan.asp?mode=slet&id=<%=rs("id")%>"

/Goose
Avatar billede goose Nybegynder
22. december 2004 - 21:45 #2
- og du har skriverettigheder hvor databasen ligger ?

/Goose
Avatar billede cpufan Juniormester
22. december 2004 - 22:00 #3
hvordan ser din connection ud?
Avatar billede george Nybegynder
22. december 2004 - 22:04 #4
Ja jeg har lige checket det og det så ud til at være ok.
Avatar billede george Nybegynder
22. december 2004 - 22:21 #5
Min connection ser således nu :

'Creating the Recordset Object
Set Conn = Server.CreateObject("ADODB.Connection")

'Creating a DSN-Less connection to your Database
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("bodygym.mdb")

'Open your recordset
Conn.Open strDSN

strSQL = "SELECT * FROM Timeplan"
Set rs = Conn.Execute(strSQL)
Avatar billede goose Nybegynder
22. december 2004 - 22:29 #6
Kan det evt. være fordi du prøver at slette et recordset der er åbent ?

Når du har lavet dit ud træk med:

<A HREF=admin_timeplan.asp?mode=slet&id=" & rs("id") & ">

- har du så lukket det med:

rs.close
set rs = nothing
conn.close
set conn = nothing

inden du fortsætter til din slette funktion ?

/Goose
Avatar billede george Nybegynder
22. december 2004 - 22:47 #7
For stadig samme fejl når jeg bruger din vers. : strSQL = "DELETE * FROM Timeplan WHERE ID=" & request.querystring("id")

<A HREF=admin_timeplan.asp?mode=slet&id=<%=rs("id")%>" Hvordan skal denne se ud når den ligger i en Response.Write ?

Response.Write "<tr><td><IMG SRC=image/sp.gif BORDER=0 WIDTH=10 HEIGHT=1 ALIGN=bottom ALT=></td><td Width=100><input type=hidden name=day value=" & rs("Day") & "><input type=text name=time Class=tekst1x size=10 value=" & rs("Time") & "></td><td Width=150><input type=text name=comment Class=tekst1x size=20 value=" & rs("Beskrivelse") & "></td><td Width=15><input type=text Class=tekst1x name=instruktor size=15 value=" & rs("Instruktor") & "></td><td Width=10>&nbsp;</td><td Width=15><input type=text name=sal Class=tekst1x size=1 value=" & rs("Sal") & "></td><td Width=35 align=center><A HREF=admin_timeplan.asp?mode=slet&id="%><%=rs("ID")%><%"><IMG SRC=../image/slet.gif BORDER=0 WIDTH=18 HEIGHT=18 ALIGN=bottom alt=Slet></A></td><td Width=35 align=center><A HREF=admin_timeplan.asp?mode=slet&id=%" & rs("id") & "Update</A></td></tr>"
Avatar billede george Nybegynder
22. december 2004 - 22:48 #8
Ja måske. Jeg prøver lige at checke det.
Avatar billede cpufan Juniormester
22. december 2004 - 23:10 #9
Response.Write "<tr><td><IMG SRC=image/sp.gif BORDER=0 WIDTH=10 HEIGHT=1 ALIGN=bottom ALT=></td><td Width=100><input type=hidden name=day value=" & rs("Day") & "><input type=text name=time Class=tekst1x size=10 value=" & rs("Time") & "></td><td Width=150><input type=text name=comment Class=tekst1x size=20 value=" & rs("Beskrivelse") & "></td><td Width=15><input type=text Class=tekst1x name=instruktor size=15 value=" & rs("Instruktor") & "></td><td Width=10>&nbsp;</td><td Width=15><input type=text name=sal Class=tekst1x size=1 value=" & rs("Sal") & "></td><td Width=35 align=center><A HREF=admin_timeplan.asp?mode=slet&id="& rs("ID") & "><IMG SRC=../image/slet.gif BORDER=0 WIDTH=18 HEIGHT=18 ALIGN=bottom alt=Slet></A></td><td Width=35 align=center><A HREF=admin_timeplan.asp?mode=slet&id=" & rs("id") & ">Update</A></td></tr>"
Avatar billede george Nybegynder
22. december 2004 - 23:13 #10
Nu har jeg sikret mig at det er lukket ned efter min Do While løkke ( efter den har skrevet alle mine records ud ), men jeg får stadig samme fejl.
Avatar billede cpufan Juniormester
22. december 2004 - 23:21 #11
og du er sikker på at du har ret til at skrive/slette i db'en?
Avatar billede george Nybegynder
22. december 2004 - 23:33 #12
Det havde jeg åbenbart ikke. Nu virker det.

Point i morgen. Zzzz
Avatar billede cpufan Juniormester
22. december 2004 - 23:36 #13
yeah, -;-)
Avatar billede goose Nybegynder
23. december 2004 - 08:05 #14
Jvf. mit forslag kl 21:45:52 ligger jeg så også lige et svar :o)

/Goose
Avatar billede george Nybegynder
23. december 2004 - 13:49 #15
Tak for hjælpen drenge.
Avatar billede george Nybegynder
23. december 2004 - 13:52 #16
Nu kan jeg slet ikke start ASP siden op. Kommer med denne fejl.
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x318 Thread 0xe68 DBC 0x766024 Jet'.
/bodygym/admin/test.asp, line 13

Det er når jeg prøver at åbne DB fejlen kommer.

Ved i hvad det betyder og hvordan det løses ?
Avatar billede goose Nybegynder
23. december 2004 - 14:13 #17
Det plejer at være en "forkert" connection.
Hvordan ser din database connection ud ?

/Goose
Avatar billede george Nybegynder
23. december 2004 - 14:21 #18
Som den hele tiden har gjort.

'Creating the Recordset Object
Set Conn = Server.CreateObject("ADODB.Connection")

'Creating a DSN-Less connection to your Database
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("bodygym.mdb")

'Open your recordset
Conn.Open strDSN
Avatar billede goose Nybegynder
23. december 2004 - 14:27 #19
og stien til databasen er rigtig ?

/Goose
Avatar billede george Nybegynder
23. december 2004 - 14:31 #20
Ja det har jeg ikke ændret på siden i går. Jeg har faktisk ikke gjort andet end at lukke min laptop og tænde den her til morgen og så kom den med denne fejl.
Avatar billede george Nybegynder
23. december 2004 - 14:36 #21
Du skal ikke tænke mere over det. Jeg kan ikke engang åbne DB i access så jeg må lave en ny. Det er sket et eller andet uforklarligt da jeg lukkede ned i går.
Avatar billede goose Nybegynder
23. december 2004 - 14:39 #22
okay :o)

/Goose
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