Ms Sql - Veri Tipleri
MSSQL çeşitli veri tiplerini barındırmaktadır. Bu veri tipleri farklı bellek gereksinimlerini doğurmaktadır. Kolonda veya bir değişkende doğru veri tipini kullanmak performans için gereklidir.
Aşağıda MSSQL'de bulunan veri tiplerinin ana başlıkları verilmiştir.
# | İNGİLİZCE ADI | TÜRKÇE ADI |
---|---|---|
1 | Exact numeric | Tam sayısal |
2 | Approximate numeric | Yaklaşık sayısal |
3 | Date and time | Tarih ve Zaman |
4 | Character strings | Karakter Metin |
5 | Unicode character strings | Unicode Karakter Metin |
6 | Binary strings | Binary Metin |
7 | Other data types | Diğer Data Tipleri |
Tam sayısal Veri Tipleri
VERİ TİPİ | AÇIKLAMA | ARALIK | HAFIZA |
---|---|---|---|
bigint | Belirtilen aralıklardaki sayılar için kullanılır | -9,223,372, 036,854,775,808 9,223,372, 036,854,775,807 |
8 byte |
int | Belirtilen aralıklardaki sayılar için kullanılır | -2,147, 483,648 2,147, 483,647 |
4 byte |
smallint | Belirtilen aralıklardaki sayılar için kullanılır | -32,767 32,768 |
2 byte |
tinyint | Belirtilen aralıklardaki sayılar için kullanılır | 0 255 |
1 byte |
bit | 0, 1, veya NULL değerler alabilir | 0 1 |
1 byte |
decimal | Ölçek ve sabit hassas sayılar için kullanılır | - 10 üzeri 38 +1 10 üzeri 38 - 1 |
5-17 byte |
numeric | Ölçek ve sabit hassas sayılar için kullanılır | - 10 üzeri 38 +1 10 üzeri 38 - 1 |
5-17 byte |
money | Parasal veriler için kullanılır | -922,337, 203, 685,477.5808 +922,337, 203, 685,477.5807 |
8 byte |
smallmoney | Parasal veriler için kullanılır | -214,478.3648 +214,478.3647 |
4 byte |
Yaklaşık sayısal Veri Tipleri
VERİ TİPİ | AÇIKLAMA | ARALIK | HAFIZA |
---|---|---|---|
float(n) | Küsüratlı numaralar için kullanılır | -1.79E+308 1.79E+308 |
n değerine bağlıdır. |
real | Küsüratlı numaralar için kullanılır | -3.40E+38 3.40E+38 |
4 byte |
Tarih ve Zaman Veri Tipleri
VERİ TİPİ | AÇIKLAMA | ARALIK | HAFIZA |
---|---|---|---|
DateTime | Tarih ve saat belirtmek için kullanılır. 3,33 milisaniye hassasiyete sahiptir. | 1753-01-01 9999-12-31 |
8 byte |
smalldatetime | Tarih ve saat belirtmek için kullanılır. 100 nanosaniye hassasiyete sahiptir. | 1900-01-01 2079-06-06 |
4 byte |
date | Yalnızca tarihleri saklamak için kullanılır. | 0001-01-01 9999-12-31 |
3 byte |
time | 100 nanosaniye hassasiyette sadece zaman değerlerini saklamak için kullanılır. | 00:00:00.0000000 23:59:59.9999999 |
5 byte |
datetimeoffset | Tarih saatine benzer, ancak saat dilimi uzaklığı vardır. | 0001-01-01 9999-12-31 |
10 byte |
datetime2 | Bir tarih ve saat belirtmek için kullanılır. | 0001-01-01 9999-12-31 |
6 byte |
Karakter Metin Veri Tipleri
VERİ TİPİ | AÇIKLAMA | ARALIK | HAFIZA |
---|---|---|---|
char | Sabit genişliğe sahip bir karakter metinidir. | 0 char 8000 char |
n byte |
varchar | Değişken genişliğe sahip bir karakter metinidir. | 0 char 8000 char |
n byte + 2 byte |
varchar (max) | Değişken genişliğe sahip bir karakter metinidir. | 0 char 2 üzeri 31 char |
n byte + 2 byte |
text | Değişken genişliğe sahip bir karakter metinidir. | 0 char 2,147,483,647 char |
n byte + 4 byte |
Unicode Karakter Metin Veri Tipleri
VERİ TİPİ | AÇIKLAMA | ARALIK | HAFIZA |
---|---|---|---|
nchar | Sabit genişlikte bir Unicode metnidir | 0 char 4000 char |
n byte * 2 |
nvarchar | Değişken genişlikte bir Unicode metnidir | 0 char 4000 char |
(n byte + 2) * 2 |
ntext | Değişken genişlikte bir Unicode metnidir | 0 char 1,073,741,823 char |
metin uzunluğu * 2 |
Binary Metin Veri Tipleri
VERİ TİPİ | AÇIKLAMA | ARALIK | HAFIZA |
---|---|---|---|
binary | Sabit genişlikli bir ikili metindir. | 0 byte 8000 byte |
n byte |
varbinary | Değişken genişlikli bir ikili metindir. | 0 byte 8000 byte |
Girilen gerçek veri uzunluğu + 2 bayt |
image | Değişken genişlikli bir ikili metindir. | 0 byte 2,147,483,647 byte |
Diğer Veri Tipleri
VERİ TİPİ | AÇIKLAMA |
---|---|
Cursor | Cursor referansı içeren değişkenler veya stored procedure OUTPUT parametreleri için bir veri türüdür. |
rowversion | Veritabanı içinde otomatik olarak oluşturulan, benzersiz ikili sayıları gösteren bir veri türüdür. |
Hierarchyid | Bu veri türü hiyerarşideki bir konumu temsil eder. |
Uniqueidentifier | Tekrarlanmayan karakter ifadesini saklar. |
Sql_variant | SQL sunucusu tarafından desteklenen veri türlerinin değerlerini saklar. |
XML | XML tipindeki verileri kolonda saklar. |
Geometry Spatial Type | Düz koordinat sistemindeki verileri temsil eder. |
Geography Spatial Type | Yuvarlak koordinat sistemindeki verileri temsil eder. |
table | Daha sonraki işlemler için bir sonuç kümesi saklar. |