Ana içeriğe atla

SQL Veri Türleri: Yeni Başlayanlar için Temel Rehber

MySQL, PostgreSQL ve SQL Server’da SQL veri türlerine hâkim olun. Performansı ve veri bütünlüğünü optimize etmek için doğru sayısal, metin ve tarih biçimlerini seçmeyi öğrenin.
Güncel 3 Eki 2026  · 14 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

SQL ile çalışmaya ilk başladığınızda, veri türlerini basit etiketler olarak görmek kolaydır. Tek bir sütun ya sayıları, ya metni, ya tarihleri ya da özel veri türlerini saklar. Ancak bir veri türü yalnızca bir etiket değildir. Veritabanının gözünde bir değerin ne olduğunu tanımlayan bir kurallar bütünüdür.

Uygulamada, veri türleri SQL’in veritabanınızdaki bilgiyi “anlama” biçimini şekillendirir. SQL’e verinizi doğru biçimde okuması, karşılaştırması ve işlemesi için gereken bağlamı veren bir talimat setidir.

Bu eğitimde, başlıca SQL veri türü kategorilerine bakacak ve farklı veritabanı yönetim sistemlerinde nasıl davrandıklarını göreceğiz. Boyunca verilen örnekleri adım adım takip etmenizi öneririm.

Veritabanı tablolarıyla daha önce çok çalışmadıysanız, SQL Fundamentals kursumuz, bu tür veri kümelerinin nasıl yapılandığına dair net ve başlangıç seviyesine uygun bir temel sunar.

SQL Veri Türleri Nedir?

Bir veri türü, verinizin biçimini tanımlar: Bir sütunun hangi türde değerler tutabileceğini, bu değerlerin dahili olarak nasıl saklandığını ve üzerinde hangi işlemlerin mantıklı olduğunu. 

Bu, seçtiğiniz veri türünün yalnızca tablo tasarımını etkilemediği anlamına gelir. Depolama ihtiyaçlarını, sorgu performansını, sıralama davranışını, matematiksel işlemleri ve hatta farklı sistemlerin aynı değeri nasıl yorumladığını etkileyebilir.

İşte birden fazla türü bir arada kullanan basit bir tablo:

CREATE TABLE employees (
    id INT,
    name VARCHAR(50),
    start_date DATE,
    active BOOLEAN,
    salary DECIMAL(10, 2)
);

Bu tablodaki her sütun, tutabileceği veri türünü tanımlar.

  • id sütunu, her çalışana benzersiz bir tanımlayıcı vererek tam sayıları saklar.

  • name sütunu, 50 karaktere kadar metin tutabilir; böylece kısa adları saklayabilirsiniz.

  • start_date sütunu, takvim tarihleri içindir.

  • active sütunu, doğru veya yanlış değerleri tutar; bu da şu anda aktif olan çalışanları takip etmeyi kolaylaştırır.

  • Son olarak, salary sütunu, kuruşlar için ondalık noktadan sonra iki basamak olacak şekilde 10 basamak hassasiyetle parasal tutarları saklar.

Birlikte, bu sütunlar her alan için izin verilen değer türleri hakkında kurallar uygulayan, daha öngörülebilir ve üzerinde çalışması daha kolay bir yapılandırılmış tablo oluşturur. 

Şimdi buna bazı örnek veriler ekleyelim ve PostgreSQL kullanarak ortaya çıkabilecek tabloya bakalım.

INSERT INTO employees (id, name, start_date, active, salary)
VALUES
    (1, 'Alice Johnson', '2025-01-15', TRUE, 55000.00),
    (2, 'Bob Smith', '2024-06-01', FALSE, 62000.50);
    
SELECT *
FROM employees;

id

name

start_date

active

salary

1

Alice Johnson

2025-01-15

TRUE

55000.00

2

Bob Smith

2024-06-01

FALSE

62000.50

Farklı veritabanı sistemleri aynı ilkeleri izler ancak adlandırma ve özelliklerde farklılık gösterir. Örneğin, SQL Server BOOLEAN yerine BIT kullanır ve MySQL BOOLEAN'ı küçük bir tamsayı olarak ele alır.

SQL Veri Türlerinin Kategorileri

Dört ana veri türü kategorisi vardır: sayısal, karakter, tarih ve özel. Her birine ayrıntılı bakalım.

Yaygın SQL Veri Türleri

Sayısal veri türleri

