Veri Türleri
"Kontrolcü yöntemine ajax kontrolü için : void tür dayatması uygulayabilirsiniz."
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)
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