Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Spaltentypen in der Produktionsdatenbank müssen geändert werden (SQL Server 2005)

Wie David sagte, ist es nicht die beste Idee, ein Skript in einer Produktionsdatenbank auszuführen, ohne eine Sicherung durchzuführen oder die Site zu stoppen. Wenn Sie jedoch Änderungen in nur einer Tabelle mit einer reduzierten Anzahl von Zeilen vornehmen möchten, können Sie ein Skript vorbereiten :

  • Transaktion beginnen
  • Erstelle eine neue Tabelle mit der gewünschten Endstruktur.
  • Kopieren Sie die Daten aus der ursprünglichen Tabelle in die neue Tabelle
  • Benennen Sie die alte Tabelle um, beispielsweise in original_name_old
  • Benennen Sie die neue Tabelle in original_table_name um
  • Transaktion beenden

Dies endet mit einer Tabelle, die wie die ursprüngliche benannt ist, aber mit der gewünschten neuen Struktur, und zusätzlich behalten Sie die ursprüngliche Tabelle mit einem Sicherungsnamen bei. Wenn Sie also die Änderung rückgängig machen möchten, können Sie ein Skript erstellen, um a einfaches Ablegen der neuen Tabelle und Umbenennen der ursprünglichen.

Wenn die Tabelle Fremdschlüssel hat, wird das Skript etwas komplizierter, ist aber immer noch ohne großen Aufwand möglich.