Sayısal türler tam sayıları veya ondalıkları saklar. Seçtiğiniz sayısal tür, saklanan sayıların aralığını, hassasiyetini ve depolama boyutunu belirler. Bu kategoride en yaygın veri türleri şunlardır:

  • tam sayılar: INT, SMALLINT ve BIGINT gibi, tam sayılar için,

  • ondalıklar: DECIMAL(p, s) ve NUMERIC(p, s) gibi, tam ondalık değerler için,

  • ve kayan noktalılar: FLOAT ve DOUBLE gibi, küçük yuvarlama farkları oluşturabilen yaklaşık değerler için

Farklı sayısal veri türlerini göstermek için bir örnek tablo oluşturalım:

CREATE TABLE products (
    product_id INT,
    price DECIMAL(8, 2),
    measurement FLOAT
);

INSERT INTO products VALUES 
    (1, 19.99, 3.1415),
    (2, 250.56, 2.71828);

SELECT * FROM products;

Çıktı tablosu şöyle görünürdü:

product_id

price

measurement

1

19.99

3.1415

2

250.56

2.71828

Gördüğünüz gibi, ilk sütun yalnızca tam sayı olacak şekilde kısıtlanmıştır, ikincisi ondalık noktadan sonra iki basamaklı ondalık sayıdır ve üçüncüsü belirsiz sayıda basamağa sahip ondalık bir değerdir.

İlk bakışta DECIMAL ve FLOAT aynı gibi görünebilir. Ancak önemli bir fark vardır: DECIMAL belirli sayıda ondalık basamakla kesin bir sayı saklarken, FLOAT sistemden sisteme az da olsa değişebilen yaklaşık bir değer tutar. 

Hassasiyet gerektiğinde ondalık kullanmak ve yalnızca küçük yuvarlama hataları kabul edilebilirse kayan noktalılara güvenmek önemlidir.

Kategori

Veri tür(ler)i

Amaç / Ne saklar

Örnek değer(ler)

Sayısal

INT, SMALLINT, BIGINT

Farklı boyutlarda tam sayılar

1, 42, 1000

Sayısal

DECIMAL(p,s), NUMERIC(p,s)

Sabit hassasiyetli kesin ondalık değerler

19.99, 250.56

Sayısal

FLOAT, DOUBLE

Yaklaşık ondalık değerler. Küçük yuvarlama farkları oluşturabilir

3.1415, 2.71828

Karakter ve dize veri türleri

Karakter türleri metni saklar. Performans ve depolama verimliliği açısından farklılık gösteren birkaç tür vardır.

  • CHAR(n), sabit uzunluklu karakter kümeleri içindir. Eyalet kodları veya havalimanı kısaltmaları gibi her zaman aynı boyuta sahip veriler için kullanışlıdır.

  • VARCHAR(n), değişken uzunluklu karakter kümeleri içindir. İsimler, e-posta adresleri ve diğer kullanıcı girdileri için kullanışlıdır.

  • TEXT ve benzeri türler, blog yazıları veya ürün açıklamaları gibi büyük, yapılandırılmamış metin blokları için kullanılır.

SQL Server gibi bazı sistemler, NCHAR ve NVARCHAR gibi Unicode dize türlerini de destekler; bu, veriniz Latin, Çince veya Kiril gibi birden çok yazı sistemi içerdiğinde faydalıdır.

Kategori

Veri tür(ler)i

Amaç / Ne saklar

Örnek değer(ler)

Karakter / Dize

CHAR(n)

Sabit uzunluklu metin

'US', 'CA'

Karakter / Dize

VARCHAR(n)

Değişken uzunluklu metin

'Alice Johnson', 'Bob Smith'

Karakter / Dize

TEXT

Yapılandırılmamış büyük metin blokları

'Tercih edilen iletişim e-posta.', 'Her sipariş için fatura kopyası gerekir.'

Karakter / Dize

NCHAR(n), NVARCHAR(n)

Sabit veya değişken uzunluklu Unicode metin

'Å', 'É', 'München', 'São Paulo'

Farklı dize veri türlerini gösteren bir örnek tabloyla bunun nasıl göründüğüne bakalım:

CREATE TABLE customers (
    id INT,
    country_code CHAR(2),
    name VARCHAR(100),
    notes TEXT
);

INSERT INTO customers VALUES
    (1, 'US', 'Alice Johnson', 'Preferred contact by email.'),
    (2, 'CA', 'Bob Smith', 'Requires invoice copy for each order.');
    
