Avatar billede jmc Nybegynder
21. januar 2003 - 11:22 Der er 8 kommentarer og
1 løsning

en GRIM fejl [hvorfor?]

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'Month(dato) = AND Year(dato) = 2003'.

SQL:

<%
Dim rs
Dim rs_numRows

Set rs = Server.CreateObject("ADODB.Recordset")
rs.ActiveConnection = MM_doc_STRING
rs.Source = "SELECT * FROM kontakt WHERE Month(dato) = " & Request("dato") & " AND Year(dato) = " + Replace(rs__y, "'", "''") + "  ORDER BY dato, navn ASC"
rs.CursorType = 0
rs.CursorLocation = 2
rs.LockType = 1
rs.Open()

rs_numRows = 0
%>
Avatar billede hossein Nybegynder
21. januar 2003 - 11:24 #1
hvad er month er lig med: 'Month(dato) = ??? AND Year(dato) = 2003'
Avatar billede hyperactive Nybegynder
21. januar 2003 - 11:25 #2
Du kan ikke bruge + Du skal bruge &

rs.Source = "SELECT * FROM kontakt WHERE Month(dato) = " & Request("dato") & " AND Year(dato) = " & Replace(rs__y, "'", "''") & "  ORDER BY dato, navn ASC"
Avatar billede jmc Nybegynder
21. januar 2003 - 11:34 #3
Det der med + har jeg hørt før, men i Dreamweaver ultradev går det fint. Jeg har prøvet rettelsen, men den producere den samme fejl.

jeg udskriver en række felter efter dato og skal selecte på denne måde:

<table border="0" class="tabelny">
    <tr>
      <%
    if request("dato")<> "alle" then
        if request("dato")<> "" then dato = Cint(request("dato")) else dato = Month(Now())
    else
        dato = 0
    end if
    for i = 1 to 12
    If Cint(dato) = i then
    %>
      <td><b><%=MonthName(i)%></b>&nbsp;&nbsp;</td>
      <%
    else
    %>
      <td><a href="doc.asp?dato=<%=i%>">[ <%=Left(MonthName(i), 3)%> ]</a>&nbsp;&nbsp;</td>
      <%
    end if
    next
   
    if dato = 0 then%>
      <td><b> Alle </b></td>
    <%else%>
      <td><a href="doc.asp?dato=alle">[ Alle ]</a></td>
    <%end if%>
    </tr>
  </table>

Men den fejler i linie 21 som er rs.Open()
Avatar billede hossein Nybegynder
21. januar 2003 - 11:39 #4
Nu får du så en anden fejl? det er ikke den 1.?
Avatar billede jmc Nybegynder
21. januar 2003 - 11:58 #5
fejlen er:

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

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'Month(dato) = AND Year(dato) = 2003'.

/doc.asp, line 21
Avatar billede Jman Praktikant
21. januar 2003 - 12:00 #6
prøv med:
rs.Source = "SELECT * FROM kontakt WHERE Month(dato) = '" & Request("dato") & "' AND Year(dato) = " + Replace(rs__y, "'", "''") + "  ORDER BY dato, navn ASC"
Avatar billede hossein Nybegynder
21. januar 2003 - 12:06 #7
det er mssql og ikke access? er det rigtig?
Avatar billede midas_dk Nybegynder
21. januar 2003 - 12:12 #8
Har du prøvet at indsætte dummy data i SQL strengen?

Det er jo tydeligt at du ikke får noget med i dit Request objekt...
Avatar billede jmc Nybegynder
21. januar 2003 - 12:18 #9
det lader til at virke, takker
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