2016-03-21 10 views
-1

PostgreSQL'da bir Employee şeması tasarlıyorum ve veri türlerinin boyutları konusunda birkaç şüphem var. Örneğin, country sütunu için Address tablosunda, tam form SSCB'nin akılda tutulması için 48 verdim, bu yüzden iyi mi? pin code için 10 Sorun var mı, yoksa 8 mi vermeliyim?Boyutları sql cinsinden etkin bir şekilde nasıl atayabilirsiniz?

Benzer şekilde, company id ve employee id gibi sütunlar için Big int veya Int verebilir miyim?

Ayrıca, project members sütun için small int kullanabilir miyim, bu sayı büyük olmayabilir?

Gerçekten bir Small Int veri türü nerede kullanılır?

cevap

2

Bu soruları yanıtlamak için data profiling yapmalısınız. Bu soruları iş konuşmadan ve verilere bakmadan cevaplamak zor olacaktır.
data profiling görevinin çıktılarından biri, diğer bilgilerin yanı sıra veri türleri, uzunluk, boş değerlerin ortaya çıkması hakkındaki öneridir. Tabii, bu örnek verilerinize bağlı olacaktır. Otomatik olarak artırılan numaralar iş anahtarları ise
Company id ve employee id bağlıdır.
Small Int adından da anlaşılacağı gibi, bu alanın çok farklı veya büyük değerlerini beklemediğinizde kullanılır - örnek, bir referans/arama tablosu için kimlik alanı olacaktır (örn. GenderID = 1 için Gender = 'Erkek' , GenderID = 2 için Gender = 'Dişi' ve GenderID = 3 için Gender = 'Diğer').

+0

Yanıtladığınız için teşekkür ederim, yeni 'veri profili oluşturma' kelimesini öğrendim ve aslında 'küçük int' kullanıldığında anlaşıldı. –

+1

Postgres'te, bir cinsiyet alanı gibi şeyler için ENUM kullanabileceğinizi unutmayın. Ayrıca, alan adlarınızı boşluk bırakmadan tüm küçük harflerle yapmanızı öneririm; bu şekilde onları alıntılamak zorunda değilsiniz. Varchar üzerindeki uzunlukları belirlerken, bir güvenlik önlemi dışında bir hayranı değilim (yalnızca uygulamada bir şey yapmazsa, alanlarınızda 1 GB ile sonuçlanamayacağınızdan emin olmak için). Böyle şeylere gerçekten değer veriyorsanız, aynı zamanda lider veya sondaki boşlukların ve muhtemelen başka şeylerin olmamasını sağlamanız gerekir. –

İlgili konular