Προσθήκη στήλης με προεπιλεγμένη τιμή σε υπάρχοντα πίνακα στον SQL Server

Πώς μπορεί να προστεθεί μια στήλη με προεπιλεγμένη τιμή σε έναν υπάρχοντα πίνακα στον SQL Server 2000 / SQL Server 2005;

Λύση

Σύνταξη:

ALTER TABLE {TABLENAME} 
ADD {COLUMNNAME} {TYPE} {NULL|NOT NULL} 
CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE}
WITH VALUES

Παράδειγμα:

ALTER TABLE SomeTable
        ADD SomeCol Bit NULL --Or NOT NULL.
 CONSTRAINT D_SomeTable_SomeCol --When Omitted a Default-Constraint Name is autogenerated.
    DEFAULT (0)--Optional Default-Constraint.
WITH VALUES --Add if Column is Nullable and you want the Default Value for Existing Records.

Σημειώσεις:

Προαιρετικό όνομα περιορισμού:

Σχόλια (9)
ALTER TABLE Protocols
ADD ProtocolTypeID int NOT NULL DEFAULT(1)
GO

Η συμπερίληψη του DEFAULT γεμίζει τη στήλη σε υπάρχουσες γραμμές με την προεπιλεγμένη τιμή, έτσι ώστε να μην παραβιάζεται ο περιορισμός NOT NULL.

Σχόλια (8)
ALTER TABLE ADD ColumnName {Column_Type} Constraint

Το άρθρο ALTER TABLE (Transact-SQL) του MSDN περιέχει όλη τη σύνταξη του πίνακα alter.

Σχόλια (0)