Was tun, wenn eine neue Spalte zu einer Tabelle hinzugefügt werden soll, diese neue Spalte keine NULL-Werte enthalten darf, doch die Tabelle bereits Datensätze enthält? Eine schlichte "ALTER TABLE"-Anweisung lässt der MS SQL Server nicht zu.
Die Lösung ist schlicht, aber wie mir im I-Net auffiel nicht für jeden gleich offensichtlich.
Bei mir eine aktuelle Aufgabe: Gegeben ist eine Tabelle "Hersteller", welche schon Datensätze enthält. Hinzugefügt werden soll eine Spalte mit dem Namen "AutoAnlegen" vom Datentyp "bit", welche keine NULL-Werte enthalten darf und als Standard auf "false" steht. Die Umsetzung erfolgt in drei Schritten:
ALTER TABLE Hersteller
ADD AutoAnlegen bit DEFAULT 0
Update Hersteller SET AutoAnlegen = 0
Alter Table Hersteller
Alter Column AutoAnlegen bit Not NULL
Keine Kommentare:
Kommentar veröffentlichen