Avatar billede thmi99 Nybegynder
27. juli 2003 - 12:25 Der er 6 kommentarer og
1 løsning

Hvad er fejlen?

Er der nogen som kan se hvad fejlen er:
Her er fejlen:

Microsoft OLE DB Provider for ODBC Drivers error '80040e09'

[TCX][MyODBC]You have an error in your SQL syntax near 'sCounter = '346' dvdcounter = '19' tilladStemme = '2' link = 'http://www.dvdmekk' at line 1

/admin.asp, line 291

-----------------------------------------

<%

Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open tempConn

'createdataobject "mySQL"

if len(request.form("deleterecord")) > 0 then
    myConn.Execute ("DELETE FROM film WHERE ID = " & clng(request.form("deleterecord")) & ";")
else
    if len(request.form("program")) > 0 then
        if request.form("program") = "save" then
            strSQL = "UPDATE film SET Year = '" & request.form("sYear") & "', "
            strSQL = strSQL & "Titel = '" & replace(request.form("sTitle"),"'","''") & "', "
            strSQL = strSQL & "Copyright = '" & replace(request.form("sCopyright"),"'","''") & "', "
            strSQL = strSQL & "Tekst = '" & replace(request.form("sText"),"'","''") & "', "
            strSQL = strSQL & "Billede = '" & replace(request.form("sImage"),"'","''") & "' "
            strSQL = strSQL & "sCounter = '" & replace(request.form("ssCounter"),"'","''") & "' "
            strSQL = strSQL & "dvdcounter = '" & replace(request.form("sdvdcounter"),"'","''") & "' "
            strSQL = strSQL & "tilladStemme = '" & replace(request.form("stilladStemme"),"'","''") & "' "
            strSQL = strSQL & "link = '" & replace(request.form("slink"),"'","''") & "' "
            strSQL = strSQL & "WHERE ID = " & clng(request.form("ID")) & ";"
            myConn.Execute(strSQL)

        elseif request.form("program") = "create" then
            strSQL = "INSERT INTO film (Year, Titel, Copyright, Tekst, Billede) VALUES ("
            strSQL = strSQL & "'" & request.form("sYear") & "', "
            strSQL = strSQL & "'" & replace(request.form("sTitle"),"'","''") & "', "
            strSQL = strSQL & "'" & replace(request.form("sCopyright"),"'","''") & "', "
            strSQL = strSQL & "'" & replace(request.form("sText"),"'","''") & "', "
            strSQL = strSQL & "'" & replace(request.form("ssCounter"),"'","''") & "', "
            strSQL = strSQL & "'" & replace(request.form("sdvdcounter"),"'","''") & "', "
            strSQL = strSQL & "'" & replace(request.form("stilladStemme"),"'","''") & "', "
            strSQL = strSQL & "'" & replace(request.form("slink"),"'","''") & "', "
            strSQL = strSQL & "'" & replace(request.form("sImage"),"'","''") & "');"
            myConn.Execute(strSQL)

        elseif request.form("program") = "new" then
            enew = true
        end if
    else
        eNew = false
        if len(request.querystring("ID")) > 0 then
            ID = clng(request.querystring("ID"))
            strSQL = "SELECT * FROM film WHERE ID = " & ID & ";"
            set rs = myConn.Execute (strSQL)
            if (rs.eof or rs.bof) then
                response.write "ERROR!"
                response.end
            else
                sYear = rs("Year")
                sTitle = rs("Titel")
                sText = rs("Tekst")
                sImage = rs("Billede")
                sCopyright = rs("Copyright")
                ssCounter = rs("sCounter")
                sdvdcounter = rs("dvdcounter")
                stilladStemme = rs("tilladStemme")
                slink = rs("link")
                eedit = true
            end if
        else
            eEdit = false
        end if
    end if
end if
%>
Avatar billede erikjacobsen Ekspert
27. juli 2003 - 12:29 #1
strSQL = strSQL & "Billede = '" & replace(request.form("sImage"),"'","''") & "', "
Avatar billede erikjacobsen Ekspert
27. juli 2003 - 12:30 #2
Og husk også kommaerne i de næste par linier
Avatar billede thmi99 Nybegynder
27. juli 2003 - 12:37 #3
Nu kom denne fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80040e09'

[TCX][MyODBC]You have an error in your SQL syntax near 'WHERE ID = 5' at line 1

/admin.asp, line 291
Avatar billede thmi99 Nybegynder
27. juli 2003 - 13:16 #4
Jeg fandt selv ud af den sidste fejl
Avatar billede erikjacobsen Ekspert
27. juli 2003 - 13:17 #5
det var nok et komma for meget ;)

Det er en god ide at skrive sql-sætningen ud som test, når det går
galt. Så plejer det at være nemmere.
Avatar billede thmi99 Nybegynder
27. juli 2003 - 13:21 #6
Nej jeg byttede om på disse linjer:
strSQL = strSQL & "sCounter = '" & replace(request.form("ssCounter"),"'","''") & "', "
            strSQL = strSQL & "dvdcounter = '" & replace(request.form("sdvdcounter"),"'","''") & "', "
            strSQL = strSQL & "tilladStemme = '" & replace(request.form("stilladStemme"),"'","''") & "', "
            strSQL = strSQL & "link = '" & replace(request.form("slink"),"'","''") & "', "

Jeg satte dem op foran denne:
strSQL = strSQL & "Billede = '" & replace(request.form("sImage"),"'","''") & "' "


Hvad mener du med at""skrive sql-sætningen ud som test"?
Avatar billede erikjacobsen Ekspert
27. juli 2003 - 13:28 #7
Hvis du har fejl. så

  response.write strSQL
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