logo

SQL Veri Türleri

Veri türleri, veritabanı tablosunda saklanabilecek verilerin doğasını temsil etmek için kullanılır. Örneğin, bir tablonun belirli bir sütununda, dize tipinde bir veri depolamak istiyorsak, bu sütunun dize veri türünü bildirmemiz gerekir.

Veri türleri her veritabanı için temel olarak üç kategoriye ayrılır.

liste düğümü java
  • Dize Veri türleri
  • Sayısal Veri türleri
  • Tarih ve saat Veri türleri

MySQL, SQL Server ve Oracle Veritabanlarındaki Veri Tipleri

MySQL Veri Türleri

MySQL veritabanında kullanılan veri türlerinin listesi. Bu MySQL 8.0'a dayanmaktadır.

MySQL Dize Veri Türleri

CHAR(Boyut) Sayıları, harfleri ve özel karakterleri içerebilen sabit uzunlukta bir dize belirtmek için kullanılır. Boyutu 0 ila 255 karakter arasında olabilir. Varsayılan 1'dir.
VARCHAR(Boyut) Sayıları, harfleri ve özel karakterleri içerebilen değişken uzunluktaki bir dizeyi belirtmek için kullanılır. Boyutu 0 ila 65535 karakter arasında olabilir.
İKİLİ(Boyut) CHAR()'a eşittir ancak ikili bayt dizelerini saklar. Size parametresi bayt cinsinden sütun uzunluğunu belirtir. Varsayılan 1'dir.
VARBİNER(Boyut) VARCHAR()'a eşittir ancak ikili bayt dizelerini saklar. Size parametresi bayt cinsinden maksimum sütun uzunluğunu belirtir.
Yazı Boyutu) Maksimum 255 karakter uzunluğunda olabilen bir dize içerir.
KÜÇÜKMETİN Maksimum 255 karakter uzunluğunda bir dize tutar.
ORTAMETİN Maksimum uzunluğu 16.777.215 olan bir dize tutar.
UZUNMETİN Maksimum 4.294.967.295 karakter uzunluğunda bir dize tutar.
ENUM(değer1; değer2; değer3,...) Olası değerler listesinden seçilen tek bir değere sahip bir dize nesnesi olduğunda kullanılır. Bir ENUM listesinde 65535 değer bulunur. Listede olmayan bir değer girerseniz boş bir değer eklenir.
SET( val1,val2,val3,....) Olası değerler listesinden seçilen, 0 veya daha fazla değere sahip olabilen bir dizeyi belirtmek için kullanılır. Bir SET listesinde aynı anda en fazla 64 değeri listeleyebilirsiniz.
BLOB(boyut) BLOB'lar (İkili Büyük Nesneler) için kullanılır. 65.535 bayta kadar tutabilir.

MySQL Sayısal Veri Türleri

BIT(Boyut) Bit-değer türü için kullanılır. Değer başına bit sayısı boyutta belirtilir. Boyutu 1 ile 64 arasında olabilir. Varsayılan değer 1'dir.
INT(boyut) Tamsayı değeri için kullanılır. İşaretli aralığı -2147483648 ila 2147483647 arasında değişir ve imzasız aralığı 0 ila 4294967295 arasında değişir. Size parametresi, 255 olan maksimum ekran genişliğini belirtir.
TAM SAYI(boyut) INT(boyut)'a eşittir.
FLOAT(boyut; d) Kayan nokta sayısını belirtmek için kullanılır. Size parametresi toplam basamak sayısını belirtir. Virgülden sonraki basamak sayısı şu şekilde belirtilir: D parametre.
FLOAT(p) Kayan nokta sayısını belirtmek için kullanılır. MySQL, FLOAT mı yoksa DOUBLE mı kullanılacağını belirlemek için p parametresini kullandı. Eğer p 0 ile 24 arasında ise veri tipi FLOAT() olur. Eğer p 25 ile 53 arasındaysa veri türü DOUBLE() olur.
ÇİFT(boyut, d) Normal boyutta kayan noktalı bir sayıdır. Size parametresi toplam basamak sayısını belirtir. Ondalık sayıdan sonraki hane sayısı d parametresi ile belirtilir.
ONDALIK(boyut; d) Sabit nokta numarasını belirtmek için kullanılır. Size parametresi toplam basamak sayısını belirtir. Ondalık parametreden sonraki basamak sayısı şu şekilde belirtilir: D parametre. Boyut için maksimum değer 65, varsayılan değer ise 10'dur. D 30'dur ve varsayılan değer 0'dır.
DEC(boyut; d) DECIMAL(boyut, d) değerine eşittir.
BOOL True ve false Boole değerlerini belirtmek için kullanılır. Sıfır yanlış olarak kabul edilir ve sıfırdan farklı değerler doğru olarak kabul edilir.

