martin: Doppelte Dateneingabe verhindern

Hallo, ich möchte verhindern, dass in meine Datenbank ein Wert in ein Feld vom Type varchar mehrfach eingegeben werden kann. Wie stelle ich das an? Gruß martin

  1. Hi,

    Hallo, ich möchte verhindern, dass in meine Datenbank ein Wert in ein Feld vom Type varchar mehrfach eingegeben werden kann. Wie stelle ich das an?

    Es gibt grundsätzlich mehrere Möglichkeiten.

    1. die Spalte auf unique setzen
    2. mit einer serverseitigen Sprache vor dem Insert überprüfen ob der Wert schon vorkommt

    Welche Variante schneller ist hängt von der Serverleistung ab (jeweilig)

    ciao
    romy

    --
    DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
    sh:( fo:| ch:? rl:( br:& va:| zu:) ss:| ls:[
    Die Erklärung zum Selfcode findest du hier: http://emmanuel.dammerer.at/selfcode.html
    Einen Decoder für den Selfcode findest du hier: http://peter.in-berlin.de/projekte/selfcode
    1. Vielen Dank! Gruß martin

    2. Die Aufteilung in zwei Varianten sehe ich als falsch an.
      Eine tabelle bzw. Feld auf uniqe setzten ist ja gut und recht.
      Aber knallt jedesmal ein Fehler zurück wenn es schon einen Eintrag gibt.
      Also entweder dann den Fehler der Datenbank abhandeln oder vorher prüfen ob der eintrag existiert.
      Ist etwas unangenehm, wenn der Benutzer drausen mitbekommt, dass da ein Anfänger mit einer XY Datenbank grad einen Fehler nicht abgefangen hat.

      Gruss Matze

  2. Hi

    SELECT DISTINCT http://www.mysql.com/doc/de/DISTINCT_optimisation.html

    Gruß Christoph

    --
    Ich bin ein spezialisz!
    (Zitat von VENGA JO)
    sh:) fo:) rl:° br:& ie:| mo:) va:) fl:) ss:| ls:< js:|
    Die Erklärung zum Selfcode findest du hier: http://emmanuel.dammerer.at/selfcode.html
    Einen Decoder für den Selfcode findest du hier: http://peter.in-berlin.de/projekte/selfcode
    1. Hi,

      SELECT DISTINCT http://www.mysql.com/doc/de/DISTINCT_optimisation.html

      distinct ist element der Select-Anweisung und gibt Datensätze auch wenn doppelt vorhanden nur einzeln aus, ABER: was hat das damit zu tun, dass er verhindern will, doppelte Einträge in die Datenbank vorzunehmen?

      ciao
      romy

      --
      DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
      sh:( fo:| ch:? rl:( br:& va:| zu:) ss:| ls:[
      Die Erklärung zum Selfcode findest du hier: http://emmanuel.dammerer.at/selfcode.html
      Einen Decoder für den Selfcode findest du hier: http://peter.in-berlin.de/projekte/selfcode
      1. Hi,

        hi

        sorry verlesen....

        »»ABER: was hat das damit zu tun, dass er verhindern will, doppelte Einträge in die Datenbank vorzunehmen?

        ciao
        romy

        Gruß Christoph

        --
        Ich bin ein spezialisz!
        (Zitat von VENGA JO)
        sh:) fo:) rl:° br:& ie:| mo:) va:) fl:) ss:| ls:< js:|
        Die Erklärung zum Selfcode findest du hier: http://emmanuel.dammerer.at/selfcode.html
        Einen Decoder für den Selfcode findest du hier: http://peter.in-berlin.de/projekte/selfcode