webForumDet fria alternativet
Logga in / Bli medlem

Update funkar inte

ASP

8 svar · 219 visningar · startad av timedia

Medlem sedan maj 2001420 inlägg
Trådstart#1

Har precis fått konto på Space2u. (Dom kör ChilisoftASP) Koden nedan har fungerad förut men ger nu följande fel:

ADODB.Recordset.1 error '80004005' 

SQLState: 34000
Native Error Code: 0
[INTERSOLV][ODBC SequeLink driver]Statement with cursor named in this statement's CURRENT-OF-CURSOR clause is not a SELECT FOR UPDATE.

/admin/redfst2.asp, line 22

Linje 22= RecSet.Update
Hur får jag nedanstående att fungera?

Set RecSet = Server.CreateObject("ADODB.Recordset")
   Uppdatera = "SELECT * FROM Nyheter WHERE NyhetsID = " & Request.Form("AD") & " "

   RecSet.Open Uppdatera, Connect, adOpenStatic, adLockOptimistic 

	RecSet("Rubrik") = Request.Form("rubrik")
	RecSet("Bild") = Request.Form("bild")
	RecSet("Rubrikbild") = Request.Form("rubrikbild")
	RecSet("Artikel") = Request.Form("artikel")
	RecSet("Brodtext1st") = Request.Form("brodtext1st")
	

	RecSet.Update
	RecSet.Close
	Set Recordset = Nothing 
	Connect.Close 
	Set Connect = Nothing  %>
Medlem sedan juni 200032 967 inlägg
#2

Hej!

Jag skulle vilja ersätta hela det kodstycket du visade ovan, med detta:

strSQL = "UPDATE Nyheter SET Rubrik = '" & Request.Form("rubrik") & ", Bild = '" & Request.Form("bild") & ", Rubrikbild = '" & Request.Form("rubrikbild") & "', Artikel = '" & Request.Form("artikel") & "', Brodtextlist = '" & Request.Form("brodtext1st") & "' WHERE NyhetsID = " & Request.Form("AD")
Connect.Execute strSQL, , 128

Connect.Close 
Set Connect = Nothing

Se om det fungerar bättre att göra på detta sätt, som är bättre på de flesta sätt. :)
Eftersom jag vet att frågan kommer att dyka upp så passar jag på att nämna att argumentet 128 som jag ger till Connect.execute ovan, specificerar att inget recordset ska skapas. Och det ska det ju inte heller, eftersom vi inte ska hämta någonting.

Mvh,

Medlem sedan feb. 20012 412 inlägg
#3

Hej!

timedia, det går inte köra sådan kod på ChilliASP. Gör som @nders sade och kör ren SQL istället.

mvh Jörgen :)

Medlem sedan maj 2001420 inlägg
#4

Tack, nu får jag detta fel:

ADODB.Connection.1 error '80004005' 

SQLState: 07001
Native Error Code: -3010
[INTERSOLV][ODBC SequeLink driver][ACCESS][Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

/admin/redfst2.asp, line 11

...och det som genererar fel är: linje 11 är Connect.Execute strSQL, , 128

<%	Set Connect = Server.CreateObject("ADODB.Connection")
   Connect.Open "DSN=;Password"

	strSQL = "UPDATE Nyheter SET Rubrik = '" & Request.Form("rubrik") & ", Bild = '" & Request.Form("bild") & ", Rubrikbild = '" & Request.Form("rubrikbild") & "', Artikel = '" & Request.Form("artikel") & "', Brodtextlist = '" & Request.Form("brodtext1st") & "' WHERE NyhetsID = " & Request.Form("AD")
Connect.Execute strSQL, , 128
Connect.Close 
Set Connect = Nothing	

	 %>
Medlem sedan maj 2001420 inlägg
#5

HURRA! Jag fixade det. Ett litet skrivfel i Anders kod :) Skulle vara Brodtext1st - inte Brodtextlist.
Tack för hjälpen!

Medlem sedan juni 200032 967 inlägg
#6

Såg precis det. :)

Mvh,

Medlem sedan maj 2001420 inlägg
#7

Trodde detta funkade, men upptäckte ett nytt problem :(

strSQL = "UPDATE Nyheter SET Rubrik = '" & Request.Form("rubrik") & ", Bild = '" & Request.Form("bild") & ", Rubrikbild = '" & Request.Form("rubrikbild") & "', Artikel = '" & Request.Form("artikel") & "', Brodtext1st = '" & Request.Form("brodtext1st") & "' WHERE NyhetsID = " & Request.Form("AD")
Connect.Execute strSQL, , 128
Connect.Close 
Set Connect = Nothing

Nu skriver den " , Bild = " i rubriken när jag uppdaterar en nyhet!?.

Medlem sedan okt. 20005 273 inlägg
#8
strSQL = "UPDATE Nyheter SET Rubrik = '" & Request.Form("rubrik") & "[b]'[/b], Bild = '" & Request.Form("bild") & "', Rubrikbild = '" & Request.Form("rubrikbild") & "[b]'[/b], Artikel = '" & Request.Form("artikel") & "', Brodtext1st = '" & Request.Form("brodtext1st") & "' WHERE NyhetsID = " & Request.Form("AD")
Connect.Execute strSQL, , 128
Connect.Close 
Set Connect = Nothing

du hade glömt lite ' ;)

Medlem sedan maj 2001420 inlägg
#9

Tack Isaaq. Nu funkar det (det verkar så i alla fall :))

251 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
114 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)