Daniela Koller: DELETE FROM mit LIMIT ?

Beitrag lesen

Hi Viennamade

Sah ich bis dato etwas falsch und ist das LIMIT 1 auch sinnvoll wenn mit dem =Operator ein eindeutiger Operand verglichen wird, oder wendet PHPMyAdmin diese Syntax nur aufgrund einer allgemein gehaltenen Routine an?

Du hast bisher nichts falsch gemacht. Das LIMIT 1 ist in diesem Fall nicht sinnvoll und höchst gefährlich. Wenn du über den Primärschlüssel gehst, hat es keinerlei Auswirkungen. Gehst du hingegen über ein anderes Feld wo mehrere Treffer möglich sind, wird so _zufällig_ einer gelöscht anstelle aller Treffer. LIMIT solltest du immer nur in Kombination mit ORDER BY benutzen um bestimmen zu können, welcher Datensatz herauskommt.

LIMIT zum Löschen allgemein würde ich von abraten da nicht bei jedem DBMS ORDER BY vor LIMIT ausgeführt wird. Ich hatte sogar schon den Fall wo das Handbuch gesagt hat, ORDER BY würde vor LIMIT berücksichtigt, es aber dann doch nicht immer funktioniert hat.

Gruss Daniela