SQL Veri Türleri Konu Anlatımı

 "SQL Veri Türleri"


SQL veri türleri şu kategorilere göre düzenlenmiştir:


  1. Tam sayısallar
  2. Yaklaşık sayısallar
  3. Karakter dizeleri
  4. Unicode karakter dizeleri
  5. Tarih ve saat
  6. İkili dizeler
  7. Diğer veri türleri

1.Tam Sayısallar:

  • BIT: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.
    (Gülnaz ERDURUCAN)
  • TINYINT: 1 bayt yer kaplar, -127 ile 128 arası (normal) veya0-255 (UNSIGNED)
  • SMALLINT: 2 bayt, -32768 ile 32767 arası veya 0-65535

  • INT4 bayt yer kaplar. -2 milyar ile +2 milyar  arası tam sayıları tutar veya 0 - 4 milyar (UNSIGNED)(Merve ÇİÇEK)

  • BIGINT8 bayt. -2^63  ile +2^63  arası tam sayıları tutar veya
    0 - 2.2^63 (UNSIGNED)
    (Merve ÇİÇEK)
  • MONEY: Özellikle parasal değerleri saklamak için kullanılan veri tipidir, int tipindeki veri tipleri ile benzerlik gösterir. Para tipindeki veriler için özellikle kullanılması önerilir, bazı veritabanı tasarımlarında float kullanılmıştır, bu özellikle yuvarlama yapma durumlarında hatalar vermektedir, bu nedenle para tipindeki veriler için daha çok money tercih etmeliyiz.
    (Asiye DÖNMEZ)

UNSIGNED: Tam sayı değişken türleri standart olarak negatif ile pozitif sayılar arası değer aralığına sahiptir. Eğer kullanıcı UNSIGNED seçeneğini kullanırsa değer aralığı 0'dan başlar.

2.Yaklaşık (Virgüllü) Sayısallar:

  • FLOAT4 byte bilgi saklar, +-3.4E38 arasında veri saklar. Uzunluk bilgisi 1 ile 24 arasında olup, 7 anlamlı basamağa kadar çıkmaktadır.   

    Prec.     Size (bayt)
       

    1 - 24     4
       

    25 - 53    8


    (Asiye DÖNMEZ)
  • REAL: 8 byte bilgi saklar, –3.40E + 38 ile -1.18E - 38 arasında olup 15 anlamlı basamağa kadar çıkmaktadır. Float(24)'e tekabül etmektedir.(Büşranur ÇETİNKAYA)

  • DECİMAL(precision,scale): Precision (duyarlılık) ile anlamlı basamak sayısı ve scale (ölçek) ile de virgülden sonraki kaç basamağın dikkate alınacağını belirten bir veri tipidir. Anlamlı basamak sayısı 1 ile 38 arasında tanımlanabilir. Precision faktörü bilginin kapasitesi ile alakalı olduğundan aşağıdaki ilişki modeline sahiptir.
  •     Prec.     Size (bayt)    
        1 - 9      5        
        10 - 19    9    
        20 - 28    13    
        29 - 38    17
  • NUMERIC : Decimal ile aynı işlevi görmektedir. Numeric(n) şeklinde kullanılır. n maksimum kullanılacak basamak sayısıdır.(Büşranur ÇETİNKAYA)

3.Karakter Dizeleri

  • CHAR(n): Sabit uzunlukta bir karakter dizesi. En fazla 8.000 karakter
    (Şükran ARSLAN - Burcu YALÇIN)
  • VARCHAR(n): Değişken uzunlukta bir karakter dizesi. En fazla 8.000 karakter
    (Beyza Nur KELEŞ - Burcu YALÇIN)
  • VARCHAR(max): Değişken uzunlukta bir karakter dizesi. En fazla  2,147,483,647 karakter (Beyza Nur KELEŞ - Burcu YALÇIN)
  • TEXT: Değişken uzunlukta bir karakter dizesi. Maximum 2GB of text veri
    (Burcu YALÇIN)

4.Karakter Dizeleri

İsimlerinden de anlaşılacağı üzere kapasite olarak diğer benzerleriyle eş özelliklere sahiptirler. Tek farkları Unicode (Uluslararası Dil Desteği) karakterleri barındırmalarıdır. Veri türleri: NCHAR(n), NVARCHAR(n), NVARCHAR(max) olarak isimlendirilmiştir.

