04. juni 2008 - 15:31Der er
16 kommentarer og 1 løsning
Insert into - fejl i dato
Hej,
Får følgende fejlmeddelelse: Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.
/kpin/index.asp, line 122
----
Jeg ved at det er noget med datoformat. Jeg henter dato fra en form: <input type="text" name="Date" size="12" value="<%=(DateChoice)%>" disabled>
...og sætter den in med: SQL1 = "INSERT INTO tblKPI (kpiDate) VALUES(" & Request.Form("Date") & ")" ...har prøvet SQL1 = "INSERT INTO tblKPI (kpiDate) VALUES('" & Request.Form("Date") & "')" ...men ligemeget hjælper det.
Jeg tror at den forsøger at sætte det ind som en tekststring i DB men jeg ved ikke hvordan jeg fikser det.
Bruger jeg istedet: SQL1 = "INSERT INTO tblKPI (kpiDate) VALUES(" & (Date) & ")" ...så virker det fint men det er ikke dagens dato jeg skal bruge.
Datoer skal ind i access som #mm-dd-yyyy#. Bemærk at dag og måned er byttet om. Derfor skal du have formateret dine datoer til SQL formatet. Det gøres med en funktion:
function DBDate(fDate) DBDate = "#"& month(fDate) &"-"& day(fDate) &"-"& year(fDate) &"#" end function
w13 - det virkser desværre ikke. Den kommer stadig med den samme fejl. mini-me - det virker heller ikke. fennec - umiddelbart ser det ud til at skrive noget til db men det bliver med værdi "00:00:00"
Så tror jeg det er fordi du ikke modtager nogen værdi i Request.Form("Date")
Prøv lige at udskrive den samlede SQL inden du affyre den: SQL1 = "INSERT INTO tblKPI (kpiDate) VALUES(" & DBDate(Request.Form("Date")) & ")" response.write "SQL: "& SQL1 response.end
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.