Tom: PHP / MySQL Datensatz "vertauschen"

Beitrag lesen

Hello,

imho wäre sinnvoll wäre zb die prj_SortID der beiden datensätze zu tauschen

genau und zwar, wie du schon richtig erkannt hast mit UPDATE.

Ausnahmsweise:
UPDATE tbl\_projekte SET prj\_SortID=4 WHERE prj\_ID=5;
UPDATE tbl\_projekte SET prj\_SortID=3 WHERE prj\_ID=4;

Ist Dir aufgefallen, dass Du nun die ganze Sortierung durcheinander gebracht hast? ;-)

Ein Tausch mit zwei Statements funktioniert nur sicher, wenn

  • man die Tabelle für die Gesamtdauer der Operation sperrt,
      oder zumindest die beiden betroffenen Datensätze
  • Man eine Hilfsgröße zur Verfügung hat, wie z.B. die ID

Die ID hast Du benutzt...

Liebe Grüße aus Syburg bei Dortmund

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de