MySQL Tarih ve Saat Veri Türleri

TARİH YYYY-AA-GG tarih biçimini belirtmek için kullanılır. Desteklenen aralığı '1000-01-01' ila '9999-12-31' arasındadır.
TARİHSAAT(fsp) Tarih ve saat kombinasyonunu belirtmek için kullanılır. Formatı YYYY-AA-GG ss:dd:ss şeklindedir. Desteklenen aralığı '1000-01-01 00:00:00' ila 9999-12-31 23:59:59' arasındadır.
ZAMAN DAMGASI(fsp) Zaman damgasını belirtmek için kullanılır. Değeri, Unix döneminden ('1970-01-01 00:00:00' UTC) bu yana geçen saniye sayısı olarak saklanır. Formatı YYYY-AA-GG ss:dd:ss şeklindedir. Desteklenen aralığı '1970-01-01 00:00:01' UTC'den '2038-01-09 03:14:07' UTC'ye kadardır.
TIME(fsp) Saat formatını belirtmek için kullanılır. Formatı ss:dd:ss şeklindedir. Desteklenen aralığı '-838:59:59' ile '838:59:59' arasıdır
YIL Bir yılı dört haneli biçimde belirtmek için kullanılır. 1901 ile 2155 ve 0000 arasında dört haneli formatta izin verilen değerler.

SQL Server Veri Türleri

SQL Server Dize Veri Türü

karakter(n) Sabit genişlikte karakter dizisi veri türüdür. Boyutu 8000 karaktere kadar olabilir.
varchar(n) Değişken genişlikte karakter dizisi veri türüdür. Boyutu 8000 karaktere kadar olabilir.
varchar(maks) Değişken genişlikte karakter dizisi veri türleridir. Boyutu 1.073.741.824 karaktere kadar olabilir.
metin Değişken genişlikte karakter dizisi veri türüdür. Boyutu 2 GB'a kadar metin verisi olabilir.
nchar Sabit genişlikte bir Unicode dize veri türüdür. Boyutu 4000 karaktere kadar olabilir.
Nvarchar Değişken genişlikte bir Unicode dize veri türüdür. Boyutu 4000 karaktere kadar olabilir.
metin Değişken genişlikte bir Unicode dize veri türüdür. Boyutu 2 GB'a kadar metin verisi olabilir.
ikili(n) Sabit genişlikte bir İkili dize veri türüdür. Boyutu 8000 byte'a kadar çıkabilir.
değişken ikili Değişken genişlikte bir İkili dize veri türüdür. Boyutu 8000 byte'a kadar çıkabilir.
görüntü Aynı zamanda değişken genişlikte bir İkili dize veri türüdür. Boyutu 2 GB'a kadar olabilir.

SQL Server Sayısal Veri Türleri

biraz 0, 1 veya null olabilen bir tamsayıdır.
minik 0'dan 255'e kadar tam sayılara izin verir.
Küçük -32,768 ile 32,767 arasındaki tam sayılara izin verir.
Dahili -2,147,483,648 ile 2,147,483,647 arasındaki tam sayılara izin verir.
büyük -9,223,372,036,854,775,808 ile 9,223,372,036,854,775,807 arasındaki tam sayılara izin verir.
yüzer(n) -1,79E+308'den 1,79E+308'e kadar değişen hassas sayı verilerini belirtmek için kullanılır. n parametresi alanın 4 baytı mı yoksa 8 baytı mı tutması gerektiğini gösterir. N'nin varsayılan değeri 53'tür.
gerçek -3,40E+38 ile 3,40E+38 arasında değişen hassas sayı verileridir.
para -922,337,233,685,477,5808 ila 922,337,203,685,477,5807 arasındaki parasal verileri belirtmek için kullanılır.

SQL Server Tarih ve Saat Veri Türü

