David: Datensatzabfrage nach Datum geht nicht

CN = "SELECT * FROM Termine WHERE Datum>=" & DATE & " ORDER BY Datum ASC"

ich will aus einer datenbank nur die datensätze wo das datum grösser gleich dem heutigem ist. jedoch klappt das nicht ganz... warum? ... was ist daran falsch? ...

mfg
David

  1. Hallo,

    CN = "SELECT * FROM Termine WHERE Datum >= '" & DATE & "' ORDER BY Datum asc"

    Odium

    1. Danke... aber das hab ich auch schon ausprobiert...

      mit dem ' ' schreibt er dann beim testlauf:

      Datentypen in Kriterienausdruck unverträglich.

      .. ? sollte ja eigentlich klappen

      mfg
      David

      1. Hallo,

        bei mir geht es exakt so... und eigentlich ist es auch korrekt...

        ist dein tabellenfeld auch wirklich vom typ datum?
        was kommt für eine fehlermeldung, wenn du die ' wegläßt?

        Odium

        1. also es ist eine access datenbank das datenfeld ist ein typ "datum /kurz" für xx.xx.xxxx

          wenn ich ein datum fix angebe... mit '04.01.2003' kommt "Datentypen in Kriterienausdruck unverträglich."

          ohne '' und DATE kommt "Syntaxfehler in Zahl in Abfrageausdruck 'Datum >= 07.01.2003'."

          hab echt keine ahnung warum es nicht geht!...

          mfg
          David

          1. Servus

            hab echt keine ahnung warum es nicht geht!...

            arbeitest du auf einem englischen Server. Dann stimmt das Landesformat vielleicht nicht.

            bydey

            1. ich hab windows 2000 sp3 auf deutsch mit deutschem office paket und teste alles lokal mit iis

              mfg
              David

              1. Servus

                ich hab windows 2000 sp3 auf deutsch mit deutschem office paket und teste alles lokal mit iis

                Ich habe das bei mir lokal mit ähnlicher Konfig getestet und komme zum gleichen Ergebnis:
                eine Vergleichsabfrage mit dem Datumsfeld ist auch bei mir nicht möglich. Allerdings formatiere ich auch vorher um und bin nicht sicher, ob ich noch datumsformat habe!?

                bydey

                1. Hallo David,
                  das hört sich sehr danach an, als stimme das Format nicht überein!
                  Lass Dir doch einfach mal ein Datum ausgeben, etwa:
                  CN = "SELECT Datum FROM Termine WHERE ID = 123"
                  response.write CN

                  ID ggf. durch irgendein Erkennungsmerkmal ersetzen.

                  1. Servus Susanne

                    Ich habe das bei mir auch getestet. Mal mit veränderm Format mal so wie di DB es zurück gibt und den Wert dann auch mal aus dem Browser kopiert und als Festwert eingefügt. Keine Vergleichsoperation mit dem Feld Datum wird ordnungsgemäss ausgeführt.
                    Alternativ habe ich es in Access konstruiert und mir den SQL code ausgeben lassen und es funktioniert exakt mit der Syntax, die wir erwarten.
                    Gott bin ich froh, dass es diesmal nicht mein Problem ist.

                    bydey

      2. Servus

        Danke... aber das hab ich auch schon ausprobiert...

        mit dem ' ' schreibt er dann beim testlauf:

        Datentypen in Kriterienausdruck unverträglich.

        .. ? sollte ja eigentlich klappen

        Stellt sich die Frage, ob die Daten in Datum und DATE vom Format übereinstimmen und überhaupt vergleichbar sind.
        Ich würde mal versuchen DATE durch einen Festwert zu ersetzen.

        bydey