I'm creating a postgreSQL table that has a foreign key that references itself, so it's a structure which is similar to a tree:
CREATE TABLE Person(
ID serial PRIMARY KEY,
Description text,
Name varchar(5),
ParentID serial,
FOREIGN KEY (ParentID) REFERENCES Person(ID)
);
The problem is that ParentID is automatically set to NOT NULL and therefore there can be no root in this tree. How do I make it nullable?