Biçimlendirme


    × Bunları biliyor muydunuz?
"Başlangıç kontrolcüsü üzerinden $this nesnesini data olarak göndererek statik olmayan sınıflara ilgili data üzerinden erişebilirsiniz."


Bu kütüphane veritabanı, tablolar ve kolonların oluşturulması, düzenlenmesi ve silinmesi üzerine geliştirilmiş kütüphanedir. DBForge:: kütüphanesi bu işlemlerin çok basit bir şekilde yapılmasını sağlar. Bu kütüphaneye ait yöntemlerin nasıl kullanılacağı tek tek aşağıda anlatılmıştır.

 

 

# Yöntemler


DBForge::createDatabase(string $dbname, mixed $extras = NULL) : bool
DBForge::dropDatabase(string $dbname) : bool
DBForge::createTable(string $table, array $condition, mixed $extras = NULL) : bool
DBForge::dropTable(string $table) : bool
DBForge::truncate(string $table) : bool
DBForge::renameTable(string $name, string $newName) : bool
DBForge::addColumn(string $table, array $columns) : bool
DBForge::dropColumn(string $table, mixed $column) : bool
DBForge::modifyColumn(string $table, array $columns) : bool
DBForge::renameColumn(string $table, array $condition) : bool
DBForge::addPrimaryKey(string $table, string $columns, string $constraint = NULL) : bool
DBForge::dropPrimaryKey(string $table, string $constraint = NULL) : bool
DBForge::addForeignKey(string $table, string $columns, string $reftable, string $refcolumn, string $constraint = NULL) : bool
DBForge::dropForeignKey(string $table, string $constraint = NULL) : bool
DBForge::createIndex(string $indexName, string $table, string $columns) : bool
DBForge::createUniqueIndex(string $indexName, string $table, string $columns) : bool
DBForge::createFulltextIndex(string $indexName, string $table, string $columns) : bool
DBForge::createSpatialIndex(string $indexName, string $table, string $columns) : bool
DBForge::dropIndex(string $indexName, string $table) : bool
DBForge::addAutoIncrement(string $table, string $column = 'id', int $start = NULL) : bool
DBForge::startAutoIncrement(string $table, int $start = 0) : bool

 

 

# CreateDatabase


Veritabanı oluşturmak için kullanılır.

Parametreler

string $dbname Veritabanı adı.
mixed $extras CREATE DATABASE DatabaseName [EXTRAS] Extras bölümünü düzenlemek için kullanılır.
return bool

Kullanımlar

DBForge::createDatabase('ExampleDatabase');

Database oluştururken dil kodlamasını da belirleyebilirsiniz.

DBForge::createDatabase('ExampleDatabase', DB::encoding());

 

 

# DropDatabase


Veritabanı silmek için kullanılır.

Parametreler

string $dbname Veritabanı adı.
return bool

Kullanımlar

DBForge::dropDatabase('ExampleDatabase');

 

 

# CreateTable


Yeni bir tablo oluşturmak için kullanılır.

Parametreler

string $table Tablo adı.
array $conditions Kolon ve özellikleri.
mixed $extras CREATE DATABASE DatabaseName [EXTRAS] Extras bölümünü düzenlemek için kullanılır.
return bool

Kullanımlar

DBForge::createTable('ExampleTable',
[
    'id'   => 'int(11) not null', 
    'name' => 'varchar(50) COLLATE utf8_unicode_ci NOT NULL' 
], DB::encoding());
Farklı Platformlarla Uyumluluk

Aşağıdaki gibi diğer veritabanı platformları ile uyum gösterecek şekilde de tablonuzu oluşturabilirsiniz.

DBForge::createTable('ExampleTable', 
[ 
    'id'   => [DB::int(11), DB::autoIncrement(), DB::primaryKey()], 
    'name' => [DB::varchar(50), DB::notNull(), DB::collate('utf8_unicode_ci')] 
], DB::encoding());
Opsiyonel Kullanım

Tablo oluşturma işlemini aşağıdaki gibi yapmanız da mümkündür.

DBForge::column('id', [DB::int(11), DB::notNull(), DB::autoIncrement()])
       ->column('name', [DB::varchar(50), DB::notNull(), DB::collate('utf8_unicode_ci')])
       ->createTable('ExampleTable');

 

 

# DropTable


Tablo silmek için kullanılır.

Parametreler

string $table Tablo adı.
return bool

Kullanımlar

DBForge::dropTable('ExampleTable');

 

 

# Truncate


Tablo içeriğini boşaltmak için kullanılır. ZN, DB::delete() yönteminin DB::where() yöntemi olmadan kullanımına izin vermediği için bir tablodaki tüm verilerin silinmesinin istenmesi durumunda bu yöntemi tercih edebilirsiniz.

Parametreler

string $table Tablo adı.
return bool

Kullanımlar

DBForge::truncate('ExampleTable');

 

 

# RenameTable


Tablo ismini değiştirmek için alter table yöntemine alternatif olarak geliştirilmiş pratik tablo adı değiştirmek yöntemidir.

Parametreler

string $table Tablo adı.
string $newName Tablonun yeni adı.
return bool

Kullanımlar

DBForge::renameTable('OldTableName' , 'NewTableName');

 

 

# AddColumn


Tabloya sütun eklemek için alter table yöntemine alternatif olarak geliştirilmiş pratik sütun ekleme yöntemidir.

Parametreler

string $table Tablo adı.
string $conditions Kolon ve özellikleri.
return bool

Kullanımlar

DBForge::addColumn('ExampleTable' , 
[
   'phone' => [DB::int(11), DB::notNull()]
]);
String Kolon Özellikleri

