varchar, char, nvarchar?

2 yıl, 1 ay önce yazıldı. 6 yorum yapıldı.

Bu veri tiplerini veritabanında metin yapısında tutacağımız kolonlara veriyoruz. Bunları ne zaman kullanacağımızı yada kullanmayacağımızı bu yazımızda özet olarak göstermeye çalışacağız.

char veri tipi uzunluğu sabit değerler için kullanılır. Örneğin bir ürünün seri numarası, kişinin tc kimlik numarası.

varchar uzunluğu değişken değerler içindir, örneğin personel tablosundaki isim alanı, e-posta alanı.

Kolonun uzunluğu sabit değilse, yani bu kolonda tutulacak değerlerin hepsi 12 karakter uzunluğunda olacaktır gibi birşey diyemiyor isek, char yerine varchar kullanılmalıdır.

Böyle bir durumda char kullanılırsa development tarafında bazı sorunlar oluşur. Çünkü char tipi eksik kalan yerlere boşluk karakteri ekler ve beklenmeyen sonuçlar çıkar, yada her sorguda char tipindeki alanı trim'lemek zorunda kalırız.

Bununla beraber sabit uzunluktaki kolonlara varchar kullanmamak gerekir. char tipinin index'lerde daha performanslı çalışacağını unutmayalım.

nvarchar yine varchar gibi uzunluğu değişken kolonlar için kullanılır. varchar ile arasında şöyle bir fark vardır.

nvarchar varchar'dan farklı olarak unicode karakter seti kullanır ve daha geniş bir karakter aralığına sahiptir. Bununla beraber herbir karakteri tutmak için daha fazla alan/byte kullanır. Bu nedenledir ki nvarchar'ı gereksiz yere kullanmamak gerekir. Birden çok dili destekleyen (multilingual) bir alan olmayacaksa tipini nvarchar vermemeliyiz.

Veritabanının karakter seti türkçe(yada türkçeyi destekleyen bir karakter seti) olsa dahi nvarchar tipi kullanarak çince, japonca, arapça, yunanca yada rusça karakterleri tutabilriz. Fakat nvarchar tipinin gereksiz kullanımının oldukça verimsiz olacağını unutmayalım!

#1 Murtaza  1 yıl, 8 ay önce dedi ki;

teşekkürler çok faydalı oldu.

#2 Esra GÜL  1 yıl, 7 ay önce dedi ki;

yarın sınav var inşallah banada faydalı olur

#3 ahmet  6 ay, 10 gün önce dedi ki;

varchar,nvarchar nasıl okunur merak ediyorum

#4 Seymur Hajiyev  1 ay, 10 gün önce dedi ki;

cok faydali oldu . thanksss

#5 ilteriş mutlu  kategori dışı. önce dedi ki;

Çok güzel ve sade anlatılmış. TEşekkürler

#6 ilteris mutlu  kategori dışı. önce dedi ki;

Çok güzel ve sade anlatılmış. Teşekkürler

Yorum yapabilirsiniz

 

 



 
Gönder