Query


Tworzenie zapytań do bazy danych

Biblioteka jest Wrapper'em czyli klasą która wywołuje klasę główną. Służy ona do prostszej obsługi i tworzenia zapytań do bazy danych w dużej części autopatyzując część rzeczy. Poniżej znajduje się lista dostępnych metod oraz ich opis.

MySQL querypdoQuery()
MySQL select query select()
MySQL insert query insert()
MySQL insert batch insertBatch()
MySQL update query update()
MySQL delete query delete()
MySQL truncate table truncate()
MySQL drop table drop()
MySQL describe table describe()
MySQL count records count()
Show/debug executed query showQuery()
Get last insert id getLastInsertId()
Get all last insert id getAllLastInsertId()
Get MySQL results results()
Get MySQL result result()
Get status of executed query affectedRows()
MySQL begin transactions start()
MySQL commit the transaction end()
MySQL rollback the transaction back()
Debugger PDO Error setErrorLog()

pdoQuery()

Podstawowa metoda do wykonywania większości zapytań

$result = $db->pdoQuery('SELECT * FROM users WHERE user_id = ?', ['1'])->result();

Notka: Warto zaznaczyć ze na końcu jest metoda result() zwraca ona pierwszy wiersz tablicy, w celu użyskania wszystich wierszy zamiast result() powinno się zastosować results()

$results = $db->pdoQuery('SELECT * FROM users')->results();

select()

Metoda służąca tylko do pobierania

$select = $pdo->select('users')->results();

Można na niej wykonywać prostsze zapytania z określanymi danymi i filtrami

// Pobiera wszystkie wiersze
$select = $pdo->select('users', '*')->results();
// Pobiera wiersze z podanych kolumn
$select = $pdo->select('users', ['user_id', 'user_name'])->results();

insert()

Metoda służąca tylko do dodawania danych do bazy

$dataArray = ['user_name' => 'Jack'];
$insert = $db->insert('users', $dataArray)->getLastInsertId();

InsertBatch()

Działająca na podobnej zasadzie jak insert() lecz daje nam możliwość dodanie hurtem

$dataArray[] = ['user_name' => 'Eli'];
$dataArray[] = ['user_name' => 'Jack'];
$dataArray[] = ['user_name' => 'Mati'];
$insert = $db->insertBatch('users', $dataArray)->getAllLastInsertId();

update()

Najwygdniejsza metoda w całym wraperze do aktualizowania danych

$dataArray = ['user_name' => 'Monana', 'user_age' => '35'];
$where = ['id' => 23];
$update = $db->update('users', $dataArray, $aWhere)->affectedRows();

delete()

delete służy do kasowania prostych danych.

$aWhere = ['age' => 35];
$delete = $db->delete('test', $aWhere)->affectedRows();

W przypadku kasowania bardziej skomplikowanego związanymi z większe/mniejsze/podobne używamy pdoQuery z zaleceniem użycia już whereChunkString

truncate()

Czyści tablicę

$truncate = $db->truncate('users');

drop()

Usuwa tablicę

$drop = $db->drop('users');

describe()

Pokazuje liste kolumn w bazie oraz ich typy

$describe = $db->describe('users');

count()

Liczenie liczby wierszy w mniej skomplikowanych zapytaniach

$count = $db->count('employees');
$bindWhere = ['user_name' => 'Jack'];
$count = $db->count('users', $bindWhere);

showQuery()

showQuery jest bardzo przydatną metodą przy dużych zapytaniach dzięki niej zamiast parametru result()/results() wstawiamy showQuery() dzięki czemu wyświetla nam zapytanie z podstawionymi zmiennymi

$results = $db->pdoQuery('SELECT * FROM users')->showQuery();
echo $results;

getLastInsertId()

Zwraca ostatnio wstawiony id wiersza

$getLastInsertId = $db->insert('users', $dataArray)->getLastInsertId();
echo $getLastInsertId;

getAllLastInsertId()

Zwraca tablicę wszystkich ostatnich wstawionych id dla metody insertBatch

results()

Zwraca dane w domyślnym formacje array dostępne jeszcze xml/json

$data = $db->results();
$data = $db->results('xml');
$data = $db->results('json');

result()

Działa na tej samej zasadzie do results i jak juz było wspomnanie zwraca nam tylko pierszy wiersz

$data = $db->result();
$data = $db->result('xml');
$data = $db->result('json');

affectedRows()

Zwraca nam liczbę zmodyfikowanych wierszy

$data = $db->affectedRows();

start()

Rozpoczęcie transakcji mysql

$data = $db->start();

end()

Zakoczenie transackji mysql

$data = $db->end();

back()

Cofnięcie zmian jeśli w trakcie start/end wyskoczył jakiś bład

$data = $db->back();

setErrorLog()

Domyślnie ustawiany przy konfiguracji na false włacza/wyłacza debugowanie

$db->setErrorLog(true);     // true/false


Edit page (Query)