Announcement

Collapse
No announcement yet.

MS Access SQL Abfrage mit Between

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • MS Access SQL Abfrage mit Between

    In MS Access 2000 liefert die Abfrage1
    [highlight=sql]
    Select * from Abfrage7 WHERE TagesIndex BETWEEN #04/01/2010# AND #04/30/2010#;
    [/highlight]
    Und die Abfrage2

    [highlight=sql]
    Select * from Abfrage7 WHERE TagesIndex BETWEEN #04/01/2010# AND #30/04/2010#;
    [/highlight]
    Gleiche Ergebnisse, ohne Fehlermeldung ?!

    Die zweite Abfrage macht keinen Sinn da #30/04/2010/# ist falsch!

    Wandelt Access / SQL inter das Datum ins richtige Format?
    Kann mir es jemand erklären?
    Zuletzt editiert von user_entwickler-forum; 30.04.2010, 12:41. Reason: [highlight=sql] Formatierung angepasst

  • #2
    Wieso ist das 2te Format falsch? Nach en-GB ist das Format vollkommen richtig, die formatieren das in DD/MM/YYYY.

    Das ist Format ist auch richtig, aber eben nach en-US mit MM/DD/YYYY.

    Das der 30 nicht der Monat sein kann, hast ja sogar Du bemerkt, deshalb nimmt Access das Format, das passen kann.

    Und was kommt dann bei 04/05/2010 raus, der 4 Mai oder der 5 April? Fragen über Fragen.
    Olaf Helper

    <Blog> <Xing>
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich

    Comment


    • #3
      Hi,

      ich dachte dass, die Einstellung für das Datum in Access aus den Ländereinstellungen abgeleitet wird. Bei mir ist es Ländereinstellung = Deutschland. Dann macht ja Access einen Unfug!

      Bei 04/05/2010 -> kommt 4 April raus
      Bei 30/05/2010 -> kommt 30 Mai raus

      Wie sage ich Access, dass es mit dem Datumsformat für Deutschland arbeiten soll?

      Comment


      • #4
        Originally posted by user_entwickler-forum View Post
        ich dachte dass, die Einstellung für das Datum in Access aus den Ländereinstellungen abgeleitet wird.
        Access macht bei Datumsformatierung und SQL eigentlich fast immer unfug.

        Verwende Parametrisierte Abfragen und dann ist das stringformat egal.

        Comment


        • #5
          Bei 04/05/2010 -> kommt 4 April raus
          Bei 30/05/2010 -> kommt 30 Mai raus

          Wie sage ich Access, dass es mit dem Datumsformat für Deutschland arbeiten soll?
          Wenn bei Dir wirklich der 4 April raus kommt, dann solltest Du Access wirklich weg werfen, den es sollte den 5 April liefern

          Einstellen kannst Du da nichts, im Standard wird das en-US erwartet und so interpretiert, nur wenn es dafür ungültig ist, fängt Access an herum zu ratenund probiert alle Formate durch, bis es eine gültige Umwandlung findet; was nicht heisst das auch das richtige Datum dabei heraus kommt.
          Olaf Helper

          <Blog> <Xing>
          * cogito ergo sum * errare humanum est * quote erat demonstrandum *
          Wenn ich denke, ist das ein Fehler und das beweise ich täglich

          Comment

          Working...
          X