Jet\Db_Backend_Interface

The interface defining the backend of the direct database connection system.

Overview of methods

Method Meaning of
public __construct(
Db_Backend_Config $config
)
Konstruktor provádí inicializaci a spojení s databázovým serverem na základě předané instance konfigurace spojení.
public __destruct(
)
Destruktor by měl ideálně provést odpojení od databázového serveru, případně další nutné ukončovací operace.
public disconnect(
): void
Provede odpojení od databázového serveru.
public getConfig(
): Db_Backend_Config
Vrátí konfiguraci daného spojení k databázovému serveru.
public execute(
string $query,
array $query_data = []
): int
Provede SQL dotaz typu INSERT, UPDATE, DELETE (a podobně) a vrátí počet ovlivněných řádků.
Parametry:
  • $query
    Dotaz samotný. Může být již v konečné podobě, nebo obsahovat parametry - viz dále.
  • $query_data
    Úplně jednoduše se dá rovnou říct, že parametry se chovají jako v \PDOStatement::execute. Tedy dotaz obsahuje pozice pro jejich vložení, $query_data pak asociované pole, kde klíč odpovídá názvu pozice v dotazu. Ukažme si to rovnou názorně: $db Db::get();
    $db->execute('INSERT INTO some_table SET
        name=:name,
        weight=:weight'

        [
            
    'name' => 'Some Name',
            
    'weight' => 123456
        
    ]);
Metoda samozřejmě musí spolupracovat s profilerem a ten o dotazu informovat.
public query(
string $query,
array $query_params = [],
?callable $result_handler=null
): iterable
Provede dotaz typu SELECT a vrátí výsledek, který před vrácením případně (volitelně) zpracuje pomocí daného handleru.
Parametry:
  • $query, query_params
    Viz metoda execute.
  • $result_handler
    Pokud je tento nepovinný parametr definován, pak je danému handleru předán výsledek SQL dotazu ke zpracování (návratová hodnota daného handleru je následně návratovou hodnotou metody execute).
Metoda samozřejmě musí spolupracovat s profilerem a ten o dotazu informovat.
public fetchAll(
string $query,
array $query_data=[]
): array
Provede dotaz typu SELECT s tím, že jeho výsledek rovnou převede na běžné pole.
Parametry:
  • $query, query_params
    Viz metoda execute.
Metoda samozřejmě musí spolupracovat s profilerem a ten o dotazu informovat.
public fetchRow(
string $query,
array $query_data = []
): array|bool
Provede dotaz typu SELECT a vrátí první řádek výsledku. Používá se tedy tam, kde se předpokládá jednořádkový výsledek.
Parametry:
  • $query, query_params
    Viz metoda execute.
Metoda samozřejmě musí spolupracovat s profilerem a ten o dotazu informovat.
public fetchAssoc(
string $query,
array $query_data=[],
?string $key_column = null
): array
Provede dotaz typu SELECT s tím, že jeho výsledek rovnou převede na běžné pole, kde klíčem tohoto pole bude hodnota sloupce určeného parametrem $key_column, nebo prvním sloupečkem výsledku, pokud parametr $key_column není definován.
Parametry:
  • $query, query_params
    Viz metoda execute.
  • $key_column
    Určuje název sloupce jehož hodnota bude použita jako klíč pole výsledku.
Metoda samozřejmě musí spolupracovat s profilerem a ten o dotazu informovat.
public fetchCol(
string $query,
array $query_data=[],
?string $column=null
): array
Provede dotaz typu SELECT s tím, že nevrátí celý výsledek, ale pole obsahující hodnoty sloupce určeného parametrem $column, případně prvním sloupcem výsledku, pokud tento parametr není definován.
Parametry:
  • $query, query_params
    Viz metoda execute.
  • $column
    Určuje název sloupce jehož hodnoty budou vráceny v poli.
Metoda samozřejmě musí spolupracovat s profilerem a ten o dotazu informovat.
public fetchPairs(
string $query,
array $query_data=[],
?string $key_column = null,
?string $value_column = null
): array
Provede dotaz typu SELECT a vrátí asociované pole, kde klíčem je sloupec určený parametrem $key_column a hodnotou pole určené parametrem $value_column. Pokud parametry $key_column a $value_column nejsou definovány, pak jsou použity hodnoty prvního a druhého sloupce výsledku.
Parametry:
  • $query, query_params
    Viz metoda execute.
  • $key_column
    Určuje název sloupce jehož hodnoty budou použity jako klíče výsledného pole.
  • $value_column
    Určuje název sloupce jehož hodnoty budou použity jako hodnoty výsledného pole.
Metoda samozřejmě musí spolupracovat s profilerem a ten o dotazu informovat.
public fetchOne(
string $query,
array $query_data = [],
?string $column = null
): mixed
Provede dotaz typu SELECT a vrátí hodnotu sloupce určeného parametrem $column (nebo prvního sloupce, pokud parametr není definován) prvního řádku výsledku. Používá se tedy tam, kde požadujete jednu jedinou hodnotu z výsledku.
Parametry:
  • $query, query_params
    Viz metoda execute.
  • $column
    Určuje název sloupce jehož hodnota bude brána jako výsledek.
Metoda samozřejmě musí spolupracovat s profilerem a ten o dotazu informovat.
public beginTransaction(
) : bool
Zahajuje transakci.
public commit(
) : bool
Ukončuje a odesílá transakci.
public rollBack(
) : bool
Ruší transakci a vrací stav zpět.
public inTransaction(
) : bool
Indikuje zda transakce probíhá.
public lastInsertId(
string $name = null
) : string
Vrací poslední vložené ID (např. autoincrement).
Předchozí kapitola
Jet\Db
Další kapitola
Jet\Db_Backend_PDO