Bir kullanıcının kayıtları düzenleyebileceği ve bu kayıtların geçmiş sürümlerini görebildiği bir proje için bir yaklaşım bulmaya çalışıyorum. Aşağıda, bir liste kullanarak sessizleştirilmiş bir örnek şema verilmiştir:
TABLE list (
id int auto_increment primary key,
user_id int,
title varchar(255)
);
TABLE list_tasks (
id int auto_increment primary key,
list_id int,
title varchar(255),
order int,
is_complete tinyint
);
Böylece bir kullanıcı içeri girebilir ve listede birkaç düzenleme yapabilir, (yani, görev ekleme veya kaldırma, görevleri yeniden sipariş etme, bazılarını tamamla işaretleme, bazılarını yeniden adlandırma vb.), Sonra kaydedin. Bu noktada, liste ve görevlerin bir 'sürüm 2' oluşturmak ve önceki sürümleri görüntüleyebilmelerini istiyorum, ancak listeye eriştiklerinde her zaman en son sürümü edinin.
Bir MySQL veritabanında bu şekilde sürüm verilerinin ele alınması için ortak bir yaklaşım / tasarım modeli var mı?