Avatar billede Slettet bruger
09. januar 2002 - 07:47 Der er 6 kommentarer og
1 løsning

Syntax error in UPDATE statement

<%
    set gobjconn = Server.CreateObject(\"ADODB.Connection\")
    gobjconn.Open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"db/news.mdb\")

            gsSQL = \"UPDATE news SET \" & _
                        \"Forfatter = \" & request.form(\"forfatter\") & \", \" & _
                        \"body = \" & request.form(\"body\") & \" \" & _
                        \" WHERE overskrift = \" & request.form(\"overskrift\")                       
            gobjConn.Execute(gsSQL)
%>

Jeg har koden foroven. Den opdaterer noget i en access db...

Der kommer følgende fejl:

Microsoft OLE DB Provider for ODBC Drivers error \'80040e14\'

[Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.

/gemedit.asp, line 9


Og linje 9 er:

            gobjConn.Execute(gsSQL)
Avatar billede Slettet bruger
09. januar 2002 - 07:47 #1
hvad gør jeg?
Avatar billede invisibleman Nybegynder
09. januar 2002 - 07:49 #2
Du mangler nogle \' ..

<%
    Set gobjconn = Server.CreateObject(\"ADODB.Connection\")
    gobjconn.Open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"db/news.mdb\")

    gsSQL = \"UPDATE news SET forfatter = \'\" & Replace(Request.Form(\"forfatter\"), \"\'\", \"\'\'\") & \", body = \'\" & Replace(Request.Form(\"body\"), \"\'\", \"\'\'\") & \" WHERE overskrift = \'\" & Request.Form(\"overskrift\"), \"\'\", \"\'\'\") & \"\'\"
    gobjConn.Execute(gsSQL)
%>
Avatar billede invisibleman Nybegynder
09. januar 2002 - 07:50 #3
Jeg går ud fra at alle felter er tekstfeter ?
Avatar billede Slettet bruger
09. januar 2002 - 14:42 #4
notatfelter
Avatar billede Slettet bruger
09. januar 2002 - 14:44 #5
Microsoft VBScript compilation error \'800a0401\'

Expected end of statement

/gemedit.asp, line 5

gsSQL = \"UPDATE news SET forfatter = \'\" & Replace(Request.Form(\"forfatter\"), \"\'\", \"\'\'\") & \", body = \'\" & Replace(Request.Form(\"body\"), \"\'\", \"\'\'\") & \" WHERE overskrift = \'\" & Request.Form(\"overskrift\"), \"\'\", \"\'\'\") & \"\'\"
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------^
Avatar billede excession Nybegynder
10. januar 2002 - 00:25 #6
koden bliver meget nemmere at læse og overskue hvis du laver dine reuquests om til variabler

forfatter = Replace(Request.Form(\"forfatter\"), \"\'\", \"\'\'\")

body = \'\" & Replace(Request.Form(\"body\"), \"\'\", \"\'\'\")

\"UPDATE news SET forfatter = \'\" & forfatter & \"\', body = \'\" & body & \"\', ....osv osv

eller sådan her:


strSQL = \"UPDATE news SET (forfatter, body) VALUES (\"
strSQL = strSQL & \"\'\" & forfatter &\"\', \"
strSQL = strSQL & \"\'\" & body & \"\' \"
strSQL = strSQL & \");\"
Avatar billede Slettet bruger
15. januar 2002 - 18:53 #7
Jeg har fundet ud af det!
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