Datofelter i SQL-streng
Jeg har en masse datofelter i en formular som skal smides ned i en accessdb. jeg har set et andet eks. her på eksperten som bruger nedenstående måde: Det finder ud af hvor mange af datofelterne som er udfyldt og skal lægges i basen. Derefter opbygger den en SQL-streng hvor den kun medtager de datofelter hvor der reelt set var indhold (det er ikke et krav at udfylde datofelterne i formularen). Jeg får en fejl når jeg kører det (se nederst), men jeg har stirret mig blind på koden, men jeg tror det er nogle ' der står forkert i SQL-strengen. Nogen der kan se hvad der går galtkolDato =""
dataDato =""
fodselsdat = Request.Form("fodselsdato")
stillingdato = Request.Form("stilling1startdato")
if fodselsdat <>"" then
fodselsdatous = split(fodselsdat,"-")
fodselsdat = fodselsdatous(2) & "-" & fodselsdatous(1) & "-" & fodselsdatous(0)
kolDato = kolDato & ", Fodselsdato"
dataDato = dataDato & ", #" & fodselsdat & "#"
end if
if stillingdato <>"" then
stillingdatous = split(stillingdato,"-")
stillingdato = stillingdatous(2) & "-" & stillingdatous(1) & "-" & stillingdatous(0)
kolDato = kolDato & ", Stilling_startdato"
dataDato = dataDato & ", #" & stillingdato & "#"
end if
connectionString = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("Stamdata.mdb")
Set forbindelse = Server.CreateObject("ADODB.Connection")
Set recordSet = Server.CreateObject("ADODB.recordSet")
forbindelse.Open connectionString, CONN_USER, CONN_PASS
strSQL = "INSERT INTO Medarbejder (Medarbejdernr,Medarbejdernavn,Stillingsnr" & kolDato & ") VALUES ('" & request.Form("medarbejdernr") & "', '" & request.Form("medarbejdernavn") & "', " & request.Form("stilling1") & "'" & dataDato & ")"
forbindelse.Execute(strSQL)
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in string in query expression '2', #2003-01-17#, #1978-05-08#)'.
/stamdata/medarbejder_godkend.asp, line 38
