ugrás a tartalomhoz

csere

csman007 · 2010. Ápr. 12. (H), 17.58
Sziasztok!
Hogyan lehetne az megoldani hogy két sort az adatbázistáblában kicserélni, ahol autoincrementtel van egy oszlop, és a csere után az id-k(ez az autoincrement)megmaradnak, vagyis ami mondjuk 1es id volt az egyes marad de a 2es adatjával, illetve ami 2es volt az kettes marad de az egyes adataival.
 
1

Átmeneti

janoszen · 2010. Ápr. 12. (H), 22.38
Ha nem unsignedként hoztad létre az id oszlopot, akkor az egyiket állítsd át a negatív önmaga értékére, a másikat updateld meg majd a negatívot állítsd át át az ellenpárra. Ha nagyon spiller vagy, akkor az utóbbit egy műveletben is megcsinálhatod. Az egészet tedd be tranzakcióba vagy lokkold a táblát és akkor gubanc sem lesz.

Akkor lehet esetleg probléma, ha van az ID-re foreign key ON UPDATE CASCADE paraméterrel, ez esetben nem az ID-t kellene cserélni, hanem az adatot. Alternatívaként kikapcsolhatod a foreign key checkinget.