Avatar billede lund_dk Praktikant
30. juli 2006 - 13:54 Der er 20 kommentarer og
1 løsning

Fejl ved update

Jeg får denne fejl ved update i min tabel:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

Query-based update failed because the row to update could not be found.

/filmdatabase2/inc_editmovie.asp, line 88


Linie 88 er
rs.update

Koden:

Set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "select * from Film where ID = " & ID & ""
rs.Open strsql, conn, 1, 3
rs.update
rs("titel") = request.form("titel")
rs("censur") = request.form("censur")
rs("Beskrivelse") = request.form("beskrivelse")
rs("Skuespillere") = request.form("skuespillere")
rs("instruktor") = request.form("instruktor")
rs("Udgivdato") = request.form("Udgivdato")
rs("Spilletid") = request.form("spilletid")
rs("undertekst") = request.form("undertekst")
rs("Sprog") = request.form("sprog")
if request.form("ekstra") = "ON" then 
      RS("ekstra") = 1
    else
      RS("ekstra") = 0
end if

rs("diske") = request.form("diske")
if request.form("kopi") = "ON" then 
      RS("kopi") = 1
    else
      RS("kopi") = 0
end if
rs("region") = request.form("region")
if request.form("Billede") = "" then
    rs("billede") = "NoCover.jpg"
    else
    rs("billede") = request.form("billede")
    end if

rs.update


NOGEN BUD PÅ HVAD GRUNDEN ER?
Avatar billede jsc Nybegynder
30. juli 2006 - 14:04 #1
strSQL = "select * from Film where ID = " & ID & ""

kunne være denne linie...

hvor har du ID fra? - den står ikke refereret til nogensteder...

/jsc
Avatar billede jsc Nybegynder
30. juli 2006 - 14:06 #2
tror nærmere linien skal hedde
strSQL = "select * from Film where ID = " & request.querystring("ID") & ""

/jsc
Avatar billede lund_dk Praktikant
30. juli 2006 - 14:13 #3
ID henter jeg andet sted fra med ID = Request.QueryString("ID")
Avatar billede jsc Nybegynder
30. juli 2006 - 14:15 #4
prøv at gør det på min måde... altså:

strSQL = "select * from Film where ID = " & request.querystring("ID") & ""

jeg er ikke sikker på at ID er så smart at bruge på den måde...
Avatar billede lund_dk Praktikant
30. juli 2006 - 14:23 #5
Det giver den samme fejl
Avatar billede tafkab Nybegynder
30. juli 2006 - 14:25 #6
Fjern den 1. rs.Update du har

Set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "select * from Film where ID = " & ID & ""
rs.Open strsql, conn, 1, 3
--> Denne væk rs.update
rs("titel") = request.form("titel")
rs("censur") = request.form("censur")
rs("Beskrivelse") = request.form("beskrivelse")
rs("Skuespillere") = request.form("skuespillere")
rs("instruktor") = request.form("instruktor")
rs("Udgivdato") = request.form("Udgivdato")
rs("Spilletid") = request.form("spilletid")
rs("undertekst") = request.form("undertekst")
rs("Sprog") = request.form("sprog")
if request.form("ekstra") = "ON" then 
      RS("ekstra") = 1
    else
      RS("ekstra") = 0
end if

rs("diske") = request.form("diske")
if request.form("kopi") = "ON" then 
      RS("kopi") = 1
    else
      RS("kopi") = 0
end if
rs("region") = request.form("region")
if request.form("Billede") = "" then
    rs("billede") = "NoCover.jpg"
    else
    rs("billede") = request.form("billede")
    end if

rs.update
Avatar billede lund_dk Praktikant
30. juli 2006 - 14:34 #7
Det giver mig desværre det samme ..

Det har virket fint på ms access database, men fejlen kommer efter at have smidt det på MySQL database i stedet..
Avatar billede jsc Nybegynder
30. juli 2006 - 14:39 #8
fejl: Set rs = Server.CreateObject("ADODB.Recordset") så
Avatar billede jsc Nybegynder
30. juli 2006 - 14:40 #9
Conn.Open "DRIVER={MySQL}; server=" & dbserver & "; database=" & dbnavn & "; uid=" & dbuser & "; pwd=" & dbpass & ";"
set rs = Conn.execute(strSQL)
...
Avatar billede jsc Nybegynder
30. juli 2006 - 14:43 #10
ups... sådan:
Conn.Open "DRIVER={MySQL}; server=serveradresse; database=datebasenavn; uid=bruger; pwd=kode;"
strSQL = "select * from Film where ID = " & ID & ""
set rs = Conn.execute(strSQL)
...
Avatar billede lund_dk Praktikant
30. juli 2006 - 14:45 #11
Jeg henter min connection således.

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={MySql ODBC 3.51 Driver};server="& SQLserveradr &";database="& SQLdatabase &";uid="& SQLlogin &";pwd="& SQLpassword
Avatar billede jsc Nybegynder
30. juli 2006 - 14:48 #12
lav det om så... mit virker hundrede procent!
Avatar billede lund_dk Praktikant
30. juli 2006 - 15:07 #13
Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
Avatar billede jsc Nybegynder
30. juli 2006 - 15:12 #14
hvad skal du bruge alt det der odbc til??