SELECT * FROM customers;

Bu tablonun sonunda nasıl görüneceğine bakalım. Her bir dize veri türüne kodlanan uzunluk farklarını görebilirsiniz.

id

country_code

name

notes

1

US

Alice Johnson

Preferred contact by email.

2

CA

Bob Smith

Requires invoice copy for each order.

Burada, CHAR(2) tutarlı uzunluk zorunluluğu getirirken, VARCHAR ve TEXT daha fazla esneklik sağlar.

Tarih ve saat veri türleri

Tarih ve saat veri türleri, zamansal bilgiyi doğru biçimde saklamanıza ve sorgulamanıza imkân tanır. Yeni başlayanlar bu tür bilgileri sayısal veya dize veri türleriyle kodlayabileceklerini düşünebilirler. Ancak bunu yapmak, veri analizi aşamalarında sorunlara yol açabilir. Özel bir takvim veri türü kullanmak her şeyi daha sorunsuz hâle getirir.

En yaygın kullanılan üç tür şunlardır:

  • yıl, ay ve günü kodlayan DATE,

  • saat, dakika ve saniyeyi saklayan TIME,

  • ve birleşik tarih ve saati saklayan DATETIME veya TIMESTAMP.

Modern veritabanları, PostgreSQL’deki TIMESTAMPTZ gibi, kesirli saniyeleri veya saat dilimi farkındalığı olan veri türlerini dahi destekleyebilir; bu tür, zaman damgalarını UTC’de saklar ve oturumunuzun saat dilimine alma sırasında otomatik olarak dönüştürür.

Kategori

Veri tür(ler)i

Amaç / Ne saklar

Örnek değer(ler)

Tarih / Saat

DATE

Takvim tarihleri (yıl, ay, gün)

'2025-11-26'

Tarih / Saat

TIME

Günün saati (saat, dakika, saniye)

'09:30:00', '18:45:30'

Tarih / Saat

DATETIME, TIMESTAMP

Birleşik tarih ve saat

'2025-11-20 14:15:00', '2025-11-21 09:00:00'

Tarih / Saat

TIMESTAMPTZ

Saat dilimli birleşik tarih ve saat (PostgreSQL)

'2025-11-21 09:00:00+00'

Bu zamansal veri türlerini göstermek için basit bir tablo oluşturalım:

CREATE TABLE events (
    event_id INT,
    event_date DATE,
    start_time TIME,
    created_at DATETIME
);

INSERT INTO events VALUES
    (1, '2025-11-26', '09:30:00', '2025-11-20 14:15:00'),
    (2, '2025-12-01', '18:45:30', '2025-11-21 09:00:00');
    
SELECT * FROM events;

Tablo şöyle görünür:

event_id

event_date

start_time

created_at

1

2025-11-26

09:30:00

2025-11-20 14:15:00

2

2025-12-01

18:45:30

2025-11-21 09:00:00

Doğru tarih veya zaman damgası türünü seçmenin, saklayabileceğiniz veri türünü nasıl etkilediğini görebilirsiniz.

Boolean ve diğer özel veri türleri

Tüm veri türleri önceki kategorilere tam olarak sığmaz. Bunlar için, belirli kullanım durumlarına yönelik bir dizi özel amaçlı tür bulunur. En yaygın görebileceğiniz türlerden bazıları şunlardır:

  • Doğru-yanlış değerleri (sisteme bağlı olarak BOOLEAN, BOOL veya BIT) kaydetmek için,

  • Görüntüler, dosyalar veya serileştirilmiş nesneler için ikili veriler (BLOB),

  • Tam boyutlu belgeler için büyük metin (CLOB),

  • Şemasız veya iç içe geçmiş veriler için JSON (MySQL ve PostgreSQL’de)

  • Listeler için ARRAY (yalnızca PostgreSQL’de)

  • Sayısal dizilere bağlı olmayan benzersiz tanımlayıcılar için UUID — örneğin bir oturum belirteci veya küresel izleme kodu.

Özel türler, yalnızca geleneksel tabloların tek başına yakalayamadığı yapıyı daha zengin veya esnek veriler olarak saklamanıza olanak tanır.

Kategori

Veri tür(ler)i

Amaç / Ne saklar

Örnek değer(ler)

Özel / Boolean / Diğer

BOOLEAN, BOOL, BIT

Doğru veya yanlış değerler

TRUE, FALSE

