Geçerli para birimi kodlarını içeren bir tablomuz var. Örneğin, 3 kodlu bir ISO Para Birimi yerine birincil anahtar olarak sayısal bir değer kullanmayı seçiyoruz.Bir referans tablosunda 0 sayısal PK kimlik sütun değeri mi var?
Genel görüş birliği, bu CurrencyId
sütununun sıfır ile başlayan değerler içermesi gerektiği sonucuna varmıştır. ABD doları bizim için birincil para birim olduğundan, ilk pozisyonu 0 olan bir değerle iddia ediyordu.
Düşüncelerim, bazı dillerin sayısalları sıfıra ve sıfır olarak başlatması için kimlik sütunlarının sıfırdan başlamaması gerektiğidir. Sonuç olarak, hiçbir zaman atama yapılmadığında para birimi kodu istemeden USD
olarak ayarlanmış olabilir.
Hepiniz ıslanmış mıyım? 1 CurrencyId
1 ila USD
'u atamayı tercih ederim.
Ne karar verirseniz verin - sadece bir yeri açıkça belgelediğinizden emin olun ve tüm geliştiricilerden ve DBA'lardan aldığınız çözüm hakkında anlaşmaya varın! Ayrıca: "0" değerini "gerçek" bir değer olarak kullanırsanız, yine de her zaman "Bilinmeyen" veya "tanımsız" için bir yer tutucu değeri olarak -1 değerini girin ve bu değeri varsayılan olarak kullanmak için bu tabloya başvuran sütunları ayarlayın. –
@Chad - Size katılıyorum. [Bu sorunun enumlar hakkında benzer bir tartışması vardır] (http://stackoverflow.com/questions/7257409/should-an-enum-start-with-a-0-or-a-1/7257458#7257458) –
"Ben hep ıslandım mı?" ?? – AakashM