Wie schaffe ich es, dass Datensätze, die ich in meine Tabelle in phpmyadmin einpflege nicht doppelt eingefügt werden?
Hallo zusammen, in meiner phpmyadmin Tabelle werden die Datensätze immer doppelt eingefügt. Habe in einem anderen Forum gelesen, dass nur eine Neuinstallation von xampp helfen kann, das würde ich alledings gern vermeiden. Siehe Bild

2 Antworten
Die Sätze in Deinem Beispiel sind gar nicht doppelt. Die Sätze unterscheiden sich im Feld id_author. Der eine Satz hat 9, der andere 10 als Wert. Die Datenbank macht nichts von alleine, schon gar nicht das was Du denkst. Du musst minuziös alles festlegen und der Datenbank klare Anweisungen erteilen, was sie zu tun hat. Dann macht die Datenbank das auch.
Zunächst musst Du festlegen, was Du unter doppelt verstehst, d.h. welche Felder einzeln oder im Verbund nicht zweimal vorkommen dürfen. Das hast Du sicher nicht gemacht. Du kannst dazu z.B. für die beiden Felder Vorname und Nachname einen eindeutigen Index (unique index) einrichten oder diese beiden Felder gleich als Primärschlüssel verwenden.
Den Index kannst mit der SQL-Anweisung
CREATE UNIQUE INDEX bezeichnung ON tabelle
(Vorname, Nachname)
einrichten. Zum Zeitpunkt des Einrichtens darf in der Tabelle kein Satz vorkommen, der laut dem einzurichtenden Index nicht vorkommen dürfte.
Falls Du den Index ändern willst, musst Du ihn zuerst löschen und dann kannst ihn wieder neu einrichten:
DROP INDEX bezeichnung
Der UNIQUE INDEX hat neben der allgemeinen Indexfunktion zum schnellen Suchen noch die Aufgabe, Eingaben zu verhindern, die zu mehreren gleichen Indexeinträgen führen würden. Eine versuchte Eingabe wird ggf. mit einer Fehlermeldung abgebrochen.
Mit xampp hat das wenig zu tun, eher mit dem SQL Befehl
Wenn ich über phpmyadmin einen Datensatz einfüge, kommt der sonst nicht doppelt
Dann machst du vielleicht Reload im Browser? Phpmyadmin macht keine Fehler, dachte INSERT hast du programmiert
Reload führt ggf den SQL Befehl noch mal durch