Veri tipleri sql dili altında verileri sınıflandırmak ve kategorilendirmek için kullanılır. Sayılar için ayrı karakterler için ayrı veri tipleri bulunur. Bu veri türleri Mysql, Sql Server , Access sistemleri için kullanılabilir. Sql server sürümleri içerisindeki tablo yapılarında tüm verilerin bir veri tipi olmak zorundadır. Sütunlar ile kayıt yapısı sistemleri içerisinde her sütuna bir veri türü belirlenebilir. Bazı durumlarda sütünlara veri tipi belirlemek yerine otomatik hesaplanan veri tipi yapmak mümkündür.
Sql Veri Tipleri
Sql serverdaki tabloların her sütunun bir adı ve bir tipi olmak zorunda. Sütun adları sayı ile başlayamaz. Sql server tablolarını açarken hangi veri türü tutacağımızı ve tutacağımız verilerin büyüklüğünü hesaplayarak veri tipi seçmek zorundayız. Hızla büyüyen ve kontrolden çıkan veri tipleri veritabanımıza zarar verecektir. Veri tipleri hangi sütunun hangi veri tipini seçeceğimiz ve ona göre bir birleri ile ilişki kuracağımızı seçmek için önemlidir.
MySQL Veri Tipleri
MySQL’de üç ana veri türü vardır: metin, sayı ve tarih.
Veri Tipi | Açıklama |
CHAR(size) | Sabit uzunlukta bir dize (harfler, sayılar ve özel karakterler içerebilir) tutar. Maksimum boyut parantez içerisinde belirtiğiniz kadardır. En fazla alacağı değer 255 karaktere kadar saklayabilir |
VARCHAR(size) | Değişken uzunluklu bir dize (harfler, sayılar ve özel karakterler içerebilir) tutar. Maksimum boyut parantez içerisinde belirtiğiniz kadardır. En fazla alacağı değer 255 karaktere kadar saklayabilir. Not: 255’ten daha büyük bir değer koyduysanız, TEXT türüne dönüştürülür. |
TINYTEXT | Holds a string with a maximum length of 255 characters |
TEXT | En fazla alacağı değer 255 karaktere kadar saklayabilir |
BLOB | İkili uzun objeler için En fazla alacağı değer 65.535 karaktere kadar saklayabilir |
MEDIUMTEXT | Karakter veri tipleri için En fazla alacağı değer 16,777,215 karaktere kadar saklayabilir |
MEDIUMBLOB | ikili uzun objeler için binary veri tipini kapsar. En fazla alacağı değer 16,777,215 karaktere kadar saklayabilir |
LONGTEXT | Karakter veri tipleri için En fazla alacağı değer 4,294,967,295 karaktere kadar saklayabilir. |
LONGBLOB | ikili uzun objeler için binary veri tipini kapsar. En fazla alacağı değer 4,294,967,295 karaktere kadar saklayabilir |
ENUM | Her hangi bir karakter değer girebilirsiniz. 65536 sayısına kadar listeyebilir. Listele olmayan bir değer girilirse boş (null) değer döndürür. |
SET | Set 64 tane listelenebilecek bir veri türüdür. Karakter içerebilir. |
Mysql Sayısal Veri Türleri
Veri Tipi | Açıklama |
TINYINT(boyut) | Ufak sayılar üretilmiş -128 ile 127 arasında kullanılabilir. Maksimum alabileceği değer parantez içerisinde belirtilir. En fazla alacağı parantez içerisinde belirtebileceğimiz değer 255 |
SMALLINT(boyut) | Sayılar üretilmiş -32768 ile 32767 arasında kullanılabilir. Maksimum alabileceği değer parantez içerisinde belirtilir. En fazla alacağı parantez içerisinde belirtebileceğimiz değer 65535 |
MEDIUMINT(boyut) | Büyük sayılar üretilmiş -8388608 ile 16777215 arasında kullanılabilir. Maksimum alabileceği değer parantez içerisinde belirtilir. En fazla alacağı parantez içerisinde belirtebileceğimiz değer 16777215 |
INT(boyut) | Tam sayılar üretilmiş -2147483648 ile 2147483647 arasında kullanılabilir. Maksimum alabileceği değer parantez içerisinde belirtilir. En fazla alacağı parantez içerisinde belirtebileceğimiz değer 4294967295 |
BIGINT(boyut) | Büyük sayılar üretilmiş -9223372036854775808 ile 9223372036854775807 arasında kullanılabilir. Maksimum alabileceği değer parantez içerisinde belirtilir. En fazla alacağı parantez içerisinde belirtebileceğimiz değer 18446744073709551615 |
FLOAT(boyut,d) | Yüzdelik, ondalık sayılar için virgüllü sayılar için kullanılır. Küçük virgüllü sayılar ve ondalıklar için kullanabiliriz. Maksimum alabileceği değer parantez içerisinde belirtilir. Ondalık noktasının sağındaki maksimum basamak sayısı d parametresinde belirtilir. |
DOUBLE(boyut,d) | Yüzdelik, ondalık sayılar için virgüllü sayılar için kullanılır. Büyük virgüllü sayılar ve ondalıklar için kullanabiliriz. Maksimum alabileceği değer parantez içerisinde belirtilir. Ondalık noktasının sağındaki maksimum basamak sayısı d parametresinde belirtilir. |
DECIMAL(boyut,d) | Yüzdelik, ondalık sayılar için virgüllü sayılar için kullanılır. Sabit virgüllü sayılar ve ondalıklar için kullanabiliriz. Maksimum alabileceği değer parantez içerisinde belirtilir. Ondalık noktasının sağındaki maksimum basamak sayısı d parametresinde belirtilir. |
Mysql Tarih Veri Türleri
Veri Tipi | Açıklama |
DATE() | Tarih veri tipidir. Formatı: YYYY-MM-DD |
DATETIME() | Bir tarih ve saat aynı anda kullanmak için veri tipidir. Formatı: YYYY-AA-GG HH: MI: SS |
TIMESTAMP() | Yıl ay gün saat saniye salise olarak anlık olarak anı belirten veri tipidir. Zaman damgası olarak adlandırılır. Formatı: YYYY-AA-GG SA: DK: SS |
TIME() | Saat dakika ve saniye alabilen veri tipidir. Desteklenen aralık ‘-838: 59: 59’ ila ‘838: 59: 59’ arasındadır. |
YEAR() | |
İki basamaklı veya dört haneli biçimde bir yıl değeri alabilir.Dört basamaklı biçimde izin verilen değerler: 1901 – 2155. İki haneli biçimde izin verilen değerler: 70 – 69 arası yıllara göre 70 – 69 arası | |
DATETIME ve TIMESTAMP aynı formatı döndürse bile, çok farklı çalışırlar. Bir INSERT veya UPDATE sorgusunda, TIMESTAMP kendini otomatik olarak geçerli tarih ve saate göre ayarlar.
MS SQL Server Veri Türleri
MS SQL Server Karakter veri türleri:
Veri Tipi | Açıklama | En Fazla Boyut | Depolama |
char(n) | Sabit genişlikli karakter kabul eder | 8,000 Karakter | Karakter sayısı kadar |
varchar(n) | Karakter sayısı kadar genişliğe sahip olur | 8,000 Karakter | 2 byte + karakter sayısı kadar |
varchar(max) | Karakter sayısı kadar genişliğe sahip olur | 1,073,741,824 Karakter | 2 byte + karakter sayısı kadar |
text | Karakter sayısı kadar genişliğe sahip olur | 2GB of yazı verisi | 4 byte + karakter sayısı kadar |
nchar | Boyut sayısı kadar genişliğe sahip olur | 4,000 Karakter | Tanımlanan uzunluğun 2 katı |
nvarchar | Boyut sayısı kadar genişliğe sahip olur | 4,000 Karakter | |
nvarchar(max) | Boyut sayısı kadar genişliğe sahip olur | 536,870,912 Karakter | |
ntext | Boyut sayısı kadar genişliğe sahip olur | 2GB of yazı verisi | |
binary(n) | Binary boyutu kadar genişliğe sahip olur | 8,000 bytes | |
varbinary | Binary boyutu kadar genişliğe sahip olur | 8,000 bytes | |
varbinary(max) | Binary boyutu kadar genişliğe sahip olur | 2GB | |
image | Binary boyutu kadar genişliğe sahip olur | 2GB |
MS Sql Server Sayısal Veri Tipleri
Veri Tipi | Açıklama | Depolama |
bit | Sayısal Değer alır 1 yada 0 boş geçilebilir null değer alır | |
tinyint | 0 ile 255 arası değer alabilir | 1 byte |
smallint | Smallint -32,768 ile 32,767 arası değer alabilir | 2 byte |
int | -2,147,483,648 iile 2,147,483,647arası değer alabilir | 4 byte |
bigint | -9,223,372,036,854,775,808 ile 9,223,372,036,854,775,807 arası değer alabilir | 8 byte |
decimal(p,s) | Tanımlanan değere bağlıdır | 5-17 byte |
-10^38 +1 ile 10^38 –1 arası değer alabilir | ||
P parametresi, saklanabilecek maksimum basamak sayısını (her ikisinin de ondalık noktasının solunda ve sağında) gösterir. p 1 ila 38 arasında bir değer olmalıdır. Varsayılan 18’dir. | ||
146/5000 S parametresi, ondalık noktasının sağında depolanan maksimum basamak sayısını gösterir. s, 0 ile p arasında bir değer olmalıdır. Varsayılan değer 0’dır. | ||
numeric(p,s) | Fixed precision and scale numbers. | 5-17 byte |
Allows numbers from -10^38 +1 to 10^38 –1. | ||
The p parameter indicates the maximum total number of digits that can be stored (both to the left and to the right of the decimal point). p must be a value from 1 to 38. Default is 18. | ||
The s parameter indicates the maximum number of digits stored to the right of the decimal point. s must be a value from 0 to p. Default value is 0 | ||
smallmoney | Para için veri tipidir -214,748.3648 ile 214,748.3647 arasında değer tutabilir | 4 byte |
money | Para için veri tipidir -922,337,203,685,477.5808 ile 922,337,203,685,477.5807 arasında değer tutabilir | 8 byte |
float(n) | Hassas ondalıklı veriler için veri tipidir -1.79E + 308 ile 1.79E + 308 arasında değer tutabilir. | 4 or 8 byte |
N parametresi, alanın 4 veya 8 bayt tutması gerektiğini belirtir. yüzer (24) 4 baytlık bir alana sahiptir ve yüzer (53) 8 baytlık bir alana sahiptir. N’nin varsayılan değeri 53’dür. | ||
real | Hassas ondalıklı sayılar içindir. -3.40E + 38 ile 3.40E + 38 arasında değer tutar | 4 bytes |
MS Sql Tarih Veri Tipleri:
Veri Tipi | Açıklama | Depolama |
datetime | 3,33 milisaniyelik bir hassasiyetle 1 Ocak 1753’ten 31 Aralık 9999’a kadar değer tutabilir | 8 byte |
datetime2 | 3,33 milisaniyelik bir şirketin 1 Ocak 1753’ten 31 Aralık 9999’a kadar değer tutabilir | 6-8 byte |
smalldatetime | From January 1, 1900 to June 6, 2079 with an accuracy of 1 minute | 4 byte |
date | Sadece bir tarihi saklar. 1 Ocak 0001 ile 31 Aralık 9999 arası değer tutabilir | 3 byte |
time | Saat dakika saniye gibi değerler tutabilir | 3-5 byte |
datetimeoffset | Bir zaman dilimi ofseti eklenmiştir. Bunun dışında datetime2 ile aynı değeri tutar | 8-10 byte |
timestamp | Bir satır oluşturulduğunda veya değiştirildiğinde her zaman güncellenen benzersiz bir sayı kaydeder. Zaman damgası değeri bir dahili saate dayanır ve gerçek saate karşılık gelmez. Her bir tabloda yalnızca bir zaman damgası değişkeni olabilir. |
MS SQL Diğer Veri Tipleri
Veri Tipi | Açıklama |
sql_variant | Metin, ntext ve zaman damgası hariç, çeşitli veri türlerine ait 8,000 baytlık veri depolar |
uniqueidentifier | Genel olarak benzersiz bir tanımlayıcı GUID değer tutabilir |
xml | XML veri türünde değer tutmabilir. En fazla boyutu 2 gb olabilir |
cursor | Veritabanı operasyonları için satır satır bilgi okuma işlemleri yapabilmek için gerekli veriyii tutabilir |
table | Daha sonra işlenmek üzere sonuç kümesi kaydeder
|
Access Veri Tipleri
Veri Tipi | Açıklama | Depolama |
Text | Metin veya sayı ve metin kombinasyonları için kullanın. Maksimum 255 karakter değer tutabilir | |
Memo | Büyük miktarlarda metin için kullanılır. 65.536 karaktere kadar saklar. Bir not alanını sıralayamazsınız. Ancak, bunlar aranabilir | |
Byte | 0 ile 255 arasında tam sayıya izin vericek şekilde değer tutar | 1 byte |
Integer | -32,768 ile 32,767 arasında tam sayıya izin vericek şekilde değer tutar | 2 byte |
Long | -2,147,483,648 ile2,147,483,647 arasında tam sayıya izin vericek şekilde değer tutar | 4 byte |
Single | Ondalık veri tipleri içindir. Tek virgül kullanmaya izin verir | 4 byte |
Double | Çift virgül kullanmaya izin verir. Ondalık veri tipleri içindir | 8 byte |
Currency | Para birimi için kullanılabilir. En fazla 15 basamak tam + 4 ondalık basamak tutar. Eğer para birimi için ise ülke para birimini seçebilirsiniz. | 8 byte |
AutoNumber | Otomatik artan sayı kayıt tutmak için kullanılabilir | 4 byte |
Date/Time | Tarih ve zaman tutmak için kullanılabilir | 8 byte |
Yes/No | Mantıksal bir alan, Evet / Hayır, Doğru / Yanlış veya Açık / Kapalı gibi veri tipleri için kullanılabilir. Kodda, Doğru ve Yanlış sabitlerini kullanın (-1 ve 0’a eşdeğer). Evet / Hayır alanlarında boş değerlere izin verilmez. | 1 bit |
Ole Object | Resimleri, ses dosyalarını, videoları depolayabilir | 1GB Üstü |
Hyperlink | Web sayfaları dahil diğer dosyaları ve link bağlantıları içerir. | |
Lookup Wizard | Combobox ve açılır listeleme için kullanılan bir alandır | 4 byte |
Veri tipleri
Hiç yorum yok:
Yorum Gönder