Conn.Open "DRIVER={MySQL}; server=serveradresse; database=datebasenavn; uid=bruger; pwd=kode;"
strSQL = "select * from Film where ID = " & ID & ""

rs("titel") = request.form("titel")
rs("censur") = request.form("censur")
rs("Beskrivelse") = request.form("beskrivelse")
rs("Skuespillere") = request.form("skuespillere")
rs("instruktor") = request.form("instruktor")
rs("Udgivdato") = request.form("Udgivdato")
rs("Spilletid") = request.form("spilletid")
rs("undertekst") = request.form("undertekst")
rs("Sprog") = request.form("sprog")
if request.form("ekstra") = "ON" then 
      RS("ekstra") = 1
    else
      RS("ekstra") = 0
end if

rs("diske") = request.form("diske")
if request.form("kopi") = "ON" then 
      RS("kopi") = 1
    else
      RS("kopi") = 0
end if
rs("region") = request.form("region")
if request.form("Billede") = "" then
    rs("billede") = "NoCover.jpg"
    else
    rs("billede") = request.form("billede")
    end if

rs.update

set rs = Conn.execute(strSQL)
Avatar billede jsc Nybegynder
30. juli 2006 - 15:13 #15
UPS sådan:

Conn.Open "DRIVER={MySQL}; server=serveradresse; database=datebasenavn; uid=bruger; pwd=kode;"
strSQL = "select * from Film where ID = " & ID & ""
set rs = Conn.execute(strSQL)
rs("titel") = request.form("titel")
rs("censur") = request.form("censur")
rs("Beskrivelse") = request.form("beskrivelse")
rs("Skuespillere") = request.form("skuespillere")
rs("instruktor") = request.form("instruktor")
rs("Udgivdato") = request.form("Udgivdato")
rs("Spilletid") = request.form("spilletid")
rs("undertekst") = request.form("undertekst")
rs("Sprog") = request.form("sprog")
if request.form("ekstra") = "ON" then 
      RS("ekstra") = 1
    else
      RS("ekstra") = 0
end if

rs("diske") = request.form("diske")
if request.form("kopi") = "ON" then 
      RS("kopi") = 1
    else
      RS("kopi") = 0
end if
rs("region") = request.form("region")
if request.form("Billede") = "" then
    rs("billede") = "NoCover.jpg"
    else
    rs("billede") = request.form("billede")
    end if

rs.update
Avatar billede lund_dk Praktikant
30. juli 2006 - 15:27 #16
Min conection:
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={MySql};server="& SQLserveradr &";database="& SQLdatabase &";uid="& SQLlogin &";pwd="& SQLpassword

somgiver fejlen:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
Avatar billede lund_dk Praktikant
30. juli 2006 - 15:29 #17
er nød til at få en ODBC 3.51 Driver før min connection vil virke.

Og når det virker, så får jeg stadig samme fejl ved min update
Avatar billede jsc Nybegynder
30. juli 2006 - 15:34 #18
det er fint at du har den connection... men prøv at fortæl mig hvad den siger til min connection!!!!!!!!!!!!?

prøv denne kode (husk at skriv din bruger og kode ind i første linie):

Conn.Open "DRIVER={MySQL}; server=serveradresse; database=datebasenavn; uid=bruger; pwd=kode;"
strSQL = "select * from Film where ID = " & ID & ""
set rs = Conn.execute(strSQL)
rs("titel") = request.form("titel")
rs("censur") = request.form("censur")
rs("Beskrivelse") = request.form("beskrivelse")
rs("Skuespillere") = request.form("skuespillere")
rs("instruktor") = request.form("instruktor")
rs("Udgivdato") = request.form("Udgivdato")
rs("Spilletid") = request.form("spilletid")
rs("undertekst") = request.form("undertekst")
rs("Sprog") = request.form("sprog")
if request.form("ekstra") = "ON" then 
      RS("ekstra") = 1
    else
      RS("ekstra") = 0
end if

rs("diske") = request.form("diske")
if request.form("kopi") = "ON" then 
      RS("kopi") = 1
    else
      RS("kopi") = 0
end if
rs("region") = request.form("region")
if request.form("Billede") = "" then
    rs("billede") = "NoCover.jpg"
    else
    rs("billede") = request.form("billede")
    end if

rs.update
Avatar billede lund_dk Praktikant
30. juli 2006 - 15:52 #19
ADODB.Connection error '800a0e79'

Operation is not allowed when the object is open.
Avatar billede jsc Nybegynder
30. juli 2006 - 16:09 #20
gider ikke hjælpe mere - i min metode findes der ikke noget ADODB! - derfor kan der ikke opstå en fejl med det!

/jsc
Avatar billede lund_dk Praktikant
30. juli 2006 - 16:15 #21
.
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