举个简单的例子,假设我有一张list
桌子和一张list_entry
桌子:
CREATE TABLE list
(
id SERIAL PRIMARY KEY,
);
CREATE TABLE list_entry
(
id SERIAL PRIMARY KEY,
list_id INTEGER NOT NULL
REFERENCES list(id)
ON DELETE CASCADE,
position INTEGER NOT NULL,
value TEXT NOT NULL,
CONSTRAINT list_entry__position_in_list_unique
UNIQUE(list_id, position)
);
我现在想添加以下约束:具有相同的所有列表条目list_id
都具有position
形成从 开始的连续序列的条目1
。
我不知道怎么做。
我首先想到了EXCLUDE
约束,但这似乎无济于事。
当然可以创建一个触发器,但如果可能的话,我宁愿不这样做。