SQL ยท Chapter 32 of 42
SQL Constraints
Constraints enforce data quality rules at the database level.
Main ones: NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK, DEFAULT.
Example 1 (sql)
CREATE TABLE accounts (
id BIGINT PRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
balance DECIMAL(10,2) CHECK (balance >= 0),
role VARCHAR(20) DEFAULT 'user'
);Output
Table created with multiple constraintsFive constraint types combined.
Example 2 (sql)
ALTER TABLE orders
ADD CONSTRAINT fk_user FOREIGN KEY (user_id) REFERENCES users(id);Output
Constraint addedAdd a foreign key later.
Key points
- Constraints keep bad data out.
- PRIMARY KEY = one per table.
- FOREIGN KEY links to another table.
- CHECK enforces a boolean rule.
๐ก Note: Enforcing rules in the DB is safer than only in the app โ bad data can still arrive via scripts, migrations or bugs.
