我们正在创建一个包含 20 多个表的新数据库,我们的数据库支持:
所以,问题是:我们应该使用序列还是恒等式?哪一个更好?团队似乎在这个问题上存在分歧,所以我想听听优点和缺点,以帮助做出决定。
添加数据库详细信息:
我正在尝试维护一个地址历史表:
CREATE TABLE address_history (
person_id int,
sequence int,
timestamp datetime default current_timestamp,
address text,
original_address text,
previous_address text,
PRIMARY KEY(person_id, sequence),
FOREIGN KEY(person_id) REFERENCES people.id
);
Run Code Online (Sandbox Code Playgroud)
我想知道是否有一种简单的方法可以自动编号/约束sequence,address_history从而自动从1开始计数person_id.
换句话说,第一行person_id = 1会得到sequence = 1; person_id = 1会得到第二排sequence = 2.第一行person_id = 2,将sequence = 1再次获得.等等.
还有更好/内置的方式来维护这样的历史吗?