Frage

Ich setze derzeit zusammen einige Änderungen in unserem Datenmodell, das eine Spalte gehören zu wechseln (das passiert Teil des Primärschlüssels sein), so dass es nicht mehr eine Identität. Gibt es eine Möglichkeit, diesen kurzen tatsächlich zu löschen und neu die gesamte Spalte oder Tabelle zu tun? Der automatisch generierte Code aus SSMS genau das tut, aber ich frage mich, ob es vielleicht war eine einfachere Lösung.

War es hilfreich?

Lösung

Sie können nicht die Eigenschaft Identität einer Spalte entfernen, ohne es zu Droping.

Mögliche Lösungsschritte sind:

(a) Fügen Sie eine neue Spalte

(b) Aktualisieren Sie die Spalte mit Identitätsspalten Wert

(c) Entfernen Sie die Identitätsspalte.

Alter Table Tablename Add newColumnname int

Update Table set newColumnname =IdentityColumn

Alter Table TableName Drop IdentityColumnName

Hinweis: Wenn Sie sprechen, um die Identität Eigenschaft für Vorerst prüfen Set IDENTITY_INSERT Tablename ON Command Ausschalten

Sinn?

Cheers, John

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top