11 Stimmen

Seltsames Verhalten beim Umbenennen einer Spalte in SQL Server 2008

Ich muss einen Code zum Umbenennen einer Spalte in SQL Server 2008 schreiben.
Bei der Skripterstellung in Management Studio erhielt ich eine doppelte Umbenennung:

NAME1 ==> TEMPNAME ==> NAME2

BEGIN TRANSACTION
GO
EXECUTE sp_rename N'dbo.Table_1.columFirstName', N'Tmp_columSecondName_2', 'COLUMN' 
GO
EXECUTE sp_rename N'dbo.Table_1.Tmp_columSecondName_2', N'columSecondName', 'COLUMN' 
GO
ALTER TABLE dbo.Table_1 SET (LOCK_ESCALATION = TABLE)
GO
COMMIT

Aber wenn ich es in einem Rutsch mache, funktioniert es ganz gut.

Warum wird die Spalte zunächst in einen vorläufigen Namen umbenannt? Ist es sinnvoll, bei der Codierung eines Umbenennungsalgorithmus dasselbe zu tun?

Gracias.

8voto

Sie können die Spaltennamen zwischen zwei Spalten vertauschen. Management Studio unterstützt dies, indem es alle Spalten in vorläufige Namen umbenennt und sie dann in die endgültigen Namen umbenennt.

Blorgbeard: Im Rechtsklick-Menü des Entwurfsfensters gibt es die Möglichkeit, ein Änderungsskript zu erstellen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X