Nasıl bir veritabanında bir kaydın sürüm kontrolü için
Hadi veritabanında bir kayıt var ve admin hem normal kullanıcılar güncellemeleri yapabilir ki.
Olası bir önceki revizyon için bir kaydı geri almak için bu yüzden bu tabloda kontrol her değişiklik sürümü nasıl herkes iyi bir yaklaşım/mimarlık.
CEVAP
Hadi yöneticiler ve kullanıcılar güncelleştirme FOO
bir tablo olduğunu varsayalım. Çoğu zaman FOO tabloya karşı sorgu yazabilirsiniz. Mutlu günler.
Sonra, FOO_HISTORY
bir tablo oluşturmak istiyorum. Bu FOO
tablonun tüm sütunları var. Birincil anahtar aynı RevisionNumber bir sütun artı olarak FOO. FOO
FOO_HISTORY
yabancı bir anahtar var. Ayrıca sütun kullanıcı Kimliği ve RevisionDate gibi revizyon ile ilgili ekleyebilirsiniz. Artan *_HISTORY
tüm masalara moda RevisionNumbers (örn. doldurmak Oracle sırası veya başka türlü). Yalnızca bir değişiklik vardı kullanmadığı bir saniye içinde. yani. birincil anahtarı RevisionDate
koymayın.
Şimdi, her şey sen güncelleme yapmak hemen önce FOO
, güncelleme FOO_HISTORY
eski değerler Ekle. Bazı temel seviyede bu programcılar değil tasarımınıza yanlışlıkla Bayan bu adım, sen de öyle.
Eğer FOO
bir satır silmek istiyorsanız size bazı seçenekler var. Çağlayan ve tüm geçmişi silin ya da işaretleme mantıklı silmek silinmiş gibi FOO
gerçekleştirin.
Bu çözüm bazen tarihindeki geçerli değerler ve sadece büyük ölçüde ilgilendi zaman iyidir. Eğer her zaman geçmişi gerekiyorsa o zaman etkili başlangıç koymak ve bitiş tarihlerini ve FOO intself tüm kayıtları tutabilirsiniz. Her sorgu sonra bu tarihleri kontrol etmesi gerekecek.
Nasıl silmeden sürüm kontrolü Bir dosy...
Nasıl düzeltmek için: Desteklenmeyen ö...
Nasıl Android uygulaması yapı/sürüm nu...
Nasıl benim Subversion bulmak için ser...
nasıl mysql veritabanında tek bir tabl...