SQL, Handling empty cells
By Flavio Copes
Learn how to handle null and empty cells in a SQL database, and how to prevent them by adding the NOT NULL constraint to your table columns.
~~~
When we create a table in this way:
CREATE TABLE people (
age INT,
name CHAR(20)
);
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:
age | name
-----+--------
37 | Flavio
8 | Roger
|
To solve this, we can declare constrains on our table rows. NOT NULL prevents null values:
CREATE TABLE people (
age INT NOT NULL,
name CHAR(20) NOT NULL
);
If we try to execute this query again:
INSERT INTO people VALUES (null, null);
We’d get an error, like this:
ERROR: null value in column "age" violates not-null constraint
DETAIL: Failing row contains (null, null).
Note that an empty string is a valid non-null value.
~~~
Related posts about database: