SQL: Null constraints

Join the AI Workshop to learn more about AI and how it can be applied to web development. Next cohort February 1st, 2026

The AI-first Web Development BOOTCAMP cohort starts February 24th, 2026. 10 weeks of intensive training and hands-on projects.


When we create a table in this way:

CREATE TABLE people (
  age INTEGER,
  name TEXT
);

SQL freely accepts empty values as records:

INSERT INTO people VALUES (null, null);

This might be a problem, because now we have a row with null values:

To solve this, we can declare constraints on our table rows. NOT NULL prevents null values:

DROP TABLE people;

CREATE TABLE people (
  age INTEGER NOT NULL,
  name TEXT NOT NULL
);

If we try to execute this query again:

INSERT INTO people VALUES (null, null);

We’d get an error, like this:

This is an example of the DBMS setting boundaries on the data we insert.

Very helpful to keep the data clean.

Lessons in this unit:

0: Introduction
1: Using TablePlus
2: Create a Postgres database
3: Create a new table
4: Add data to a table
5: Query data with SELECT
6: Delete data from the database
7: Update data with UPDATE
8: ▶︎ Null constraints
9: Unique and primary keys
10: Updating a table structure
11: Joins
12: SQL Views
13: SQL, copy data from one table to another