Özel / Boolean / Diğer

BLOB

İkili büyük nesneler (görüntüler, dosyalar)

[binary image data]

Özel / Boolean / Diğer

CLOB

Büyük metin belgeleri

'Full contract text...'

Özel / Boolean / Diğer

JSON

Yapılandırılmış veya iç içe geçmiş veriler

'{"name": "Alice"}'

Özel / Boolean / Diğer

ARRAY

Değer listeleri (yalnızca PostgreSQL)

[1,2,3]

Özel / Boolean / Diğer

UUID

Küresel olarak benzersiz tanımlayıcılar

'550e8400-e29b-41d4-a716-446655440000'

Farklı Sistemlerde SQL Veri Türleri

Veritabanı yönetim sistemleri, bu veri türlerini kullanma ayrıntılarında farklılaşır. Genel kategoriler aynı kalsa da, tam adlar ve davranışlar sistemler arasında değişir.

Farklı sistemler, veri türlerini kendi önceliklerine göre tasarlar; bu yüzden davranışları farklıdır. Bazı farklar, kullanılan anahtar sözcük gibi küçüktür. Diğerleri ise metin uzunluğu sınırları, boolean’ların nasıl saklandığı ya da sistemin özel biçimleri destekleyip desteklemediği gibi pratikte verinin davranışını değiştirir.

MySQL hız ve sadeliği vurgular; bu nedenle Boolean değerleri için pratik ve hafif bir seçenek olan TINYINT’i (teknik olarak sayılar olarak saklanır) kullanır. Sıkı tür anlamlarından ziyade performansı ve geniş uyumluluğu tercih eder. 

PostgreSQL standartlara uyum ve genişletilebilir olmayı hedefler. Bu, gerçek bir BOOLEAN türü kullanmasında ve bir sütunda doğrudan yapılandırılmış veya iç içe geçmiş verileri saklamak için ARRAY ve JSONB gibi daha zengin veri türü seçeneklerine sahip olmasında yansır. 

SQL Server ise kurumsal ortamlarda öngörülebilir performans ve Microsoft ekosistemiyle derin entegrasyon için tasarlanmıştır. Bu nedenle Boolean’lar için BIT ve büyük metin için VARCHAR(MAX) gibi güçlü biçimde tanımlanmış türler sunar. 

Aşağıdaki tablo, üç büyük SQL sisteminin ortak kavramları nasıl uyguladığını yanyana gösterir.

Kavram

MySQL

PostgreSQL

SQL Server

Sayısal (tam sayılar)

Genel amaçlı tam sayılar için INT kullanır

Tam sayılar için INTEGER kullanır

Tam sayılar için INT kullanır

Ondalık / sabit hassasiyetli sayılar

Kesin sayısal değerler için DECIMAL(p, s) kullanır

Tam hassasiyetli saklama için NUMERIC(p, s) kullanır

Kesin sayısal değerler için DECIMAL(p, s) kullanır

Standart uzunlukta metin dizeleri

Değişken uzunluklu metin için VARCHAR(n) kullanır

Değişken uzunluklu metin için VARCHAR(n) kullanır

Değişken uzunluklu metin için VARCHAR(n) kullanır

Büyük metin depolama

Uzun metin alanları için TEXT kullanır

Uzun metin alanları için TEXT kullanır

Uzun metin alanları için VARCHAR(MAX) kullanır

Boolean değerler

Boolean’ları TINYINT(1) (0 veya 1) olarak saklar

Yerel BOOLEAN değerleri (true/false) kullanır

Boolean benzeri veriler için BIT (0 veya 1) kullanır

Otomatik artan birincil anahtarlar

AUTO_INCREMENT anahtar sözcüğünü kullanır

SERIAL veya IDENTITY kullanır

IDENTITY kullanır

Çok büyük karakter dizeleri

Son derece büyük metin için LONGTEXT kullanır

Pratikte üst sınırı olmayan çok büyük VARCHAR’a izin verir

Büyük veya sınırsız metin için VARCHAR(MAX) kullanır

JSON depolama

Yapılandırılmış JSON verileri için JSON destekler

JSON (metin) ve JSONB (ikili optimize) her ikisini de destekler

JSON’u destekler (metin olarak saklanır)

Dizi depolama

Dizi türlerini desteklemez

Tek sütunda liste saklamak için ARRAY destekler

Dizi türlerini desteklemez

Pratikte bunun anlamı

