Sitter med en enkel sql sats men får bara att det är syntax fel..
Jag har skrivit ut sql satsen på sidan för att titta på den och den ser ut så här..
UPDATE news SET subject='Full fart', text='hej hej ' WHERE (ID =330)
använder jag en db manager så fungerar ju ovanstående sql uttryck att exekvera men inte på sidan med asp koden, då är det istället syntax fel..
Då är det nog ett problem med som hör hemma i ASP. Har du skrivit ut frågan efter det att du har substituerat in värdet för ID? Ett vanligt fel är att den variabeln inte innehåller något värde.
jag exekverar sql satsen precis som den står ovan, alltså jag skriver ut den utan att hämta variabler eller lilnande.
Alltså: con.execute("UPDATE news SET subject='Full fart', text='hej hej ' WHERE (ID=330) ")
trodde att det kanske var namnen på kolumnerna som spökade så jag satte klamrar runt dem.
con.execute("UPDATE news SET [subject]='Full fart', [text]='hej hej ' WHERE (ID=330)")
Med hakparanteser:
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Drivrutin för ODBC Microsoft Access] Operationen måste använda en fråga som kan uppdateras.
/hullert/secret/admin.asp, line 496
Utan hakparanteser:
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel i UPDATE-uttryck.
/hullert/secret/admin.asp, line 496
Tar jag bort paranteserna så gör det ingen skillnad..
Koden
Set con = Server.CreateObject("ADODB.Connection")
x = Server.MapPath("base.mdb")
Con.open "driver={Microsoft Access Driver (*.mdb)};dbq= " & x & " "
SQL = "UPDATE news SET subject='hej', text='test' WHERE id=329"
response.Write sql
set db = con.execute(sql)
db.close