I am trying to maintain an address history table:
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
);
I'm wondering if there's an easy way to autonumber/constrain sequence
in address_history
to automatically count up from 1 for each person_id
.
In other words, the first row with person_id = 1
would get sequence = 1
; the second row with person_id = 1
would get sequence = 2
. The first row with person_id = 2
, would get sequence = 1
again. Etc.
Also, is there a better / built-in way to maintain a history like this?