POSTGRESQL VERİ TİPLERİ NELERDİR?
Bir PostgreSQL veritabanında saklanabilecek ve işlenebilecek veri türünün yanı sıra bu tür veriler üzerinde gerçekleştirilebilecek işlemlerin türünün belirtilmesi gerekir. Bu amaca, integer veri tipi , floating point veri tipi, string veri tipi, boolean veri tipi vb. dahil olmak üzere PostgreSQL veritabanı tarafından desteklenen çeşitli veri tipleri tarafından hizmet edilir. PostgreSQL, çeşitli kategorilere ayrılmış standart SQL veri türlerinin çoğunu destekler.
Numeric Veri Tipi:
PostgreSQL’in desteklediği başlıca dokuz sayısal veri türü vardır.Aşağıdaki tabloyu inceleyelim:
Veri Tipi | Aralık(Range) | Depolama Boyutu | Açıklama |
INTEGER | -2147483648 to 2147483647 (signed) 0 to 4294967295 (unsigned) |
4 Bytes | Normal boyutlu tamsayı değeri. |
SMALLINT | -32768 to 32767 (signed) 0 to 65535 (unsigned) |
2 Bytes | Küçük tamsayı değeri. |
BIGINT | -9223372036854775808 to 9223372036854775807 (signed) 0 to 18446744073709551615 (unsigned) |
8 Bytes | Büyük tamsayı değeri. |
DOUBLE PRECISION |
15 Decimal digits precision. | 8 Bytes | variable-precision, inexact |
DECIMAL | 131072 before decimal; 16383 after decimal | variable | user-specified precision, exact |
NUMERIC | 131072 before decimal; 16383 after decimal | variable | User Specified precision fixed point number. |
REAL | 6 Decimal digits precision. | 4 Bytes | Variable precision floating point number. |
SERIAL | 1 to 2147483647 | 4 Bytes | Auto Incrementing Integer |
BIGSERIAL | 1 to 9223372036854775807 | 8 Bytes |
Large Auto Incrementing Integer |
Tarih ve Saat Veri Türleri:
PostgreSQL’in desteklediği başlıca beş tarih ve saat veri türü vardır. Bunlar aşağıda listelenmiştir:
Veri Tipi | Size | Aralık(Range) | Çözünürlük | Açıklama |
TIMESTAMP [ (p) ] [ without time zone ] | 8 Bytes | 4713 BC to 294276 AD | 1 microsecond / 14 digits | Hem tarih hem de saat |
TIMESTAMP [ (p) ] [with time zone] | 8 Bytes | 4713 BC to 294276 AD | 1 microsecond / 14 digits | Hem tarih hem de saat |
DATE | 4 Bytes | 4713 BC to 5874897 AD | 1 day | Date (no time of day) |
TIME [ (p) ] [ without time zone ] | 8 Bytes | 00:00:00 to 24:00:00 | 1 microsecond / 14 digits | Tarih (günün saati yok) |
TIME [ (p) ] [with time zone] | 12 Bytes | 00:00:00+1459 to 24:00:00-1459 | 1 microsecond / 14 digits | Tarih (günün saati yok) |
INTERVAL [ fields ] [ (p) ] | 12 Bytes | -178000000 years to 178000000 years | 1 microsecond / 14 digits | Zaman aralığı |
String Veri Türleri:
PostgreSQL’in desteklediği temel olarak beş string veri türü vardır. Bunlar aşağıda listelenmiştir:
Veri Tipi | Maximum Size | Açıklama |
CHAR(size) | 255 characters | Burada, boyut depolanacak karakter sayısına eşittir. Eşit boyutlu karakterlerin sağında boşluk sabit uzunluklu dizeler için kullanılır. |
VARCHAR(size) | 255 characters | Burada, boyut depolanacak karakter sayısına eşittir. Değişken uzunluktaki dizeler için kullanılır. |
TEXT(size) | 65,535 characters | Burada, boyut depolanacak karakter sayısına eşittir. |
CHARACTER(size) | 255 characters | Burada, boyut depolanacak karakter sayısına eşittir. Eşit boyutlu karakterlerin sağında boşluk sabit uzunluklu dizeler için kullanılır. |
CHARACTER VARYING(size) | 255 characters | Burada, boyut depolanacak karakter sayısına eşittir. Değişken uzunluktaki dizeler için kullanılır. |
Boolean Veri Tipi :
PostgreSQL’in desteklediği temel olarak bir boolean veri türü vardır.
Veri Tipi | Size | Açıklama |
BOOLEAN | 1 Byte | True ya da False durumunu gösterir. |
Monetary Veri Tipi:
PostgreSQL’in desteklediği temel olarak bir monetary veri türü vardır.
Veri Tipi | Size | Aralık(Range) | Açıklama |
MONEY | 8 Bytes | -92233720368547758.08 to +92233720368547758.07 | Para birimi tutarını belirtir. |
PostgreSQL veri tiplerini incelemiş olduk. Tablo oluştururuken verileriniz için en doğru veri tipini seçmenize yardımcı olacaktır.
Referanslar
https://www.postgresql.org/docs/current/datatype-numeric.html
https://w3.gazi.edu.tr/~ertan/sql/c0801.htm