Tabellenzeilen auf und ab schieben. Wie geht das?

S

sunray

Mitglied
Thread Starter
Dabei seit
15.02.2005
Beiträge
61
Reaktionspunkte
0
Hallo Programmier Freaks,


Ich benötige eine knackige SQL Befehlskette, mit der man eine Tabellenzeile schrittweise aufwärts bzw. abwärts schieben kann. Also ich habe z.B. 10 durchnummerierte Datenzeilen und möchte jetzt aus Eintrag 3 die Nr 2 machen. Gleichzeitig muss die 2 dann die 3 werden. Klar.

Kann mir da jemand weiter helfen?



Vielen Dank.

Gruß, sunray
 
Das ist eine Transaktion ;)

BEGIN TRANSACTION
UPDATE zeile1 SET eintrag=2 where unique_id=12345
UPDATE zeile2 SET eintrag=3 where unique_id=54321
COMITT TRANSACTION

Die genaue Syntax ist vom DBMS abhängig, jedenfalls wird so aus mehreren Eine. Gibt es ein Problem wird ein Rollback durchgeführt und alles ist beim Alten!
 
Ich glaube Transaktionen gehen mit MySQL <5 noch nicht. Falls Du das hast, würde ich es mit einem Zwischenschritt lösen.

Also aus 3 erstmal 3a machen, aus der 2 die 3 und aus der 3a die 2.

Wenn Transaktionen gehen, ist das aber immer der bessere Weg, schon wegen dem Rollback.
 
Zurück
Oben Unten