Her sistemin temel tasarım hedefleri ve optimize edildiği iş yükleri, çalışma biçimini doğrudan etkiler. 

Bu farklılıklar, birçok ortak SQL becerisi sistemler arasında kolayca aktarılabilse de, maksimum metin boyutu, otomatik artış anahtar sözcükleri veya karmaşık yapılar için destek gibi ayrıntıların değişebileceği anlamına gelir. 

Yalnızca tek bir sistemi kullanıyorsanız, veritabanı yönetim sisteminizin özelliklerinde uzmanlaşmak kolaydır. Ancak iş veya bölüm değişikliği, farklı kurallara sahip başka bir veritabanı yönetim sistemine geçmenizi gerektirebilir. 

Bu nedenle, SQL öğrenirken, yalnızca tek bir sistemin ayrıntılarına güvenmek yerine veri türlerinin arkasındaki ortak kavramları tanımak faydalıdır.

Doğru Veri Türünü Seçmek

Bir veri türü seçmek bazen çok basittir. Ama bazen biraz düşünmeyi gerektirir. İyi bir seçim, verinizi sorgulamayı kolaylaştırır, depolamayı sade tutar ve ileride oluşabilecek hataları önler. Geniş kategori, büyük olasılıkla sahip olduğunuz veri türüne göre belirlenecektir. 

Sayısal veriler

Örneğin, ölçüm verileri sakladığınızı varsayalım. Elbette takvim veya dize değil, bir tür sayısal veri isteyeceksiniz. Peki saklamak istediğiniz ölçümlerin hassasiyeti ne? Tam sayılar yeterli mi, yoksa ondalıklar mı gerekiyor? Sabit sayıda anlamlı basamak istiyor musunuz?

Sonrasında depolama ve verimliliği düşünmelisiniz. Verinizi güvenle tutabilecek en küçük tam sayı türünü seçmek tablolarınızı verimli tutmaya yardımcı olur. Daha küçük türler daha az depolama kullanır ve özellikle büyük tablolarda performansı iyileştirebilir. Genellikle, beklenen aralığınız için yeterince büyük ama gereksiniminizi çok aşmayan bir tür seçmek istersiniz.

Bir tam sayı işe yaramadığında, DECIMAL veya FLOAT seçeneğiniz vardır. Kayan noktalı türler, değerleri tam olarak saklamak yerine yaklaşıklar; bu da finansal, bilimsel veya doğruluk açısından kritik işlerde yuvarlama hatalarına yol açabilir. 

DECIMAL ve NUMERIC kesin değerler saklar; bu da fiyatlar veya oranlar içeren her şey için onları daha iyi kılar. Ancak, kaydettiğiniz ondalık basamak sayısına bağlı olarak DECIMAL’lar FLOAT’lara göre genelde daha fazla depolama gerektirir.

Karakter ve dize veriler

Dize verilerde, her girdinin ne kadar büyük olmasını istediğinizi düşünmelisiniz. 

Genellikle, VARCHAR alanlarını varsayılan olarak maksimum uzunluğa ayarlamak yerine, gerçekçi boyutlandırmak istersiniz. Aşırı büyük sınırlar genellikle esnekliği artırmaz, ancak gelecekteki geliştiricileri verinin beklenen boyutu konusunda yanıltabilir. 

Beklenen girdilerinizi — isimler, e-postalar veya ürün başlıkları — düşünün ve sütunu buna göre boyutlandırın.

Tarih ve saat veriler

Takvim verileri için, ne sakladığınız konusunda net olmak faydalıdır. 

Yalnızca bir tarihe veya yalnızca bir saate ihtiyacınız varsa, DATETIME yerine DATE veya TIME kullanmak genellikle daha iyidir. Bu seçimler niyetinizi açıkça gösterir ve ileride karışıklık olasılığını azaltır. Ayrıca veritabanına yalnızca tarihli veya yalnızca saatli sorguları optimize etmek için biraz daha alan tanır.

Boolean veriler

Mümkün olduğunda, tamsayılar veya dizeler gibi dolaylı çözümler yerine BOOLEAN gibi alana uygun türleri kullanın. Yerel türler, yerleşik doğrulama, daha açık anlam ve belirli veri türlerini bekleyen veritabanı işlevlerinden destek sunar.

Aşağıda yaygın veri saklama hedeflerinin ve bunları karşılamak için önerilen SQL veri türlerinin bir özeti yer alır.

Hedef

Önerilen veri türü

