MSSQL Veri Tipleri – Bora Arat Kişisel Web Blogu
Anasayfa » MSSQL » MSSQL Veri Tipleri
CHAR ve VARCHAR arasindaki fark aslinda VAR kelimseinde gecmektedir. CHAR 10 dediğinizde biz kaç karakter girersek girelim, geri planda SQL’de bu bilgi 10 karakter olarak tutulmaktadır. Dolayısı ile isim veri tabanı kullanacaksanız ve CHAR yaptıysanız bunu en uzun isme göre planlamalısınız. Diğer kısa karakterli olanlarda en az 10 karakterlik yer tutmaktadır, bu isim için pek doğru bir seçim olmayacaktır.
VARCHAR’da ise, maksimum uzunluğu siz belirlersiniz ama arka planda sistem gerçek uzunluk kadar hafızada yer tutmaktadır.
NCHAR’ın farkı ise unicode’a izin vermesi, çince, japanca vb global bir DB oluşturuyorsanız bunu nchar ya da nvarchar yapmalısınız. Aradaki fark ise, char türünde yaptığımız veri tipi her bir karakter için 1 byte’lık yer tutmaktadır, nchar ve nvarchar ise 2byte lık veri tutmaktadır.
Yine CHAR tipinde karakte uzunluğu 8000 olaiblir ve bunu geçemez. NCHAR’da ise bu sayı (her karakter 2byte olduğu için) 4000 karakterdir.
TEXT alanı ise 8000’den uzun bir datanın tutulması adına oluşturtulmuş bir veri tipidir. Sadece geçmiş sürümlere destek olması amacı ile bulunmaktadır. Microsoft’un önerisi ise VARCHAR MAX ya da NVARCHAR MAX kullanılmasıdır.
NOT: CHAR türündeki verilerde arama hızımız VARCHAR’a göre daha hızlıdır. Fakat diskteki yer büyüklüğü önemsenecek bir değer olduğu için CHAR türünü kullanmak bizim için dez avantaj olabilir. Peki nerelerde CHAR kullanılmalı? Sabit uzunluğu belli telefon TC kimlik gibi verilerede CHAR tipinin kullanılması, VARCHAR’a göre daha efektif olacaktır.
bit: Genellikle ture ve false değerler için kullandığımız bir byte uzunluğunda tamsayı veri tipidir. Boyutu aklınızı karıştırmasın. Tablodaki ilk bit, bir byte büyüklüğünde yer kaplar, sonraki yedi bit aynı byte’ı kullanabilir.
smallint: 2 byte büyüklüğünde ve -32768 ile +32767 arasında değer alabilen tamsayı veri tipidir.
bigint: 8 byte yüyüklüğünde daha büyük rakamlar yani -2^63 ile +2^63 arasında değer alabilen tamsayı veri tipidir.
Sayısal veri tiplerini yukardaki değerlere göre belirleyebilirsiniz, integer sizin için yeterli geliyorsa, big integer yaparak 2 katı bir boyutla çalışmanıza gerek bulunmuyor.
datetime2: Yeni gelen bir veri tipi, datetime ile arasındaki fark salise hassasiyetinin daha yüksek olmasıdır. 7 basamağa kadar salise hassasiyeti kullanıcı tarafından belirlenebilir. Kapladığı alan salise hassasiyetine göre değişir. (6-8 byte)
Xml türünde bir veri tipimiz var temel olarak sakladığımız ve sorgulanabilir text’leri tutmamıza yarıyor. Dolayısıyla bu artık Sadece bir text veri olmaktan çıkmış olur kendi içerisinde sorgulama yapabilir bir hala Aslında yeniden çıkar
Uniqueidentifier: Dünya üzerinde tek olan bir şey üretmek istiyorsak, örneğin bizim sahadan veri toplayan sistemlerimiz var ve bu sistemler üzerinde biz sürekli veri tabanında bir şeyler kaydediyoruz. Çakışması muhtemel verileri unique’leştirmek istiyorsak bu veri tipini kullanabiliriz.
CHAR Mssql NCHAR Sayısal Veri Tipleri TEXT VARCHAR
Ike-Scan ile VPN Bilgisi toplama