postgresql里的坑
SELECT (NULL > 1) IS NULL AS y;
结果是:TRUE
postgresql 中 NULL 与值进行比较结果都是 NULL
在约束check中,只有当约束中值为FALSE时出现错误,当为NULL时,该约束不会产生错误。
check(id > 1)
当我们的约束中的某一列为空,并与1进行比较,比较后结果将为NULL,此时该约束还是成立的。
SELECT (NULL > 1) IS NULL AS y;
结果是:TRUE
postgresql 中 NULL 与值进行比较结果都是 NULL
在约束check中,只有当约束中值为FALSE时出现错误,当为NULL时,该约束不会产生错误。
check(id > 1)
当我们的约束中的某一列为空,并与1进行比较,比较后结果将为NULL,此时该约束还是成立的。