Danh sách Tutorial

[PostgreSQL] Rằng buộc Not Null (Not-Null Constraint)


Trong CSDL, Null là một giá trị đặc biệt. Nó không phải là giá trị rỗng (empty) không số không (zero). Nó thường được sử dụng để làm giá trị mặc định cho 1 cột (column) mà không bắt buộc phải nhập dữ liệu.

Rằng buộc NOT NULL chỉ ra rằng 1 cột (column) phải có 1 giá trị cụ thể khi thực hiện insert hay update dữ liệu.

Thêm một rằng buộc NOT NULL vào 1 cột khi tạo mới bảng CSDL

Cú pháp lệnh:

CREATE TABLE <table_name> (
<column_name> <data_type> NOT NULL
);

Ví dụ: Tạo 1 bảng cars có trường name có rằng buộc NOT NULL

CREATE TABLE cars
(
    car_id serial NOT NULL PRIMARY KEY,
    name character varying NOT NULL,
    description text
)

Bây giờ chúng ta thử insert dữ liệu vào bảng cars, nhưng ko insert vào trường name.

INSERT INTO cars (description) VALUES ('A blue car');

Kết quả câu lệnh insert thất bại, vì có rằng buộc NOT NULL

Thêm rằng buộc NOT NULL vào cột của bảng đã tồn tại

Đẻ thêm 1 rằng buộc NOT NULL, chúng ta sử dụng command ALTER TABLE và ALTER COLUMN với action là SET NOT NULL

Thêm rằng buộc NOT NULL vào 1 cột

Cú pháp lệnh:

ALTER TABLE table_name
ALTER COLUMN column_name SET NOT NULL;

Ví dụ: Chúng ta thêm rằng buộc NOT NULL cho cột description củ bảng cars ở trên

ALTER TABLE cars
ALTER COLUMN description SET NOT NULL;

Thêm rằng buộc NOT NULL vào nhiều cột

Cú pháp lệnh:

ALTER TABLEproduction_orders
ALTER COLUMN material_id SET NOT NULL,
ALTER COLUMN start_date SET NOT NULL,
ALTER COLUMN finish_date SET NOT NULL;

Nguồn: vinasupport.com

SHARE

mode_edit Bình luận của bạn

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

account_circle
web