Neden

Kesin sayısal değerler saklamak (para, ölçümler)

DECIMAL veya NUMERIC

Kayan nokta yuvarlama sorunları olmadan kesin değerler saklar

Kısa veya orta uzunlukta metin saklamak

VARCHAR(n)

Öngörülebilir boyut ve esnek uzunlukla verimli depolama

Uzun, yapılandırılmamış metin saklamak

TEXT veya CLOB

Açıklamalar veya belgeler gibi metin blokları için tasarlanmıştır

Yalnızca tarih veya yalnızca saat bilgisi saklamak

DATE veya TIME

Gereksiz karmaşıklıktan kaçınır ve verinin gerçek anlamını yansıtır

Esnek, belge benzeri değerler saklamak

JSON veya JSONB

Sabit sütunlara uymayan iç içe veya evrilen yapılar için kullanışlıdır

Gruplama ve filtrelemeye tazeleme yapmak isteyen okuyucular için, Intermediate SQL kursu bu temel becerileri adım adım ele alır.

Yaygın Tuzaklar ve En İyi Uygulamalar

Basit bir veritabanı şeması bile, veri türleri özenle seçilmezse sorun yaşayabilir. 

Kesilme (truncation)

Örneğin, yalnızca 5 karaktere izin veren bir ad sütununuz varsa, “Michael” yerine “Micha” ile karşılaşabilirsiniz. Bu, kesilme olarak bilinen yaygın bir sorundur.

Genellikle, gerçek hayattaki çeşitliliğin iyimser bir sınırı aşabildiği isim, adres veya yorum gibi alanlarda ortaya çıkar. Bunu önlemenin bir yolu, metin alanlarını gerçek örneklere göre boyutlandırmak veya az da olsa büyük tutmaktır.

Yuvarlama hataları

Bir diğer yaygın sorun, para veya hassasiyet gerektiren diğer veriler için kayan noktalı değerler kullanıldığında beklenmedik yuvarlama oluşmasıdır. FLOAT’lar yaklaşık değerler sakladığı için küçük tutarsızlıklar birikerek raporları, özetleri veya hesaplamaları etkileyebilir. 

Bunu, para birimi veya kesin ondalık değerler içeren her şey için DECIMAL seçerek önleyebilirsiniz. Bu, veritabanının sayıları sabit tutmasını sağlar.

Tür uyumsuzlukları

Tür uyumsuzlukları özellikle birleştirmelerde veya karşılaştırmalarda yavaş sorgulara yol açabilir.

Bir sütun dize, diğeri tamsayı olarak saklandığında (veya her tablo biraz farklı bir tür kullandığında) ve bunları birleştirmeye çalıştığınızda, veritabanı değerleri anlık olarak dönüştürmek zorunda kalabilir. Bu, hatalara yol açabilir ve gereksiz ek yük yaratır. 

İlgili sütunları aynı türde tutmak bu gizli dönüşümleri önler ve sorguların daha sorunsuz çalışmasına yardımcı olur.

Tarih biçimlendirme

Takvim tarihleri kendilerine özgü pek çok sorun barındırır. 

Sistemler yerel gelenekleri karıştırdığında veya geliştiriciler uygun tarih türleri yerine tarihleri dize olarak sakladığında, tarih biçimlendirme tutarsızlıkları yaygın bir karmaşa kaynağıdır. Bu tutarsızlıklar, sorguların hatalı davranmasına veya fark edilmeden yanlış sonuç döndürmesine neden olabilir. 

Doğrudan çözüm, gerçek tarih türlerini kullanmak ve metin biçimindeki tarihlerle çalışırken tutarlı, açık bir biçime bağlı kalmaktır. Veritabanlarınızdaki en yaygın takvim sorunlarından kaçınmanıza yardımcı olması için SQL Server’da Zaman Serisi Analizi kursumuzu özellikle öneririm.

En iyi uygulamalar

Veritabanlarınızın sorunsuz çalışmasını sağlamak için birkaç en iyi uygulama:

  • Tasarım sürecinin erken aşamalarında tablolara örnek veri girerek boyutlandırma veya tür seçimindeki zayıflıkları ortaya çıkarın.

  • Gelecekteki değişikliklerin uyumsuzluk yaratmaması için her sütunun amacını ve beklenen aralığını belgeleyin.

  • Daha spesifik türlerin açıklığı artıracağı durumlarda genel türler kullanmaktan kaçının.

