Veri Türleri


    × Bunları biliyor muydunuz?
"Libraries/ dizini içine taşınan veya bu dizinde oluşturulan kütüphaneler hiç bir tanımlama gerektirmeden kullanılabilir. "


Bu bölümde veritabanı sürücülerine göre farklılık gösteren veri türlerinin nasıl hepsinde ortak kullanılacağını göstereceğiz. Aşağıda veri türlerinin veritabanı platformlarına göre değişimini gösteren tablo yer almaktadır.

MySQL Postgres SQLite SQLServer ODBC Oracle
int intEGER intEGER int intEGER NUMBER
SMALLINT SMALLINT SMALLINT SMALLINT SMALLINT NUMBER
TINYINT SMALLINT TINYINT TINYINT TINYINT NUMBER
MEDIUMINT intEGER MEDIUMINT int intEGER NUMBER
BIGINT BIGINT BIGINT BIGINT BIGINT NUMBER
DECIMAL DECIMAL DECIMAL DECIMAL DECIMAL DECIMAL
DOUBLE DOUBLE PRECISION DOUBLE float float float
float NUMERIC float float float float
CHAR CHARACTER CHARACTER CHAR CHAR CHAR
VARCHAR CHARACTER VARYING VARCHAR VARCHAR VARCHAR VARCHAR2
TINYTEXT CHARACTER VARYING(255) VARCHAR(255) VARCHAR(255) VARCHAR(255) VARCHAR2(255)
TEXT TEXT TEXT VARCHAR(65535) VARCHAR(65535) VARCHAR2(65535)
MEDIUMTEXT TEXT CLOB VARCHAR(16277215) VARCHAR(16277215) VARCHAR2(16277215)
LONGTEXT TEXT BLOB VARCHAR(16277215) VARCHAR(16277215) CLOB
DATE DATE DATE DATE DATE DATE
DATETIME TIMESTAMP DATETIME DATETIME DATETIME TIMESTAMP
TIME TIME DATETIME TIME TIME TIMESTAMP
TIMESTAMP TIMESTAMP DATETIME TIMESTAMP TIMESTAMP TIMESTAMP

Yukarıdaki farklılıkları gidermek için bu veri türlerine göre yöntemler oluşturulmuştur. Bu yöntemlerin nasıl kullanılacağı ile ilgili bir örnek aşağıda verilmiştir.

 

 

# Yöntemler


DB::int(int $len = NULL, bool $type = true) : string
DB::smallInt(int $len = NULL, bool $type = true) : string
DB::tinyInt(int $len = NULL, bool $type = true) : string
DB::mediumInt(int $len = NULL, bool $type = true) : string
DB::bigInt(int $len = NULL, bool $type = true) : string
DB::decimal(int $len = NULL, bool $type = true) : string
DB::double(int $len = NULL, bool $type = true) : string
DB::float(int $len = NULL, bool $type = true) : string
DB::char(int $len = NULL, bool $type = true) : string
DB::varchar(int $len = NULL, bool $type = true) : string
DB::tinyText() : string
DB::text() : string
DB::mediumText() : string
DB::longText() : string
DB::date(int $len = NULL, bool $type = true) : string
DB::dateTime(int $len = NULL, bool $type = true) : string
DB::time(int $len = NULL, bool $type = true) : string
DB::timeStamp(int $len = NULL, bool $type = true) : string

 

 

# Int


SQL int deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::int(11); # INT(11)
Tablo Oluştururken
DBForge::addColumn('persons' , 
[ 
    'id' => [DB::int(11), DB::primaryKey(), DB::autoIncrement()]
]);

 

 

# SmallInt


SQL SMALLINT deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::smallInt(11); # SMALLINT(11)

 

 

# TinyInt


SQL TINYINT deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::tinyInt(11); # TINYINT(11)

 

 

# MediumInt


SQL MEDIUMINT deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::mediumInt(11); # MEDIUMINT(11)

 

 

# BigInt


SQL BIGINT deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::bigInt(11); # BIGINT(11)

 

 

# Decimal


SQL DECIMAL deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::decimal(11); # DECIMAL(11)

 

 

# Double


SQL DOUBLE deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::double(11); # DOUBLE(11)

 

 

# Float


SQL float deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::float(11); # FLOAT(11)

 

 

# Char


SQL CHAR deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::char(1); # CHAR(1)

 

 

# Varchar


SQL VARCHAR deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::varchar(200); # VARCHAR(200)

 

 

# TinyText


SQL TINYTEXT deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

return string

Kullanımı

echo DB::tinyText(); # TINYTEXT;

 

 

# Text


SQL TEXT deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

return string

Kullanımı

echo DB::text(); # TEXT

 

 

# MediumText


SQL MEDIUMTEXT deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

return string

Kullanımı

echo DB::mediumText(); # MEDIUMTEXT

 

 

# LongText


SQL LONGTEXT deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

return string

Kullanımı

echo DB::longText(); # LONGTEXT

 

 

# Date


SQL DATE deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::date(); # DATE

 

 

# DateTime


SQL DATETIME deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::dateTime(); # DATETIME

 

 

# Time


MYSQL TIME deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::time(); # TIME

 

 

# TimeStamp


MYSQL TIMESTAMP deyiminin karşılığıdır. Ancak yöntemin çıktısı yukarıdaki tabloya göre seçili veritabanı sürüsünün türüne göre değişiklik göstermektedir.

Parametreler

int $length = NULL Kolon karakter uzunluğu.
return string

Kullanımı

echo DB::timeStamp(); # TIMESTAMP