webForumDet fria alternativet

Insert Datum i Access

6 svar · 276 visningar · startad av Alkvettern

AlkvetternMedlem sedan okt. 2002108 inlägg
#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?

VideMedlem sedan dec. 19996 094 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.

AlkvetternMedlem sedan okt. 2002108 inlägg
#3

Hur skriver jag ut strSQL:en ?

erkaMedlem sedan dec. 19994 597 inlägg
#4

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

skriver du

Response.Write(strSQL)
Response.End

AlkvetternMedlem sedan okt. 2002108 inlägg
#5

Tack!

Hittade felet.

Hade glömt en )

EclipseMedlem sedan juli 20003 741 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.

pirajanMedlem sedan apr. 2001273 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.

Genererad på 369 ms · cache AV · v20260730165559-full.f96bc7eb