Char ve Varchar veritipleri arasındaki farkları bir liste halinde aşağıda bulabilirsiniz.
- Char veritipi 0 ile 255 karakter arasında veri tutabilirken, Varchar veritipi MySQL v5,03 ten itibaren 0 ile 65,535 karakter arasında veri tutabilmektedir. MySQL’in önceki versiyonlarda ise Char veritipi ile aynı kapasiteye sahiptir.
- Char veritipi, tanımlandığı kadar kapasitenin tamamını kullanır. Örnek olarak siz 50 karakterlik bir alan tanımlamışsanız, bu alana 20 karakter bile girmiş olsanız, geriye kalan sağdan 30 karakterlik alan boşluk karakteri ile doldurulur. Varchar veritipi ise değişken bir yapıya sahiptir ve tanımlanan karakter katarına kadar olan boyutta değişkenlik gösterebilir. Yine örnek vermemiz gerekirse, 50 karakterlik bir alan için 30 karakter girdiğinizde hafızada sadece 30+1 karakterli bir alan kaplar.
- Char veritipinin kullanım alanı olarak sabit uzunluklu veri yapıları gösterilebilir. (Örn: telefon numaraları, kredi kartı no vb.) Varchar ise değişken uzunluklu veri yapıları için uygundur. (Örn: isim, mail vb.)
- Ayrıca bir tabloda varchar veritipinde tek bir alan bile yer alsa, bu aynı tablodaki diğer char veritipi ile belirlenmiş alanlarında Varchar biçiminde çalışmasına neden olur.