Vinzenz Mai: mysql: Datensatz duplizieren

Beitrag lesen

Hallo,

» weil ein oft gesuchtes Problem, für das ich im Selfforum nicht das richtige gefunden habe (aber woanders),

Achwas, wenn es nicht im Archiv steht kann es nicht oft gesucht sein, oder? :-)

stimmt auffallend, außer bei zwei, drei Forumsanfragen ist mir dieses Problem noch nie begegnet. Ich musste noch nie einen Datensatz in der gleichen Tabelle duplizieren und kann mir immer noch nicht vorstellen, warum es nötig sein sollte.

... und geht mit einer aktuellen MySQL-Version (> 4.0.14) deutlich kürzer, denn das Temp-Table-Handling erledigt MySQL intern.

INSERT INTO table (feldliste_ohne_id) SELECT feldliste_ohne_id FROM table WHERE id=wert

zudem ist es ein atomarer Vorgang, eine gute Sache, somit die klar zu bevorzugende Variante. Grundsätzlich gehen beide Varianten nur dann, wenn es sonst keinen eindeutigen Index in der Tabelle gibt. Gründe für eine weitere Spalte mit einem eindeutigen Index kann ich mir sehr gut vorstellen.

Einziger Grund für die Version des OP ist der Faulpelz-Mode ;-)

Freundliche Grüße

Vinzenz