Anahtar Fark: SQL Server gibi veritabanı sistemlerinde, Char ve Varchar her ikisi de veri tipindedir; burada char aslında karaktere ve Varchar değişken karaktere işaret eder. Her ikisi de, maksimum 8.000 karakter uzunluğundaki dizi türlerini depolamak için kullanılır. Char'ın depo büyüklüğü beyan edilen ile aynıdır, oysa Varchar'ın altı aşaması girilen gerçek verinin baytına bağlıdır.
Bir örnek verelim - eğer bir Char verileri bir şekilde bildirilirse: Test Char (20) 'yi ve test = "test" i ilan ederseniz, test ilk 7 baytı kaplar ve dinlenme boş veri ile doldurulur. Öte yandan, eğer bir Varchar verisi bir şekilde bildirilirse: Test Varchar (20) ve test = “test” i bildirin, o zaman sadece 7 + 2 bayt alacaktır.
Değişkenin uzunluğu bilindiğinde Char kullanılmalı, ancak Varchar yalnızca uzunluğu bilinmiyorsa kullanılmalıdır. Char, Varchar'dan daha hızlıdır, çünkü Varchar sistemi dizgenin sonunu bulmak için zaman tespit etmek için biraz zaman harcar. Öte yandan, bu sefer Char'da boşa gitmiyor.
Char ve Varchar arasındaki karşılaştırma:
kömür | Varchar | |
Tam form | Karakter | Değişken Karakter (değişken uzunluklu karakter bağlamında) |
anlam | Sabit uzunlukta Unicode olmayan dize verilerini depolamak için kullanılır | Değişken uzunluktaki Unicode olmayan dize verilerini depolamak için kullanılır |
Depolama için kullanılan bayt | Karakter başına 1 bayt | Karakter başına 1 bayt ve uzunluk bilgisini tutmak için ek 1 veya 2 bayt |
Uygulama | Telefon numarası vb. Gibi verileri depolamak için kullanılır (veri girişleri tutarlıdır.). | Adres gibi verileri depolamak için kullanılır (veri girişleri büyük ölçüde değişir) |
Koşul: giriş dizgisi bildirilen bayttan daha az | Herhangi bir karakter içermeyen boşluk, boşluk karakterleriyle doldurulur | Herhangi bir karakter içermeyen boşluk, hiçbir karakterle doldurulmaz |
Koşul: giriş dizgisi bildirilen bayttan daha fazla | Dize, bildirilen baytlara kesilecek | Dize, bildirilen baytlara kesilecektir. |