Hızlı bir sorum var - SQL Tablo tasarımında "ya/veya" veri depolamak için en iyi yöntem var mı?SQL Tabloları - Her iki/veya için desen
Aşağıdaki sorunla karşılaşıyorum - Şablon tablosunu (klasör yapısını tanımlama) bir SQL tablosunda depolamam gerekiyor. Herhangi bir klasörde bir statik ad (örneğin "E-postalar") olabilir veya her bir nesne için ilişkili nesneye bağlı olarak dinamik olarak oluşturulmuş olabilir (ör. Şirket Adı).
Bir iş nesnesi başlatıldığında, şablon verileri gerçek klasör yapısını oluşturmak için kullanılacaktır. IsDynamic alan true ayarlanırsa
CREATE TABLE folder ( ID INT IDENTITY PRIMARY KEY, FolderName NVARCHAR(50), IsDynamic BIT NOT NULL DEFAULT 0, DynamicFieldID INT FOREIGN KEY REFERENCES dynamicField, ParentID INT FOREIGN KEY REFERENCES folder )yüzden (yabancı anahtar üzerinde tanımlı) bir kural olacağını biliyorum ama eğer ben değil:
böyle verileri depolamak düşünüyorum klasör adında kayıtlı değeri kullanacaktır. Ancak bu durum benim için biraz dağınık gibi görünüyor - bu tür bir senaryo için “en iyi uygulama” modeli var mıdır?
Selam Patrick - bunun için teşekkür. Bunu düşünüyordum ama bu durumun daha iyi veya kötü olup olmadığına karar vermek için asıldı. Bunun neden daha iyi olduğuna dair fikriniz nedir (ya da artıları ve eksileri olarak ne düşünüyorsunuz?) – Chris
İkiden fazla türde klasörünüz varsa veya ikiden fazla sütun etkilendiyse, bu yaklaşım her şeyi tek bir tabloda tutmaya çalışmaktan daha temiz olabilir. Bununla birlikte, Chris'in COALESE önerisinin daha pratik olduğunu düşünüyorum.Cevabını kabul ediyorum. :-) –