Ràng buộc not-null và unique

Nhập môn Cơ sở dữ liệu quan hệ bằng SQL

Timo Grossenbacher

Data Journalist

Ràng buộc not-null

  • Không cho phép NULL trong một cột
  • Phải đúng với trạng thái hiện tại
  • Phải đúng với mọi trạng thái sau này
Nhập môn Cơ sở dữ liệu quan hệ bằng SQL

NULL nghĩa là gì?

  • không biết
  • không tồn tại
  • không áp dụng
  • ...
Nhập môn Cơ sở dữ liệu quan hệ bằng SQL

NULL nghĩa là gì? Ví dụ

CREATE TABLE students (
 ssn integer not null,
 lastname varchar(64) not null,
 home_phone integer,
 office_phone integer
);
NULL != NULL
Nhập môn Cơ sở dữ liệu quan hệ bằng SQL

Cách thêm hoặc bỏ ràng buộc not-null

Khi tạo bảng...

CREATE TABLE students (
 ssn integer not null,
 lastname varchar(64) not null,
 home_phone integer,
 office_phone integer
);

Sau khi bảng đã được tạo...

ALTER TABLE students 
ALTER COLUMN home_phone 
SET NOT NULL;
ALTER TABLE students 
ALTER COLUMN ssn 
DROP NOT NULL;
Nhập môn Cơ sở dữ liệu quan hệ bằng SQL

Ràng buộc unique

  • Không cho phép giá trị trùng trong cột
  • Phải đúng với trạng thái hiện tại
  • Phải đúng với mọi trạng thái sau này

Nhập môn Cơ sở dữ liệu quan hệ bằng SQL

Thêm ràng buộc unique

CREATE TABLE table_name (
 column_name UNIQUE
);
ALTER TABLE table_name
ADD CONSTRAINT some_name UNIQUE(column_name);
Nhập môn Cơ sở dữ liệu quan hệ bằng SQL

Hãy áp dụng vào cơ sở dữ liệu!

Nhập môn Cơ sở dữ liệu quan hệ bằng SQL

Preparing Video For Download...