varför?

ASP

2 svar · 281 visningar · startad av Zapotek

Medlem sedan juni 200053 inlägg
Trådstart#1

Vaför fungerar inte denna kod?

<%@ Language=VBScript %>
<HTML>
<BODY>
<!-- #include File="adovbs.inc" -->
<%
Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "DSN=d2248-news;Password=@01#$befacpeijaagokgapkfabe"

Set RecSet = Server.CreateObject("ADODB.RecordSet")
Radera = "SELECT * FROM nyheter WHERE ID = " & Request.QueryString("DelID") & " "

RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic

RecSet.Delete
RecSet.Close
Connect.Close
%>
Nyheten är nu raderad ur nyhets databasen!
<br/>

<a href="default.asp">Tillbaka</a>

</BODY>
</HTML>

jag får bara ett felmeddelande som säger:

ADODB.Recordset.1 error '80004005'

Statement with cursor named in this statement's CURRENT-OF-CURSOR clause is not a SELECT FOR UPDATE.

/citruz-utv/public_html/asp/tabort.asp, line 14

Det är troligen bara att slarv fel men ett jobbigt sådan för jag kan inte hitta det!

Medlem sedan juni 200032 967 inlägg
#2

vet inte, men om du ska åka och tanka bilen, åker du då till shell som ligger två mil bort, fast ok har en mack precis bredvid ditt hus, bara för att du har shell-kort?

använd update och delete-satser istället för de förbaskade ado-metoderna.

varför:

Set RecSet = Server.CreateObject("ADODB.RecordSet")
Radera = "SELECT * FROM nyheter WHERE ID = " & Request.QueryString("DelID") & " "

RecSet.Open Radera, Connect, adOpenStatic, adLockOptimistic

RecSet.Delete

varför inte:

Radera = "DELETE FROM nyheter WHERE ID = " & Request.QueryString("DelID")

Connect.execute (Radera)

varför använda en massa skräp som inte behövs?

Medlem sedan dec. 19995 874 inlägg
#3

woooo

257 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)