Willkommen bei Entwickler-Forum.
Ergebnis 1 bis 2 von 2
  1. #1
    Neuer Benutzer
    Registriert seit
    24.09.2017
    Beiträge
    1

    Standard Unique und weitere SQL-Abfrage

    Hallo,

    ich habe in einer SQLite-Datenbank auf dem Feld "Hash" in der ein MD5-Hash gespeichert werden ein Unique liegen um doppelte Einträge zu verhindern. Gleichzeitig führt die Abfrage:

    SELECT hash FROM quizduell WHERE hash = 'hier wäre der hash';

    nicht immer zum gleichen Ergebnis wie das Unique, d.h. nicht immer melden beide Varianten gleichzeitig das ein Eintrag doppelt vorhanden ist. Kann mir jemand helfen, wie ich mit der Abfrage das gleiche Ergebnis wie mit dem Unique-Key erreiche?

    Beste Grüße

    Peter

  2. #2
    Forenheld
    Registriert seit
    26.02.2003
    Beiträge
    16.317

    Standard

    Welche beiden Varianten?
    Was wird gehasht?

    Das Unique verhindert einen gleichen Eintrag in der Spalte.
    Dein select macht dahingehend nichts. Es holt alle Einträge mit diesem Hash heraus. Wie sollte ein SQL "melden", dass ein Eintrag doppelt ist. Ggf. kannst du
    - die Anzahl mit count(*) zählen.
    - wenn du nur nur "einmaligen" wissen willst-> SELECT distinct hash.....

    Bei einem select ohne das ein Unique vorhanden ist, sind die doppelten schon als Datensatz vorhanden; bei dem Unique kann ein Datensatz, der doppelte entstehen läßt nicht eingefügt werden.
    Hast du zweimal 'hier wäre der hash' wird der Eintrag nicht verhindert, sondern beide ausgegeben. Insofern sind das keine Varianten
    Geändert von Christian Marquardt (24.09.2017 um 12:47 Uhr)
    Christian

 

 

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •