Ortak Veritabanı Yöntemleri


    × Bunları biliyor muydunuz?
"Kontrolcü yöntemlerine parametre olarak enjekte edilen sınıfların örneklerine aynı zamanda görünmlerinden de erişebilirsiniz."


Bu kütüphanede diğer veritabanı kütüphanelerinin tamamında kullanılabilen ortak yöntemler yer almaktadır. Aşağıda gösterilecek yöntemlerin tamamı DB::, DBForge::, DBTool:: kütüphanelerinde kullanılabilir.

 

 

# Yöntemler


new(mixed $connectName) : object
secure(array $data) : this
error() : string
stringQuery() : string

 

 

# New


Farklı veritabanı bağlantısı oluşturmak için kullanılır. Bazen birden fazla farklı veritabanı ile çalışmanız gerekebilir. Bu gibi durumlarda kullanacağınız yöntem budur.

mixed $config Varsayılan ayarlar dışında yeni bir bağlantı oluşturmak için kullanılır. Hem dizi hemde dizge türde değer alabilir.
return this

Kullanımlar

$different = DB::new(['database' => 'differentDatabase']);

$different->insert('table', ['name' => 'ZN']);
$differentForge = DBForge::new(['database' => 'differentDatabase']);

$differentForge->dropTable('table');

 

 

# Secure


Bu yöntem güvenlik girişi gerektiren yöntemlerle birlikte kullanılabilir. 2 tür parametrik kullanımı söz konusudur.

array $data Güvenliği sağlanacak verilerin yer alacağı dizi.
return this

Kullanımlar

DB::secure(['zn', '4'])
  ->query('SELECT * FROM WHERE framework = ? and version = ?');
SELECT * FROM WHERE framework = 'zn' and version = '4'

Belirteç Tanımlama 

İstenirse kontrol edilecek alanlara belirteç tanımlaması yapılabilir.

DB::secure([':x' => 'zn', ':y' => '4'])
  ->query('SELECT * FROM WHERE framework = :x and version = :y');
SELECT * FROM WHERE framework = 'zn' and version = '4'

Otomatik Tırnaklama

Gönderilen veriler otomatik olarak tırnak içerisine alınır.

Tırnağın Kaydedilme Biçimi [6.19.1][2021-07-16]

Bu güncellemede veri içerisinde gönderilen tek tırnağın kaydedilme biçimi değiştirilmiştir.

Önceden Artık
\' '
DB::secure([':x' => "zn'injection"])
  ->query('SELECT * FROM WHERE framework = :x');
SELECT * FROM WHERE framework = 'zn'injection'

 

 

# Error


Sorgu sonucu hata olup olmadığını verir.

void
return string

Kullanımlar 

DB::query('SELECT * FROM');

echo DB::error();
DBForge::createTable('table', []);

echo DBForge::error();

 

 

# StringQuery


Bu yöntemin kullanımında kendinden önceki en son sorgunun string SQL dizesini verir.

void
return string

Kullanımlar

DB::get('users');

echo DB::stringQuery(); # SELECT * FROM users
# StringQueries

Bu yöntemin kullanımında kendinden önceki sorguların array türünde SQL dizisini verir.

void
return array

Kullanımlar

DB::users();
DB::accounts();

output(DB::stringQueries());
0 => SELECT * FROM users
1 => SELECT * FROM accounts
# String

Herhangi bir SQL sorgusunun string karşılığını almak için kullanılır.

void
return string

Kullanımlar

DB::string()->get('users');
SELECT * FROM USERS