Do I need to VALIDATE CONSTRAINT?
I create a foreign key constraint and know that there are no violations, so I mark it as NOT VALID to skip the check.

Why?
The constraint will be applied to all new data as it is added.
The &quot;not valid&quot; option allows the constraint to exist whilst ignoring any historically-entered, bad data.
If you have no such bad data, then the &quot;not valid&quot; option serves no useful purpose and, indeed, is misleading to anyone else looking at the constraint, who will assume that it's been configured this way to allow for bad data (that isn't there!).