PostgreSQL’de üç çeşit karakter veri tipi bulunmaktadır. Bu tipler şunlardır:

  •    Char(n)
  •    Varchar(n)
  •    Text

Char(n) Veri Tipi:

Bu veri tipinin iki kullanımı bulunmaktadır:

    -Char
    -Char(n)

Char:

Bu veri tipinde PostgreSQL yalnızca bir karakterlik veri kabul eder. Tablonuzun belirlediğiniz sütununda sadece tek karakterlik veri tutmak isterseniz, bu veri tipi size kullanım kolaylığı sağlayacaktır.

Kullanımı:
Öncelikle "CREATE TABLE" komutuyla bir tablo oluşturuyoruz:

 

Daha sonra, oluşturduğumuz tablonun içine "INSERT INTO" komutu ile veri girişi yapıyoruz:

 

 Daha sonra oluşan tablomuzu görebilmek için aşağıdaki örnekteki gibi "SELECT FROM" komutunu kullanmalıyız:

Bu komut,  "ornek" tablosundaki tüm verileri bana göster anlamına geliyor.(bu komutta kullandığımız " * " her şey demek oluyor, tüm verileri getirmeye yarar.)

Yukarıda anlattığım gibi, "Char" veri tipi bir karakter kabul ettiği için, bir karakterden fazlasını yazarsak PostgreSQL bize aşağıdaki gibi hata verir:

Özet olarak, "Char" veri tipi sadece tek karakterlik verileri kabul eder. Eğer birden fazla karakterli veriler girmemiz gerekiyorsa "Char(n)" veri tipini kullanmalıyız.


Char(n):

Bu veri tipi n adet karakter alır. "Character(n)" olarak da kullanılır, bir farkı yoktur. Eğer belirlenmiş "n" uzunluğundan daha kısa bir veri girerseniz, kalan karakterleri PostgreSQL boşlukla doldurur. Örneğin, siz 'n' i 10 karakter belirlerseniz ve 2 karakter girerseniz, PostgreSQL kalan 8 karakteri boşlukla doldurur. 

Kullanımı:
Öncelikle, "CREATE TABLE" komutu ile "ornek" isimli bir tablo oluşturalım:

Daha sonra, "INSERT INTO" komutu ile oluşturduğumuz tablonun içine veri girelim:

"n" değerini yukarıda 8 olarak belirlemiştik. Eğer girdiğimiz verilerden birinin karakter uzunluğu 8'den fazla olursa PostgreSQL bunu kabul etmez, ve aşağıdaki gibi bir hata mesajı gönderir;

Hata aldığımız verinin tablomuza eklenmediğini görmek için "SELECT FROM" komutunu aşağıdaki gibi kullanabiliriz:

Varchar Veri Tipi:

Bu veri tipi, "Char(n)" veri tipinden farklı olarak, verinin uzunluğu sizin girdiğiniz karakter sayısı kadardır. Yani, belirlenmiş ‘n’ uzunluğundan daha kısa bir veri girerseniz, kalan kısımları PostgreSQL boşlukla doldurmaz. 

Kullanımı:

Öncelikle "CREATE TABLE" komutu ile tablo oluşturabiliriz. Örnek olarak bir "ogrenciler" tablosu oluşturalım:

Tablomuza "INSERT INTO" komutu ile veriler ekleyelim:

Yukarıdaki örnekteki ‘ad’ veya ‘soyad’ kısmına 8 karakterden az bir veri girerseniz, verinin uzunluğu sizin girdiğiniz karakter kadardır. Bu Varchar(n)'ı Char(n)'dan ayıran bir özelliktir. Eğer 8 karakterden fazla bir veri girmek istersek bunu başaramayız. PostgreSQL aşağıdaki gibi hata verir:

İlk girdi tablomuza eklenmeli, ikinci girdi ise karakter hatasından dolayı tablomuza eklenememeli. Bunu görmek için "SELECT FROM" komutunu aşağıdaki şekilde kullanabiliriz:

Text Veri Tipi:

Bu veri tipinde, diğerlerinde olduğu gibi belirlenen bir "n" değeri yoktur. Teorik olarak, bu veri tipi sınırsız gibi görünmektedir. Fakat PostgreSQL, işletim sisteminin büyük dosya desteği olmamasına karşın, tabloları 1GB dosyalar halinde saklar. Bir alan birden fazla dosyada saklanamayacağı için üst sınır 1GB'dır.

Kullanımı:


Öncelikle,"CREATE TABLE" komutuyla 'isimler' adında bir tablo oluşturalım:

Daha sonra, "INSERT INTO" komutuyla içerisine veriler ekleyelim:

 

Oluşturduğumuz tabloyu "SELECT FROM" komutuyla ekrana getirebiliriz:

Text veri tipi sınırlamaya kapalı olduğu için, belirli bir karakter sayısı belirleyemeyiz. Belirlemek istediğimizde böyle bir hatayla karşılaşırız:

Sonuç olarak;

Char: Sadece tek karakterlik veri girişlerinde kullanılmak için uygundur.

Char(n): Belirli bir alanı vardır(kullanıcının belirlediği n değeri), o alanı doldurmasan da kendisi boşluklarla doldurur. Bu yüzden performans eksikliği yaratır fakat bu gözardı edilebilecek bir eksiktirdir.

Varchar(n): Girdiğin karakter adedi kadar yer kaplar. Char(n)'dan farklı olarak, kalan kısmı boşluk ile doldurmaz. Verinin boyutu kullanıcının girdiği kadardır.

Text: Teoride sınırsızdır, yani kullanıcı char(n) ve varchar(n)'de olduğu gibi bir sınır koyamaz. Fakat PostgreSQL'in koyduğu 1GB'lık sınırı geçemez.

1 Trackback

Trackback specific URI for this entry

  • GBD Blog 
    PostgreSQL SAYISAL VERİ TİPLERİ
    PostgreSQL'de veri tabanları bazı veri tiplerine sahiptir. Önceki yazımda karakter veri tiplerinden bahsetmiştim. Buradan okuyabilirsiniz. Şimdi de sayısal veri tiplerinden bahsedeceğim. Öncelikle sayısal veri tipleri üçe ayrılmaktadır: Tams ...

No comments

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
Standard emoticons like :-) and ;-) are converted to images.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Submitted comments will be subject to moderation before being displayed.