SQL Server: Ràng buộc DEFAULT


Khóa học qua video:
Lập trình Python All Lập trình C# All SQL Server All Lập trình C All Java PHP HTML5-CSS3-JavaScript
Đăng ký Hội viên
Tất cả các video dành cho hội viên

Ràng buộc mặc định (DEFAULT) được dùng để gán giá trị mặc định cho cột nếu giá trị của cột đó không được đưa vào khi chèn bản ghi vào bảng.

Mỗi bảng có thể có nhiều ràng buộc DEFAULT.

Mỗi cột của bảng chỉ có một ràng buộc DEFAULT.

Lưu ý: DEFAULT không thể được tạo trên cột đã được định nghĩa với:

  • Kiểu dữ liệu timestamp
  • Thuộc tính IDENTITY hoặc ROWGUIDCOL
  • Đã tồn tại ràng buộc DEFAULT hoặc đối tượng DEFAULT.

Dưới đây là một số cách áp dụng ràng buộc DEFAULT:

Cách 1: ​Ví dụ (ví dụ này áp dụng cho hầu hết các RDBMS như MySQL, SQL Server, Oracle, MS Access):

CREATE TABLE Student(

studentid int NOT NULL,

studentname nvarchar(30) NOT NULL,

dateofbirth date NOT NULL DEFAULT('1997-01-10')

);

INSERT Student(studentid, studentame) VALUES(1,N'Nguyễn Văn A')

Ở ví dụ trên cột dateofbirth không được chèn giá trị khi chèn bản ghi vào bảng Student, nên trong trường hợp này cột sẽ được đặt giá trị mặc định là '1997-01-01'.

Cách 2: Sử dụng câu lệnh ALTER TABLE như sau:

+ Áp dụng cho MySQL, ví dụ:

ALTER TABLE Student ALTER Price SET DEFAULT('1997-01-01');

+ Áp dụng cho MS Access, ví dụ:

ALTER TABLE Student ALTER COLUMN Price SET DEFAULT('1997-01-01');

+ Áp dụng cho SQL Server, sử dụng cú pháp như sau:

ALTER TABLE Tên_bảng ADD CONSTRAINT Tên_ràng_buộc DEFAULT(Giá_trị) FOR Tên_cột;

Ví dụ:

ALTER TABLE Student ADD CONSTRAINT df_student_dob DEFAULT('1997-01-01') FOR dateofbirth

Tham khảo các ràng buộc khác:

» Tiếp: Ràng buộc UNIQUE
« Trước: Ràng buộc CHECK
Khóa học qua video:
Lập trình Python All Lập trình C# All SQL Server All Lập trình C All Java PHP HTML5-CSS3-JavaScript
Đăng ký Hội viên
Tất cả các video dành cho hội viên
Copied !!!