PostgreSQL Veri Tipi Oluşturmak (Domain)
PostgreSQL Veri Tipi Oluşturmak (Domain),Postgresql de domain kavramı yeni veri alanı tanımlamak için kullanılır. Check constraint kavramına çok benzemektedir fakat check constraintten farklı yanı yapılan değişiklikleri yeni veri tipi gibi oluşturabiliyor olmamızdır.
Örnek üzerinden anlatarak konuyu pekiştirelim;
İlk başta domain oluşturmamız gerekiyor. Domaini kullanırken ihtiyaca göre aşağıdaki parametreleri kullanabilirsiniz.
- Default
- Constraint
- Not null
- Null
- Check
Yukarıdaki parametrelerden check parametresini kullanacağım bundan dolayı da value parametresini de değeri belirtmek için kullanacağım. Aşağıda int_values_f adında domain oluşturuyoruz ve bu domaini veri tipi olarak kullandığımızda 0,1,2 değerleri haricinde veri kullanılmaması için tanımlama yapıyoruz.
create domain int_values_f as integer check (value>=0 and value <3);
Postgres veritabanın altına domainimizi oluşturduk .Kontrol etmek için aşağıdaki komutu kullanabilirsiniz.
\dD
Aşağıda public şemasının altında ve veri tipi integer olacak şekilde ve check değeri kullandığımız için check kısmında kullandığımız değeri görüyoruz.
Şimdi tablo oluşturup deneyelim.
CREATE TABLE d1_t1 (id int_values_f);
Yukarıda integer’ın yanında yazan kısım domaine verdiğimiz isim.
Tablomuzun oluştuğunu gördük ve şimdi verileri basarak doğruluğunu kontrol edelim. Aşağıdaki resimde id kolonuna 0,1,2,3 verilerini bastık fakat 3 rakamını insert ederken hata aldık. Bunun sebebi int_values_f veri tipini 0 ile 3 arasında değer alabilecek şekilde ayarladık fakat 3 dahil olmamak üzere dediğimiz için 3 dahil olmadı.