Vinzenz Mai: SQL Spalte verschieben

Beitrag lesen

Hallo LeKuchen,

vorab: Bitte fragt nicht warum!

also frage ich dich nicht: Warum reicht nicht ein View mit geänderter Spaltenreihenfolge?

Ich möchte eine Spalte in einer Datenbanktabelle (inkl. Daten) in der Reihenfolge per Scriptbefehl verschieben. (MS SQL 2000)

Gibt es dafür einen Befehl, so nach dem Motto:

ALTER TABLE [dbo].[tabelle] ALTER COLUMN MOVE oder so....

nein, da gibt es nur {ADD|DROP}

Im EnterpriseManager ist es ja einfach, da brauche ich die Spalte nur per Drag and Drop zu verschieben, aber wie lautet der Skriptbefehl dafür?

Hehe, ich habe mir im Profiler angeschaut, was im Hintergrund abläuft:

Die Tabelle wird in eine temporäre Tabelle kopiert, anschließend wird die Tabelle mit DROP TABLE gelöscht, neu angelegt mit der neu festgelegten Spaltenreihenfolge, die Daten zurückkopiert, Indizes und ähnliches angelegt, aber kein ALTER TABLE ...

Ein Heidenaufwand für ein einfaches Ändern der Spaltenreihenfolge.

Freundliche Grüße

Vinzenz