On Sun, 3 Feb 2002 14:52:43 +0100, "Kim B. Lykkegaard"
<kim.lykkegaard@kramsen.dk> wrote:
>strSQL = "Insert into t_data (Startdato,priskode) values ('18-07/02','2')"
<snip>
>Og jeg har prøvet med f.eks. denne streng som ikke dur.
>
>strSQL = "Insert into t_data ("Startdato,priskode") values("' &
>Request.Form("Startdato") & '", "' & Request.Form("priskode")& '")"
Den mest oplagte årsag er, at du har enkelt-anførselstegn på den
forkerte side af dobbelt-anførselstegn. Byt de to, da " afbryder
tekststrengen, og ' er en del af tekststrengen.
Desuden skal du heller ikke have anførselstegn om feltnavne - hvis du
skal have noget omkring, skal det være firkant-paranteser [ ].
Dernæst: Hvis du prøver at skifte de to ud én ad gangen, vil du
sikkert finde ud af, at det er datoen, det går galt med - den kan være
lidt triggy.
Jeg plejer at bruge en funktion, som Lauritz Jensen engang postede:
' -- DateToSql start --
Function DateToSql(Value)
DateToSql = "DateSerial(" & Year(Value) & ", " & _
Month(Value) & ", " & _
Day(Value) & ") + " & _
"TimeSerial(" & Hour(Value) & ", " & _
Minute(Value) & ", " & _
Second(Value) & ")"
End Function
' -- DateToSql slut --
- eller se på Google:
<URL:
http://groups.google.com/groups?hl=da&selm=1879jt0nj8ng3066tpe91bs1frm82c7u2p%404ax.com>
Desuden:
Det er sjældent en god idé at putte Request.* direkte ind i SQL'en.
Hvis fx datoen ikke er en gyldig dato, så vil det være en fordel at få
stoppet afviklingen og få det rettet i stedet for at køre databasekald
osv.
Fx noget i retning af:
datStartDato = Request.Form("Startdato")
If IsDate(datStartDato) Then
datStartDato = CDate(datStartDato)
Else
' Der er en fejl - Kør en fejlrutine
End If
- og ditto med priskode:
strPriskode = Request.Form("priskode")
Hvis det går godt, kan du så køre Lauritz's funktion således:
strSQL = "Insert into t_data (Startdato, priskode) values(" &
DateToSql(datStartDato) & ", '" & strPriskode & "');"
>Det er sikkert nemt hvis man lige ved det!
>
>Spørgsmål 2:
>hvis en af "value" felterne oven for havde været data til et "yes/no" felt i
>en tabel hvad skal man så uploade.
Du kan bruge True/False eller -1/0 (uden anførselstegn) - og hvis du
vil være sikker på, at den har en boolsk (logisk) værdi, så kan du
bruge CBool(value)
Good luck,
Jørn