Datenverlust bei Typänderung der Spalte

Foermchen82

Mitglied
Wenn ich den Typ einer Spalte in MSsqlServer von smallint auf int ändere dürfte es ja keine Verluste geben, da int ein größerer Datentype ist. Umgekehrt jedoch gibt es diese Verluste. Gibt es eine Möglichkeit die Änderung einer Spalte zu Verhindern oder Ähnliches wenn es bei der Typ-Änderung zu Datenverlusten kommt?

Danke im vorraus
 
Hallo Foermchen82,

beim Ändern einer Spalte gibt es grundsätzlich eine Warnung.

Beispiel:
Du hast eine Spalte 'Wert' vom Typ int mit dem Inhalt 1000
Wenn du jetzt den Typ von int auf smallint änderst bekommst du eine Warnung, das es einen Datenverlust geben kann. Aber die Änderung wird durchgeführt.
Wenn du aber den Typ von int auf tinyint änderst, bekommst du wieder eine Warnung und danach wird der Vorgang abgebrochen, weil es in dem Beispiel zu einem Arithmetischen Überlauf kommt, da 1000 > 255 ist.
 

Neue Beiträge

Zurück