Peter Mairhofer: Keinen Eintrag doppelt

Hallo,

Ich hab' eine stinknormale Datenbank, z.B.:

ID Nummer Benutzer
1  45     4
2  43     4
3  54     8

Nun will ich, sofern der Datenbank ein neuer Eintrag hinzugefügt wird, nicht, dass er *doppelt* reinkommt. Geht das allein über eine SQL Abfrage ohne PHP etc?

Also der Benutzer "4" jetzt noch einmal die Nummer "43" eintragen will, soll sie nicht eingetragen werden, da dann der Eintrag doppelt wäre. Verständlich ausgedrückt?

Wäre für jede Hilfe dankbar!

PEter

  1. Hi,

    Also der Benutzer "4" jetzt noch einmal die Nummer "43" eintragen will, soll sie nicht eingetragen werden, da dann der Eintrag doppelt wäre. Verständlich ausgedrückt?

    Definiere die Spalte(nkombination) als Unique Index.

    cu,
    Andreas

    --
    Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
    http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/
  2. Halihallo Peter

    Nun will ich, sofern der Datenbank ein neuer Eintrag hinzugefügt wird, nicht, dass er *doppelt* reinkommt. Geht das allein über eine SQL Abfrage ohne PHP etc?

    Informiere dich über Attributübergreifende UNIQUE-Indizies. Wenn du über Nummer und
    Benutzer einen UNIQUE-Index legst, lassen sich keine "doppelten" Einträge mehr speichern.

    Brauchst du die ID als Primary Key, oder wäre Benutzer und Nummer auch ein
    Schlüsselkandidat? - Wenn dem so wäre, lege einen Primary Key über diese beiden Attribute
    und du hast die Eineindeutigkeit dieser Werte gleich implizit gesichert.

    Viele Grüsse

    Philipp

    --
    RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
    Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.