Dubletten verhindern

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Dubletten verhindern

    Hallo, ich wollte mal fragen ob es unter MySQL eine möglichkeit gibt, einen neuen Eintrag abzufangen denn es bereits in der DB schon gibt? (reload, F5)

    Ich mach das extern mit php und das funktioniert auch, aber mich würde interessieren ob MySQL das auch vor dem speichern erkennt.

    Ich hab das probiert und MySQL sagt nichts und schreibt identische einträge mehrfach in die DB.
    ACHTUNG: RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit

  • #2
    Du möchtest dich informieren, was ein Unique Index ist.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Stell die Spalte in der die Einträge gespeichert werden auf Unique.
      So gibt SQL eine Fehlermeldung aus wenn du versuchst einen doppelten Eintrag zu speichern.

      Kommentar


      • #4
        Das hab ich jetzt nicht verstanden mit der Spalte!

        Nehmen wir zB einen gästebucheintrag, dort hat jeder eintrag ca. 6 spalten:
        id, name, email, url, inhalt, datetime

        welche spalte soll ich hier als unique markieren?, alle?
        ACHTUNG: RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit

        Kommentar


        • #5
          Alle, die eindeutig sein sollen. Die id ausgenommen, da diese im Normalfall ein Primärschlüssel ist, der wiederum immer eindeutig sein muss.

          Kommentar


          • #6
            Hallo,

            id sicher nicht, die sollte bereits Primary Key sein und ist damit eindeutig. Ansonsten kannst du auch einen Mehrfeldschlüssel erstellen, dann muss nur die Kombination aller enthaltenen Spalten eindeutig sein, während eine davon allein durchaus mal den selben Wert haben kann. Einfach mal die Doku lesen.

            Edit @h3ll: Der zweite Satz stand aber gerade noch nicht da, oder?

            Gruß,

            Amica
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar

            Lädt...
            X