Evet, bunun daha iyi tasarım olmasının birçok nedeni var.
Devralma / uzatma ilişkiniz olabilir, örneğin bir User
tablonuz ve daha sonra Administrator
daha fazla alana sahip bir tablonuz olabilir . Her iki tablonun da birincil Kullanıcı Kimliği anahtarı olabilir (ve bu nedenle 1: 1 ilişkisi olabilir) ancak tüm kullanıcıların Administrator
tabloda bir kaydı olmayacaktır . Bir iş akışını destekliyorsanız benzer bir şeye ihtiyacınız vardır, örneğin bir ScheduledTask
tablo ve CompletedTask
tablo.
Sık kullanılan veriler için hafif bir tabloya User
ve daha sonra çok sık ihtiyacınız olmayan ayrıntılar için daha büyük bir tabloya sahip olmak isteyebilirsiniz UserDetails
. Tek bir veri sayfasına daha fazla kayıt sığdırabileceğiniz için bu performansı artırabilir.
Tablolar için farklı izinler isteyebilirsiniz, örneğin User
veUserCredentials
Farklı yedekleme stratejileri istiyor ve bu nedenle örneğin farklı bölümleri üzerinde iki tablo koyabilir Transaction
veTransactionArchive
Tek bir tabloda desteklenenden daha fazla sütuna ihtiyacınız olabilir; örneğin, dizine eklemeniz gereken çok sayıda büyük metin sütunu varsa ve DB platformunuz 4K veri sayfaları veya whathaveyou ile sınırlıysa.