webForumDet fria alternativet
Logga in / Bli medlem

Insert Datum i Access

ASP

6 svar · 276 visningar · startad av Alkvettern

Medlem sedan okt. 2002108 inlägg
Trådstart#1

Hej på er.
Har försök använda mig av sökfunktionen i wFo men hittar inte riktigt vad jag söker.

Jag har en gästbok där jag vill visa datumet som inlägget skrevs.

Får ingen rätsida på det.

Koden ser ut som följer:

Dim oConn 
Dim Query 
Dim oRs 
Dim datum

Response.write("<font size=2 face=""arial"">" & _
"Ett exempel på databaskoppling<br>")

Set oConn = Server.CreateObject("ADODB.Connection") 
oConn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\alkvetternsik\db\gb.mdb")) 
strSQL = "INSERT INTO tbl_gb(namn,ort,email,rubrik,inlagg,datum) VALUES ('" & Request.Form("namn") & "', '" & Request.Form("ort") & "', '" & Request.Form("email") & "', '" & Request.Form("rubrik") & "', '" & Request.Form("inlagg") & "', '" & now() & "'"

Set oRS = oConn.Execute(strSQL)

Men får bara felmeddelande:

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

[Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.

/alkvetternsik/insertinlagg.asp, line 26

Där "line 26" är Execute

Vad gör jag för fel?

Medlem sedan dec. 19998 577 inlägg
#2

Testa att skriva ut strSQL och se om du hittar något fel.

Är kolumnen datum av datatypen så skall värdet omges av # och inte ', i Access.

Medlem sedan okt. 2002108 inlägg
#3

Hur skriver jag ut strSQL:en ?

Medlem sedan dec. 19996 522 inlägg
#4

På raden innan "Set oRS = oConn.Execute(strSQL)"

skriver du

Response.Write(strSQL)
Response.End

Medlem sedan okt. 2002108 inlägg
#5

Tack!

Hittade felet.

Hade glömt en )

Medlem sedan juli 20003 825 inlägg
#6

Nej!

Hallå där, fuskepelle! Du skriver...

... "Request.Form("inlagg") & "', '" & now() & "'""

Men det ska vara:

... Request.Form("inlagg") & "', #" & now() & "# "

***
Som det är nu har du lagt in datumet i databasen som en textsträng och inte som ett datum.

Gör inte det, det är ärligt talat jättedumt.

Du måste byta datatyp på fältet "datum" i din databas.

***
Kom-i-håg för Access:
1. Enkelfjumpar vid text.
2. Brädgårdar vid datum
3. inget vid siffror och true/false.

Medlem sedan apr. 2001246 inlägg
#7

I Access finns det väl även en inbyggd funktion som skriver ut datumet på en rad i en kolumn av typen "Datum och tid" eller va det nu heter.

Skriv bara Nu() som standardvärde i "Design-mode" på den kolumn du vill ha aktuellt datum i.

393 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
125 ms — deklarationer (db)
130 ms — hämta statistik (db)
130 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)