tarihsaat Tarih ve saat kombinasyonunu belirtmek için kullanılır. 1 Ocak 1753'ten 31 Aralık 9999'a kadar olan aralığı 3,33 milisaniyelik bir doğrulukla destekler.
tarihsaat2 Tarih ve saat kombinasyonunu belirtmek için kullanılır. 1 Ocak 0001'den 31 Aralık 9999'a kadar olan aralığı 100 nanosaniye doğrulukla destekler
tarih Yalnızca tarihi saklamak için kullanılır. 1 Ocak 0001'den 31 Aralık 9999'a kadar olan aralığı destekler
zaman Zamanı yalnızca 100 nanosaniyelik bir doğrulukla saklar
zaman damgası Yeni bir satır oluşturulduğunda veya değiştirildiğinde benzersiz bir sayı saklar. Zaman damgası değeri dahili bir saati temel alır ve gerçek zamana karşılık gelmez. Her tablo yalnızca bir kerelik damga değişkeni içerebilir.

SQL Server Diğer Veri Türleri

int ayrıştırma
SQL_variant Metin, zaman damgası ve ntext dışında çeşitli veri türleri için kullanılır. 8000 byte'a kadar veri depolar.
XML XML formatlı verileri saklar. Maksimum 2GB.
imleç Veritabanı işlemleri için kullanılan bir imlece referansı saklar.
masa Daha sonraki işlemler için sonuç kümesini saklar.
benzersiz tanımlayıcı GUID'i (Global olarak benzersiz tanımlayıcı) saklar.

Oracle Veri Türleri

Oracle String veri türleri

CHAR(boyut) Karakter verilerini önceden tanımlanmış uzunluk dahilinde depolamak için kullanılır. 2000 byte'a kadar saklanabilir.
NCHAR(boyut) Ulusal karakter verilerinin önceden tanımlanmış uzunluk dahilinde saklanması için kullanılır. 2000 byte'a kadar saklanabilir.
VARCHAR2(boyut) Değişken dize verilerini önceden tanımlanmış uzunluk dahilinde depolamak için kullanılır. 4000 byte'a kadar saklanabilir.
VARCHAR(BOYUT) VARCHAR2(boyut) ile aynıdır. Ayrıca VARCHAR(size) kullanabilirsiniz, ancak VARCHAR2(size) kullanılması önerilir.
NVARCHAR2(boyut) Unicode dize verilerini önceden tanımlanmış uzunluk dahilinde depolamak için kullanılır. NVARCHAR2 veri tipinin boyutunu belirtmemiz gerekiyor. 4000 byte'a kadar saklanabilir.

Oracle Sayısal Veri Türleri

NUMBER(p, s) Hassas p ve ölçek s'yi içerir. Hassasiyet p 1'den 38'e kadar değişebilir ve ölçek s -84'ten 127'ye kadar değişebilir.
FLOAT(p) NUMBER veri türünün bir alt türüdür. Hassasiyet p 1'den 126'ya kadar değişebilir.
BINARY_FLOAT İkili hassasiyet (32 bit) için kullanılır. Uzunluk baytı dahil 5 bayt gerektirir.
BINARY_DOUBLE Çift ikili hassasiyet (64 bit) için kullanılır. Uzunluk baytı dahil 9 bayt gerektirir.

Oracle Tarih ve Saat Veri Türleri

TARİH Geçerli bir tarih-saat biçimini sabit uzunlukta depolamak için kullanılır. Aralığı MÖ 1 Ocak 4712'den MS 31 Aralık 9999'a kadar değişmektedir.
ZAMAN DAMGASI Geçerli tarihi YYYY-AA-GG biçiminde saat ss:dd:ss biçiminde saklamak için kullanılır.

Oracle Büyük Nesne Veri Türleri (LOB Türleri)

BLOB Yapılandırılmamış ikili verileri belirtmek için kullanılır. Menzili 2'ye kadar çıkıyor32-1 bayt veya 4 GB.
BDOSYA İkili verileri harici bir dosyada depolamak için kullanılır. Menzili 2'ye kadar çıkıyor32-1 bayt veya 4 GB.
CLOB Tek baytlık karakter verileri için kullanılır. Menzili 2'ye kadar çıkıyor32-1 bayt veya 4 GB.
NCLOB Tek baytlı veya sabit uzunluklu çok baytlı ulusal karakter kümesi (NCHAR) verilerini belirtmek için kullanılır. Menzili 2'ye kadar32-1 bayt veya 4 GB.
HAM(boyut) Değişken uzunluklu ham ikili verileri belirtmek için kullanılır. Aralığı satır başına 2000 bayta kadardır. Maksimum boyutu belirtilmelidir.
UZUN HAM Değişken uzunluklu ham ikili verileri belirtmek için kullanılır. 2'ye kadar aralığı31Satır başına -1 bayt veya 2 GB.