5.Tarih ve Saat

  • DATE: 3 bayt yer tutar. YYYY-MM-DD yani YIL - AY - GÜN şeklinde tarihi tutar. 0001-01-01 ile 9999-12-31 arasındaki tarih bilgilerinizi sorunsuzca bu veri tipinde verebilirsiniz.
  • TİME: Sadece saat bilgisini  hh:mm:ss[.nnnnnnn] şeklinde tutar. 00:00:00.0000000 ile 23:59:59.9999999 arası değer alır.
  • DATETİME: 8 bayt yer tutar. YYYY-MM-DD hh:mm:ss[.mmm] yani  yıl - ay - gün saat:saniye:salise.milisalise  şeklinde tarihi tutar.(Büşranur ÇETİNKAYA)
  • SMALLDATETİME: 1 Ocak 1900 ile 6 Haziran 2079 tarihleri arasındaki verileri alır.(Merve ÇİÇEK)
  • DATETİME2: DateTime veri tipinden tek farkı daha hassas veri tiplerini tutmasıdır. Yani bu tip ile daha detaylı veri tutarsınız. YYYY-MM-DD hh:mm:ss[.nnnnnnn]
  • DATETİMEOFFSET: datetime2 ile yapısı aynıdır, tek farkı bu veri tipinin diğerinden farklı olarak ülkelere göre tarihi tutmasıdır. (bakınız GMT) YYYY-MM-DD hh:mm:ss[. nnnnnnn] [{+|-}hh:mm] şeklinde tarihi tutar.

6.İkili Dizeler:

  • BİNARY: binary(n) şeklinde n değeri 1 ile 8000 arasında değer alır. n bayt kadar yer kaplar.
  • VARBİNARY: binary’den farklı olarak boyutu kaydedilen dosyanın boyutuna göre değişir. varbinary(n) şeklinde n değeri 1 ile 8000 arasında değer alır. varbinary(MAX) olarak kullanıldığında maksimum 2,147,483,647 bayt (2 GB) büyüklüğünde dosya kaydedilebilir.
  • İMAGE: maksimum 2,147,483,647 bayt (2 GB) büyüklüğünde dosya saklayabilir. Microsoft, SQL Server’ın gelecek versiyonlarında image veri tipini kaldırmayı düşündüğü için yerine varbinary(MAX) kullanabilirsiniz.
    (Merve ÇİÇEK)

7.Diğer Veri Türleri:

  • SQL_VARİANT: farklı veri tiplerindeki değişkenleri kaydedebileceğimiz bir alan sağlar. maksimum boyutu 8016 bayt’tır. varchar(MAX), nvarchar(MAX), varbinary(MAX), text, ntext, image, timestamp, sql_variant, hierarchyid, geography, geometry ve kullanıcı tarafından oluşturulan veri tipleri haricinde diğer bütün veri tiplerini saklayabilir.(Şükran ARSLAN)
  • TİMESTAMP ve ROWVERSİON: Tabloya kayıt eklendiğinde ve güncellendiğinde binary türünde özel bir değer alan veri tipidir. Tarih veri tipleriyle alakası yoktur. Kullanıcı bu alanı değiştiremez veya kendisi değer atayamaz.
  • UNİQUEİDENTİFİER: 16 byte uzunluğunda eşsiz bir GUID değeri saklamak için kullanılır. Guid ve yapısı hakkında internetten bilgi bulabilirsiniz.
  • XML: XML türünde hiyerarşik verileri saklamak için kullanılır. Bellekteki boyutu saklanan xml verisine göre değişir.
    (Merve ÇİÇEK)
  • GEOGRAPHY: Coğrafi koordinatları ve gps verilerini tutmak için kullanılır.
    (Merve ÇİÇEK)
  • GEOMETRY: Öklid koordinat sistemine ait verileri tutmak için kullanılır. Geometrik şekillerin en, boy, yükseklik verilerini saklar.
  • HİERARCHYİD: Ağaç veri modeli veya hiyerarşik olarak sınıflandırılmış verileri saklamak için kullanılır.
  • VOİD: Belirsiz tür.
    (İlknur)


Daha Detaylı Bilgi için Adresler:
  • http://www.w3schools.com/sql/sql_datatypes.asp
  • https://msdn.microsoft.com/tr-tr/library/ms187752.aspx
  • http://www.tutorialspoint.com/sql/sql-data-types.htm
  • http://www.emrahyumuk.com/sql-server-2008-veri-tipleri/
  • http://fatihkabakci.com/Makaleler-SQL_SERVER_VERI_TIPLERI





1 yorum:

OylamaSistemi