PostgreSQL hỗ trợ nhiều loại khóa toàn vẹn dữ liệu (data integrity constraints) để đảm bảo rằng dữ liệu trong cơ sở dữ liệu là chính xác và nhất quán. Dưới đây là các loại khóa toàn vẹn dữ liệu mà PostgreSQL hỗ trợ:
CREATE TABLE employees ( id SERIAL PRIMARY KEY, name VARCHAR(100) NOT NULL );
CREATE TABLE departments ( id SERIAL PRIMARY KEY, name VARCHAR(100) NOT NULL ); CREATE TABLE employees ( id SERIAL PRIMARY KEY, name VARCHAR(100) NOT NULL, department_id INT REFERENCES departments(id) );
CREATE TABLE users ( id SERIAL PRIMARY KEY, email VARCHAR(255) UNIQUE );
CREATE TABLE products ( id SERIAL PRIMARY KEY, name VARCHAR(100) NOT NULL, price NUMERIC NOT NULL );
CREATE TABLE orders ( id SERIAL PRIMARY KEY, total NUMERIC CHECK (total >= 0) );
CREATE TABLE tasks ( id SERIAL PRIMARY KEY, status VARCHAR(20) DEFAULT 'pending' );
Các loại khóa toàn vẹn dữ liệu trong PostgreSQL giúp bảo vệ dữ liệu khỏi các lỗi và bất cập, đồng thời duy trì tính chính xác và nhất quán của dữ liệu trong cơ sở dữ liệu. Việc áp dụng đúng các ràng buộc này là rất quan trọng trong quá trình thiết kế cơ sở dữ liệu.