MySQL datensätze löschen
mustino
- datenbank
Hallo,
ich habe das Problem Datensätze in MySql Zeilenweise mit PHP zu löschen.
Gibt es die Möglichkeit z.B. die Zeile 5 in einer Tabelle zu löschen?
Gruß
Mustino
Hi
wenn jede zeile eindeutig identifiziert werden kann , zb mit einer id, kannst du schreiben:
.... where id = '[bedingung]'
wenn jetzt die zeile 5 die id 5 hat schreibst du:
where id = '5'
tschü ichen
Hallo,
danke vorerst für die Antworten.
Ich hatte gedacht es gäbe eine Möglichkeit mit Index'en wie z.B. beim Array, das MySql mitabspeichert.
Gruß
Mustino
hallo,
naja ganz das ganze sehr dirty umgehen.
du bastelt dir eine zähler variable namens i:
dann holst du alle werte der reihe nach aus der datenbank solange bis
i==zulöschendespaltennr(=5).
den datensatz merkst du dir und löschst dann diesen datensatz, indem du in deinem delete statement eine riesige where klausel baust, in der alle felder mit dem gemerkten datensatz übereinstimmen.
gruss
yo,
Gibt es die Möglichkeit z.B. die Zeile 5 in einer Tabelle zu löschen?
jeder datensatz in einer tabelle sollte eine identifikation besizen, mit der man ihn eindeutig ansprech kann. oftmals nennt sich solch eine spalte id. denmzufolge könnte die löschung eines bestimmten datensatz in etwas so aussehen.
DELETE FROM tabelle WHERE id=hier_gewünschte_id;
oder aber du willst den 5 datensatz in deiner tabelle löschen, dann solltest du dir vorher die id bestimmten, zum beispel mit.
SELECT id FROM tabelle LIMIT 4,1;
aber darauf achten, dass es auch mindestens fünf datensätze gibt...
Ilja
Hallo mustino,
ich habe das Problem Datensätze in MySql Zeilenweise mit PHP zu löschen.
Gibt es die Möglichkeit z.B. die Zeile 5 in einer Tabelle zu löschen?
Datenbanktabellen sind nicht 1:1 mit Zeilen in einem Editor zu vergleichen. Zeile 5 enthält nicht unbedingt, was Du erwartest. Du solltest etwas wissen, was die zu löschende Zeile eindeutig kennzeichnet, z.B. den Wert einer Spalte dieser Zeile, bitte beachte _eindeutig_.
Anschließend verwendest Du die SQL-Anweisung DELETE, siehe http://www.mysql.de/doc/de/DELETE.html, z.B. in der Form
DELETE FROM logdatei
WHERE user = 'jcole'
Freundliche Grüsse,
Vinzenz