Cú pháp:
ALTER TABLE {TABLENAME}
ADD {COLUMNNAME} {TYPE} {NULL|NOT NULL}
CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE}
WITH VALUES
Ví dụ:
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.
Ghi chú:
Tên Ràng buộc Tùy chọn:
Nếu bạn bỏ qua CONSTRAINT D_SomeTable_SomeCol
thì SQL Server sẽ tự động tạo
một Mặc định-Tương phản với một Tên vui nhộn như:DF__SomeTa__SomeC__4FB7FEF6
Tuyên bố có giá trị tùy chọn:
WITH VALUES
chỉ cần thiết khi Cột của bạn là Nullable
và bạn muốn Giá trị mặc định được sử dụng cho các Bản ghi Hiện có.
Nếu Cột của bạn là NOT NULL
, sau đó nó sẽ tự động sử dụng Giá trị mặc định
cho tất cả các Bản ghi Hiện có, cho dù bạn chỉ định WITH VALUES
hoặc không.
Cách Phụ trang hoạt động với Ràng buộc mặc định:
Nếu bạn chèn Bản ghi vào SomeTable
và làm không Chỉ định SomeCol
giá trị của, sau đó nó sẽ Mặc định thành 0
.
Nếu bạn chèn Bản ghi và Chỉ định SomeCol
giá trị của là NULL
(và cột của bạn cho phép rỗng),
thì Mặc định-Ràng buộc sẽ không được sử dụng và NULL
sẽ được chèn dưới dạng Giá trị.
Ghi chú dựa trên phản hồi tuyệt vời của mọi người bên dưới.
Đặc biệt cảm ơn:
@Yatrix, @WalterStabosz, @YahooSerious và @StackMan vì những nhận xét của họ.