Sonuç

Veri türleri, veritabanınızın sakladığınız değerleri “anlama” biçimini tanımlar. Depolamadan performansa ve açıklığa kadar her şeyi etkiler. Nasıl çalıştıklarını öğrenmek veritabanlarınızı daha güvenilir ve öngörülebilir kılar.

Bu konuyla ilgili daha fazla okumak için SQL Database Overview Tutorial ve SQLite Veri Türleri: Depolama Sınıflarına Yakından Bakış yazılarına göz atın. Ayrıca, PostgreSQL Summary Stats and Window Functions kursunu da öneririm; bu kursta kümülatif toplamlar ve sıralı istatistiklerin nasıl hesaplandığı gösterilir.

SQL’de bir veri türü, bir sütunun hangi tür veriyi saklayabileceğini ve bu verinin sorgulandığında veya işlendiğinde nasıl davrandığını tanımlar. Depolamayı, doğrulamayı, sıralamayı, karşılaştırmayı ve matematiksel işlemleri etkiler.

SQL Veri Türleri SSS

SQL’de veri türü nedir?

SQL’de bir veri türü, SQL’e veritabanı sütununuzda hangi tür bilgiyi beklemesi gerektiğini söyleyen bir kurallar bütünüdür. Esasen sisteminizin verinizi “anlama” yoludur.

SQL’de bir sütunu belirli bir veri türüne nasıl ayarlarım?

SQL’de bir sütunu tanımlarken, sütuna ad verdikten hemen sonra veri türünü belirlersiniz. Şöyle görünür: name DATATYPE. Önceden tanımladığınız bir sütundaki veri türünü güncellemek için ALTER COLUMN komutunu da kullanabilirsiniz.

Neden doğru veri türünü seçmem gerekiyor?

Veriniz için en iyi veri türünü seçmek, sahip olduğunuz veri türünü netleştirir, doğru saklama ve kullanımı sağlar ve kodunuzda sonradan oluşabilecek hataları önler.

DECIMAL ile FLOAT arasındaki fark nedir?

DECIMAL, sayıyı sabit sayıda ondalık basamakla saklayan kesin bir sayısal veri türüdür. FLOAT ise sayının bir yaklaşımını saklayan bir veri türüdür.

Tüm veritabanı yönetim sistemleri aynı veri türlerini mi kullanır?

Hem evet hem hayır. Her veritabanı yönetim sistemi, sayısal, karakter ve takvim veri türleri için benzer türlere sahiptir. Ancak, spesifik adlarında, perde arkasında nasıl kullanıldıklarında ve destekledikleri özel veri türlerinde farklılık gösterirler.


Amberle McKee's photo
Author
Amberle McKee
LinkedIn

Biyolojik araştırma ortamında verilerle çalışma konusunda 13 yıllık deneyime sahip bir doktora sahibiyim. Python, MATLAB ve R dahil olmak üzere birkaç programlama dilinde yazılım geliştiriyorum. Öğrenme sevgimi dünyayla paylaşma konusunda tutkuluyum.

Konular
SQL
MySQL
PostgreSQL

SQL Kursları

Program

SQL Temelleri

26 sa
İş için gerekli SQL temellerinde uzmanlaşın, SQL sorguları yazmayı öğrenin ve bu güçlü dili kullanarak verilerinizi analiz etmeye başlayın.
Ayrıntıları GörüntüleRight Arrow
Kursa Başla
Devamını GörRight Arrow
İlgili

blog

Hızlı Sevkiyat İçin Pratik Vibe Kodlama Teknoloji Yığını

Ön uç, arka uç, veritabanları, kimlik doğrulama, depolama, e-posta, test, dağıtım ve izleme için en iyi araçları keşfedin.
Abid Ali Awan's photo

Abid Ali Awan

14 dk.

blog

2026’da En Popüler 40 Yazılım Mühendisi Mülakat Sorusu

Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Dario Radečić's photo

Dario Radečić

15 dk.

Eğitim

.gitignore Nasıl Kullanılır: Örneklerle Pratik Bir Giriş

Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Kurtis Pykes 's photo

Kurtis Pykes

8 dk.

Eğitim

Python'da Listeyi String'e Nasıl Dönüştürürsünüz

Bu hızlı eğitimde, Python'da bir listeyi string'e nasıl dönüştüreceğinizi öğrenin.
Adel Nehme's photo

Adel Nehme

Devamını GörDevamını Gör