Avatar billede annettef Nybegynder
09. september 2004 - 15:34 Der er 9 kommentarer og
1 løsning

Forstår ikke hvad der er galt i denne linie Syntax error (missing

Hej

Jeg sidder med en asp fil, hvor der hele tiden kommer en meget træls fejl. Nu har jeg siddet med filen den sidste times tid, og kan bare ikke finde ud af få rettet fejlen - så nu håber jeg der er nogen der kan hjælpe mig.

Fejlen er denne:
Microsoft JET Database Engine error '80040e14'

Syntax error (missing operator) in query expression 'orderID =4AND vareid ='.

/datronic/frameset/tilfoj.asp, line 44

--------------
Min kode er her:
<%@ Language=VBScript %>
<!--#include file="dbconn.inc"--><!-- Database forbindelse oprettes via ekstern fil-->
<!-- #include file="db.asp" -->
<%   
    Sub CreateNewOrder()
        Application.lock
        if Application("orderID") = "" then
            Application("orderID") = 1
        end if
     
       
      intOrderID = Application("orderID")
      Session("orderID") = intOrderID
      Conn.Execute("INSERT INTO ordre " _
        & " (orderID, status) values " _
        & " ("&intOrderID&", 'OPEN')")
       
        Application("orderID") = Application("orderID") + 1
      Application.Unlock
    End Sub

    Sub AddToOrder(nOrderID, nVareId, nQuant)
        sqlText = "INSERT INTO ordrelinie " _
            & " (orderID, vareid, antal) values " _
            & " ("&nOrderID&", "&nVareId&", "&nQuant&")"
        Conn.Execute(sqlText)

    End Sub
 
   
    'Main program
    intVareId = Request.form("intVareId")
    intQuant = Request.form("intQuant")

    set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open ConString

    intOrderID = cstr(Session("orderID"))
    if intOrderID = "" then
      CreateNewOrder
    end if

    sqlText = "SELECT * FROM ordrelinie WHERE orderID =" & intOrderID & "AND vareid =" & intVareID
    set rsOrder = Conn.Execute(sqlText)
   
    if rsOrder.EOF then 'meddelelse som popper op når brugerne lægger en vare i inskøbsvognen
        txtInfo = "Varen er tilføjet til din indkøbsvogn." 
        AddToOrder intOrderID, intVareId, intQuant
    else
        txtInfo = "Varen er allerede i din indkøbsvogn."
    end if
   

%>

<!-- #include file="adovbs.inc" -->
<html>
<head>
<style type="text/css">
<!--
body {
    margin-top: 0px;
    margin-left: 4px;
}
-->
</style>
<meta name="GENERATOR" Content="Microsoft FrontPage 4.0">
<title>tilf&oslash;j varer til kurv</title>
<Link Rel="stylesheet" href="datronic.css" Type="text/css" > <!-- link til ekstern style sheet -->
<style type="text/css">
<!--
.style2 {
    font-size: 10;
    font-weight: bold;
}
-->
</style>
</head>
<body >
<table width="490" border="0" cellspacing="0">
  <tr>
    <td colspan="2" bgcolor="545db9">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="2">
    <%= txtInfo %>
    &nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>
    <a href="vis_varer.asp?intVareId=<%= intVareId %>" target="tekst"><img src="grafik/tilbage_knap.gif" alt="Tilbage" border="0" name="tilbage" ></a>&nbsp;
    </td>
    <td>
    <a href="vis_varer.asp?intVareId=<%= intVareId %>" target="tekst"><img src="grafik/vis_vogn_kasse.gif" alt="Vid vogn/Gå til kassen" border="0" name="visvogn" ></a>&nbsp;
    </td>
  </tr>
  <tr>
    <td colspan="2">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="2"><div align="center"><a href="forside_butik.htm" target="tekst" class="style2">Forts&aelig;t med at handle - klik her... </a> </div></td>
  </tr>
</table>


<%
' Luk forbindelse fra dbconn.inc
Conn.Close
Set Conn = Nothing
%>

</body>
</html>
-------------
Linie 44 er denne:
42
43    sqlText = "SELECT * FROM ordrelinie WHERE orderID =" &  intOrderID & "AND vareid =" & intVareID
44    set rsOrder = Conn.Execute(sqlText)
45

Håber der er nogen der kan hjælpe mig...

/Annette
Avatar billede fennec Nybegynder
09. september 2004 - 15:48 #1
sqlText = "SELECT * FROM ordrelinie WHERE orderID =" & intOrderID & "AND vareid =" & intVareID

Skal være:
sqlText = "SELECT * FROM ordrelinie WHERE orderID =" & intOrderID & " AND vareid =" & intVareID

(der manglede et mellemrum)
Avatar billede annettef Nybegynder
09. september 2004 - 15:52 #2
Nu får jeg denne fejl i stedet for:
Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

/datronic/frameset/tilfoj.asp, line 26
--------
Linie 26 er:
22  Sub AddToOrder(nOrderID, nVareId, nAntal)
23          sqlText = "INSERT INTO ordrelinie " _
24            & " (orderID, vareid, antal) values " _
25              & " ("&nOrderID&", "&nVareId&", "&nAntal&")"
26          Conn.Execute(sqlText)
27
28    End Sub

/Annette
Avatar billede annettef Nybegynder
09. september 2004 - 15:54 #3
Den første fejl jeg fik, var fordi jeg havde lavet en tastefejl i den forrige asp side, så derfor kunne der på side to af gode grunde ikke findes det rigtige tal...

/Annette
Avatar billede fennec Nybegynder
09. september 2004 - 15:59 #4
Prøv evt at udskrive sqlText til skærmen inden du bruger den i Sub'en. Det gør det nemmere at finde fejlen.

De tre værdier er alle tal uden komma???
Avatar billede annettef Nybegynder
09. september 2004 - 16:09 #5
Hvordan udskriver jeg sqlText inden sub'en????

De tre værdier skulle da meget gerne være uden kommaer - det går jeg da ud fra...

/Annette
Avatar billede fennec Nybegynder
09. september 2004 - 16:14 #6
ok, det kunne misforståes :o)

Lav sub'en sådan:

Sub AddToOrder(nOrderID, nVareId, nQuant)
  sqlText = "INSERT INTO ordrelinie " _
  & " (orderID, vareid, antal) values " _
  & " ("&nOrderID&", "&nVareId&", "&nQuant&")"
  response.wriet "SQL: "& sqlText
  Conn.Execute(sqlText)
End Sub

Så skulle du gerne få SQL-sætningen ud på skærmen. Smid den herind så jeg kan se den.
Avatar billede annettef Nybegynder
09. september 2004 - 16:16 #7
SQL: INSERT INTO ordrelinie (orderID, vareid, antal) values (5, 1, )
Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

/datronic/frameset/tilfoj.asp, line 27

Så kan jeg gætte mig til at det er mit antal det er galt med - eller hvad???
Avatar billede fennec Nybegynder
09. september 2004 - 16:17 #8
jeps....
Avatar billede annettef Nybegynder
09. september 2004 - 16:20 #9
Ups - har fundet fejlen, det var endnu en skrivefejl

Nå, men tak for hjælpen, det var super :o)

/Annette
Avatar billede fennec Nybegynder
09. september 2004 - 16:21 #10
no prob...
.o) <-- One Eyed Jack
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