检查元组中的约束

时间:2015-01-18 16:26:33

标签: postgresql constraints tuples

对于1800年以后出生的所有总统来说,党永远不会是'WHIG'。

alter table president
add constraint whig_check check (birth_year > 1800 and party <> 'WHIG');

它告诉我某些行违反了它,但我检查了它并没有。  我认为系统认为它是两个单独的约束,但它们应该在一起。我该如何做到这一点?

1 个答案:

答案 0 :(得分:1)

你的逻辑倒退了。改为使用:

alter table president
add constraint whig_check check (birth_year <= 1800 OR party <> 'WHIG');