Avatar billede gigaload Nybegynder
24. januar 2003 - 17:41 Der er 5 kommentarer og
1 løsning

syntaksfejl i UPDATE sætning

Jeg får følgende fejl:

Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i datoen i forespørgselsudtrykket "#009900".
/rene/administration/salg.asp, line 33

Her er koden:
<%

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.MapPath("../data.mdb")
SQLstmt = "SELECT * FROM Salg ORDER BY VareBeskrivelse desc;"

Set rs = conn.Execute(SQLstmt)

update = request("update")

If update = 1 Then

    Dim status, value, farver
   
    value = Request.Form("select")

    If value = "lager" Then
    status = "Lager"
    farver = "#009900"
    End If

    If value = "rest" Then
    status = "Rest"
    farver = "#FFCC00"
    End If
   
    If value = "udgået" Then
    status = "Udgået"
    farver = "#CC3300"
    End If

    SQLupdate = "UPDATE Salg SET Status='" & status & "', Farve =" & farver
    Conn.Execute(SQLupdate)
    Response.Redirect(salg.asp)
End If
%>


dette er linie 33:
    Conn.Execute(SQLupdate)
Avatar billede eagleeye Praktikant
24. januar 2003 - 17:45 #1
Det er mest ud som om Farve er en tekst kolonne og ikke som angiver i SQL-sætningen som tal kolonne:


SQLupdate = "UPDATE Salg SET Status='" & status & "', Farve = '" & farver & "'"
Avatar billede eagleeye Praktikant
24. januar 2003 - 17:46 #2
Har du kun en række i databasen eller skal du også havde en WHERE på update da den ellers vil opdater alle rækker med den nye data.
Avatar billede gigaload Nybegynder
24. januar 2003 - 17:48 #3
så melder den denne fejl:

Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access-driver] Handlingen skal bruge en opdaterbar forespørgsel.
/rene/administration/salg.asp, line 33
Avatar billede gigaload Nybegynder
24. januar 2003 - 17:50 #4
der er flere rækker, med den sætter jo update knap ud for hver form...
Avatar billede eagleeye Praktikant
24. januar 2003 - 17:54 #5
Ja men databasen kan jo ikke se hvilken knap du har trykke på :)
Så du skal overføre ID for den vare du ændre status på... Du kan gemme ID'et i et hidden felt så det ikke kan se på formen:

<input type="hidden" name="id" value="<%=rs("id")%>">

Og opdater databasen sådan her:

SQLupdate = "UPDATE Salg SET Status='" & status & "', Farve = '" & farver & "' WHERE id = " & Request.form("id")
Avatar billede eagleeye Praktikant
24. januar 2003 - 17:55 #6
Fejlen betyder databsen elller mere sansynligt folderen databasen ligger i er skrivebeskyttet for Internet Guest Account:

http://activedeveloper.dk/aspdigital/kapitel2/updateable_query.asp
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