Ich kann nicht glauben, dass die Top-Antwort schon so lange hier sitzt – es ist ein sehr gefährlicher Rat!
Es gibt nur wenige Operationen, die Sie direkt ausführen können, ohne Ihre Tabelle zu löschen:
- Erweitern Sie eine varchar-Spalte https://dba.stackexchange.com/ fragen/5211/sich ändernde spaltenbreite
- Machen Sie eine Spalte nullfähig (aber nicht umgekehrt)
- Spalten umbenennen mit sp_rename
Wenn Sie sich in der Situation befinden, dass das Ändern einer Spalte nicht möglich ist, ohne die Tabelle zu löschen, können Sie normalerweise ein SELECT INTO
verwenden Abfrage, um Ihre Daten in eine neue Tabelle zu projizieren, löschen Sie dann die alte Tabelle (vorübergehendes Deaktivieren von Einschränkungen) und benennen Sie dann die projizierte Tabelle um. In diesem Fall müssen Sie Ihre Datenbank jedoch zur Wartung offline schalten.