31. maj 1999 - 08:44Der er
4 kommentarer og 1 løsning
Hvad er fejlen ??
Hejsa Dette er fra en kalender, men der er noget galt. Jeg får denne fejl : [Microsoft][ODBC Microsoft Access 97 Driver] Syntax error in date in query expression ''dte = #12-maj-1999#''.
diary/view_day.asp, line 117
Hva er fejlen her ?
<%
set my_Conn= Server.CreateObject("ADODB.Connection") my_Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=d:diary\diary.mdb"
StrSql= "Select * from diary where dte = #" & Request("view_Date") & "#"
Jeg tror det er på grund af dato-formatet. Access kan ikke bruge en tekst for måneden, så du bliver nød til enten at indtaste et tal for måneden eller 'oversætte' fra månedsnavn til månedsnummer inden du udfører din SQL.
Først skal du selvfølgelig finde ud af om det datoformat du smider ind i din tabel er det samme som det du spørger efter. Dette gør du vha. response.write.
Så skal du lave en variabel ud af din request.form forspørgsel.
mdate = trim(Request("view_Date"))
Dernæst skal du konverterer mdate til en string. Dette gøres vha. denne kommando der samtidig laver en variabel ud af din dato:
redidate = cstr(mdate)
Så er du klar til at hente fra databasen:
StrSql= "Select * from diary where dte = " & redidate
Håber det hjælper. Jeg har ikke prøvet det af - det er dit eget job, men jeg er ret sikker på at det dækker.
MVH
Chris Østergaard WebTime Internet chris@webtime.dk
Du skal have '' rundt om dato værdier når du indsætter dem i en database. Endvidere er SQL fortolkeren kun på engelsk, hvorfor du kun kan indsætte det engelske ord for måned, og for at gøre det besværligst muligt sætter amerikanerne måned før dag, og det bliver vi danskere altså nødt til at rette os efter. SUM: dte = 'mm-dd-yy' vil virke
Synes godt om
Ny brugerNybegynder
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.