Kolon bilgileri string türde de girilebilir.

DBForge::addColumn('ExampleTable' , ['phone' => 'int(11) not null']);
Opsiyonel Kullanım

Kolon ekleme işlemini aşağıdaki gibi yapabilmeniz de mümkündür.

DBForge::column('id', [DB::int(11), DB::notNull(), DB::autoIncrement()])
       ->column('name', [DB::varchar(50), DB::notNull(), DB::collate('utf8_unicode_ci')])
       ->addColumn('ExampleTable');

 

 

# DropColumn


Tablodan sütun silmek için alter table yöntemine alternatif olarak geliştirilmiş pratik sütun silme yöntemidir.

Parametreler

string $table Tablo adı.
mixed $columns Kolon ve özellikleri.
return bool

Kullanımlar

DBForge::dropColumn('ExampleTable', ['name' , 'phone']);
Tekil Silme

Tek bir sütun silinecekse 2. parametre string türde ayarlanabilir.

DBForge::dropColumn('ExampleTable' , 'name'); 
Opsiyonel Kullanım

Kolon silme işlemini aşağıdaki gibi yapabilmeniz de mümkündür.

DBForge::column('name')
       ->column('phone')
       ->dropColumn('ExampleTable');

 

 

# RenameColumn


Sütun adını değiştirmek için alter table yöntemine alternatif olarak geliştirilmiş pratik sütun adı değiştirme yöntemidir.

Parametreler

string $table Tablo adı.
array $conditions Kolon ve özellikleri.
return bool

Kullanımlar

DBForge::renameColumn('ExapleTable', ['phone mobile_phone' => [DB::int(), DB::notNull()]]);
Opsiyonel Kullanım
DBForge::column('phone', ['new_phone', DB::int(), DB::notNull()])
       ->column('name',  ['new_name', DB::char(10), DB::notNull()])
       ->renameColumn('ExampleTable');

 

 

# ModifyColumn


Tabloya sütun bilgisini güncellemek için alter table yöntemine alternatif olarak geliştirilmiş pratik sütun güncelleme yöntemidir.

Parametreler

string $table Tablo adı.
array $conditions Kolon ve özellikleri.
return bool

Kullanımlar

DBForge::modifyColumn('ExampleTable', ['phone' => [DB::int(), DB::notNull()]]); 

 

 

# AddPrimaryKey


Kolona eşsiz anahtar eklemek için kullanılır.

Parametreler

string $table Tablo adı.
string $columns Eşsiz anahtar anatacak kolon veya kolonlar.
string $constraint = NULL
Bu parametreye değer atanırsa sorguya kısıtlama eklenir. Birden fazla kolona eşsiz anahtar ataması yapılacağı durumlarda bu parametreye bir kısıtlama adı verilmelidir.
return bool

Kullanımlar

DBForge::addPrimaryKey('persons', 'id');
Çoklu Anahtar

Birden fazla kolona eşsiz anahtar ataması yapmak için aşağıdaki gibi kullanılır. Bu kullanımda 3. parametrenin isimlendirilmesi zorunludur. Çünkü bu kolonlardan eşsiz anahtar özelliğinin kaldırılması gerektiği zaman bu isimlendirme kullanılır.

DBForge::addPrimaryKey('persons', 'id, departmentId', 'perdepPK');

 

 

# DropPrimaryKey


Kolona eklenmiş eşsiz anahtarı kaldırmak için kullanılır.

Parametreler

string $table Tablo adı.
string $constraint = NULL
Bu parametre SQLServer, Oracle ve ODBC sürücüleri için kullanılabilir. MySQL için kullanılması zorunlu değildir.
return bool

Kullanımlar

DBForge::dropPrimaryKey('persons', 'perdepPK');

 

 

# AddForeignKey


Kolona yabancı anahtar eklemek için kullanılır.

Parametreler

string $table Tablo adı.
string $columns Yabancı anahtarın ekleneceği kolon adı.
string $reftable Yabancı anahtar eklenen kolonun eşleştirileceği diğer kolonun tablo adı.
string $refcolumn Yabancı anahtar eklenen kolonun eşleştirileceği diğer kolon adı.
string $constraint = NULL
Bu parametreye değer atanırsa sorguya kısıtlama eklenir. Birden fazla kolona yabancı anahtar ataması yapılacağı durumlarda bu parametreye bir kısıtlama adı verilmelidir.
return bool

Kullanımlar

DBForge::addForeignKey('persons', 'departmentId', 'department', 'id', 'perdepFK');

 

 

# DropForeignKey


Kolona eklenen yabancı anahtarı kaldırmak için kullanılır.

Parametreler

string $table Tablo adı.
string $constraint = NULL Yabancı anahtarlar tüm veri tabanı platformlarında kısıtlama adına göre kaldırılır.
return bool

Kullanımlar

DBForge::dropForeignKey('persons', 'perdepFK');

 

 

# Create[Spatial|Fulltext|Unique]Index


Kolon veya kolanlara indis eklemek için kullanılır. Bu indis SPATIAL, FULLTEXT veya UNIQUE türünde olabilir.

Parametreler

string $indexName Eklenecek indisin adı.
string $table Tablo adı.
string $columns İndisin ekleneceği kolon veya kolonlar.
return bool

Kullanımlar

DBForge::createIndex('departmentCI', 'departments', 'description');
DBForge::createFulltextIndex('departmentFI', 'departments', 'description');

 

 

# DropIndex


Kolonan eklenen indisi kaldırmak için kullanılır.

Parametreler

string $indexName Eklenecek indisin adı.
string $table Tablo adı.
return bool

Kullanımlar

DBForge::dropIndex('departmentCI', 'departments');