Zurbrügg: HILFE!! Datum eintrag in Accessdatenbank geht nicht.

Hallo Zusammen

Ich habe ein Problem mit meinem Windows 2000 Server.

Folgender Code:

ins = "insert into test (testd,tests) values('" & Date & "','" & Date & "')"
response.write ins
db.Execute(ins)

Ergibt folgende Fehlermeldung:
----------------------------------------------------------
String für SQL "insert into test (testd,tests) values('22.10.2003','22.10.2003')"
----------------------------------------------------------
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

Wenn ich das Datum auf Englisch setzte "SetLocale("en-us")"
funktioniert es.

Mein Problem ist das ich so rund 1000 Seiten umprogrammieren müsste.
Die Ausgabe wäre dann auf dem Web "10/22/2003" also müsste ich vor jede ausgabe wieder "SetLocale("de")" setzen.

Wer kann mir helfen?

  1. Hallo,

    das mit den 1000 Seiten glaub ich dir nicht ganz:

    [ ] du schwindelst
    [ ] deine Applikation ist suboptimal[tm] von ihrer Architektur

    Dein SQL sieht auch sehr an den Haaren herbeigezogen aus, als das es einen vernünftig Sinn in deiner 1000-seitigen Applikation ;-) haben sollte.

    Außerdem testet man regelmäßig seine Scripts, dann wäre dir, wenn du dieses Problem wirklich auf mehreren anderen Seiten auch noch hättest, das Problem wesentlich eher aufgefallen.

    Ich tippe in der Fehlerursache mal auf unterschiedliche Sprachversionen von MS Windows 2k (Server) und MS Access.

    Im Archiv stehen sicher eine Menge Hinweise zum diesem Problem und wie man es lösen kann.

    Ein, zwei Tipps noch: auch im SQL Statement selbst kann man Date() oder gar Now() verwenden, was in deinem Beispiel den selben Effekt hat aber funktioniert; stimme Applikationsträger und Applikation auf eine gemeinsame Lokalisierung ab, die Ausgabe kannst du dann mit Bordmitteln von VBS problemlos gestalten;man kann auch über die .addNew Methode einem Recordset Werte hinzufügen;

    Gruß, Frank