Det jeg tror der sker et at den bytter om på datoen og de to sidste cifre i
årstallet.
Fx. dagen idag 16-04-2001 bliver til 01-04-2016 og det selv om jeg bruger
værdien Now i min SQL indsætnings linie.
Hvor er det det går galt ?
/Magnus
arn...@emai.dk
Du laver sikkert en sql, som ser ca. sådan ud:
sql = "INSERT INTO forum (f_dato, f_tekst) VALUES ('" & Now & _
"', '" & Replace(f_tekst, "'", "''") & "')"
Men dette resulterer jo måske i en sql indeholder teksten:
INSERT INTO forum (f_dato, f_tekst) VALUES ('16/4/01', 'bla')
Og når databasen prøver at læse det, går det galt.
Det du skal gøre er at huske på, at sql-strengen er en tekst og
konstuerer din sql'streng sådan:
sql = "INSERT INTO forum (f_dato, f_tekst) VALUES (Now, '" & _
Replace(f_tekst, "'", "''") & "')"
Eller hvis du vil have en bestemt dato:
sql = "INSERT INTO forum (f_dato, f_tekst) VALUES (" & _
DateToSql(f_date) & ", '" & _
Replace(f_tekst, "'", "''") & "')"
Function DateToSql(Value)
DateToSql = "DateSerial(" & Year(Value) & ", " & _
Month(Value) & ", " & _
Day(Value) & ") + " & _
"TimeSerial(" & Hour(Value) & ", " & _
Minute(Value) & ", " & _
Second(Value) & ")"
End Function
--
Lauritz
> Det du skal gøre er at huske på, at sql-strengen er en tekst og
> konstuerer din sql'streng sådan:
> sql = "INSERT INTO forum (f_dato, f_tekst) VALUES (Now, '" & _
> Replace(f_tekst, "'", "''") & "')"
> Eller hvis du vil have en bestemt dato:
> sql = "INSERT INTO forum (f_dato, f_tekst) VALUES (" & _
> DateToSql(f_date) & ", '" & _
> Replace(f_tekst, "'", "''") & "')"
>
> Function DateToSql(Value)
> DateToSql = "DateSerial(" & Year(Value) & ", " & _
> Month(Value) & ", " & _
> Day(Value) & ") + " & _
> "TimeSerial(" & Hour(Value) & ", " & _
> Minute(Value) & ", " & _
> Second(Value) & ")"
> End Function
Er der forskel på hvordan SQL bliver fortolket ?? Jeg har også haft det
beskrevne problem på en webserver med Access97, hvorimod der ikke var noget
galt med Access2000 ?
/Martin
--
Martin Bentzen
Datamatiker.stud.
www.bentzen.dk