MySQL: bestimmte Zeile löschen
toby
- php
hallo
Wie kann man ne bestimmte zeile löschen, bzw, die zeilennr eines eintrags ermitteln, denn manchmal befinden sich mehrere gleiche einträge in der db, wovon nicht alle gelöscht werden sollen !
danke
Hi,
Wie kann man ne bestimmte zeile löschen,
Durch Angabe einer Where-Klausel, die genau diese Zeile auswählt.
bzw, die zeilennr eines eintrags ermitteln,
Definiere "Zeilennr eines Eintrags" - eine Datenbank ist erstmal ein Haufen _ungeordneter_ Daten
denn manchmal befinden sich mehrere gleiche einträge in der db, wovon nicht alle gelöscht werden sollen !
Dann ist schon beim Design der Datenbank was schiefgelaufen.
Jede Tabelle sollte einen UNIQUE key haben ==> es gibt KEINE 2 gleichen Einträge...
Ggf. könnte aber - wenn das DB-Design verhunzt ist - limit helfen, aber sinnvoller wäre es, die Ursache zu beseitigen, nicht an den Symptomen rumzudoktorn.
cu,
Andreas
Hi,
in einer Datenbank hat jeder Eintrag normalerweise eine eindeutige ID. Anhand selbiger kannst du den Datensatz, den du löschen magst, bestimmen.
MfG
Dark Sider
Hallo toby,
Du hast doch sicherlich eine Spalte, die bei jedem Eintrag unterschiedlich
ist. Darüber kannst du den Datensatz identifizieren und gezielt mittels einer
passenden WHERE-Klausel im Query löschen.
Grüße
David
wenn die Zeilen wirklich komplett gleich sind, kannst Du einfach
DELETE FROM tabelle WHERE zelle1 = 'kriterium1' AND zelle2 = 'kriterium2' AND zelle3 = 'kriterium3' LIMIT 1;
verwenden... dann löscht er von den 3 gleichen zeilen nur eine...
du mußt dann aber ALLE zellen in der WHERE Klausel verwenden, ansonsten könnte es zu falschen Löschungen kommen