Announcement

Collapse
No announcement yet.

Eindeutige Suche in Access-Datum/Zeit-Feld

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

  • Eindeutige Suche in Access-Datum/Zeit-Feld

    Hallo zusammen,<BR>

    hat jemand eine Ahnung wie man in einer Access-2000-Tabelle eine eindeutige, erfolgreiche Suche auf ein TimeStamp-Feld ( PrimaryKey ) durchführen kann?<BR>
    Die Methoden "Seek" und "Locate" konnte ich noch nicht davon überzeugen dass der gesuchte Datensatz existiert...!<BR>

    Ich verwende 2 Instanzen der TBetterADODataSet-Komponente die über differente Schlüssel auf eine gemeinsame Access-Tabelle zugreifen. Wenn nun in der einen Instanz ein Datensatz zur Bearbeitung ausgewählt wurde, möchte ich die andere Instanz auf den ausgewählten positionieren.<BR>

    Ich bedanke mich für jede Anwort

    mfg Holger Rogge

  • #2
    Hallo,

    generell ist es keine gute Idee, ein Datum/Uhrzeit-Feld als Primärschlüssel zu verwenden! Ein Primärschlüssel hat die Aufgabe, einen Datensatz in der Datenmenge auf logisch eindeutigem Weg zur definieren. Dazu wird ein Datentyp benötigt, der dazu in der Lage ist. Bei einem Datum/Uhrzeit-Feld, das intern als 2x4 Byte gespeichert wird, ist das aufgrund der dort implizit vorhandenen Rundungsprobleme nicht der Fall.

    Um den Datensatz über das Datum/Uhrzeit-Feld in jedem Fall wiederfinden zu können, ist ein "unscharfe" Suche (WHERE-Einschränkung mit kleiner als/größer als) notwendig

    Comment


    • #3
      Hallo Andreas,<BR>
      Danke erst mal für Ihre schnelle Antwort!<BR>

      Die Idee mit dem PrimaryKey erschien mir als guter Kompromiss, da es sich dabei um ein Erfassungssystem mit hohem Datenaufkommen handelt und ich es nicht riskieren wollte dass ein AutoInc-Feld irgendwann "überläuft". Dazu muss man wissen dass ich die Datenbank mit ausliefere und nicht zur Laufzeit erstelle.<BR>

      Mit Ihrer obigen Lösung finde ich nun zwar Datensätze, die Treffer sind aber nicht immer 100%. Ich werde deshalb jetzt ein weiteres AutoInc-Feld (GUID) für die eindeutige Suche einfügen.<BR>

      Vielen Dank noch mal für Ihre Mühe<BR>

      Mfg Holger Rogg

      Comment


      • #4
        Hallo Andreas,<BR>

        in einem letzten Versuch habe ich die CursorLocation auf "clUseServer" und den CursorType auf "ctKeySet" gesetzt (irgendwo in Ihrem Buch stand was darüber); jetzt klappt's "auch mit dem Nachbarn"!

        Besten Dank noch mal für die Hilfe!<BR>

        Mfg Holger Rogg

        Comment


        • #5
          Hallo,

          &gt;..jetzt klappt's "auch mit dem Nachbarn

          Vorsicht - denn dadurch ist nur das "Rundungs-Fenster" größer geworden. Das grundsätzliche Problem besteht auch weiterhin, nur die Wahrscheinlichkeit, einen Datensatz zu finden, ist größer geworden

          Comment

          Working...
          X