Drupal adatbázis kezelés
Adatbázisok megadása
/sites/deafult/setting.php-n belül lehet megadni a különféle adatbázisokat
Példa két adatbázishoz való csatlakozáshoz
try {
... ide kerüljön az adatbáziskezelő kódok! ...
} catch (PDOException $e) {
drupal_set_message(t('Error: %message', array('%message' => $e->getMessage())), 'error');
}
! Ha nem alkalmazzuk a try/catch-et, akkor már egy adatbázis hiba miatt is az egész Drupal oldal nem fog működni !
Adatbázis elemek lekérdezése I.
$dbi = db_select('jaratok','j')->fields('j',array('jarat'))->condition('datum',$datum,'=')->orderby('sorrend','ASC')->execute();
! Sajnos itt meg kell adni, hogy a táblázatra hogyan fogunk röviden hivatkozni. Pl: itt a példában a jaratok-ra j-ként történik a hivatkozás !
Adatbázis elemek lekérdezése II.
$dbi = db_query("SELECT jarat FROM {jaratok} WHERE datum='$datum' ORDER BY sorrend ASC")->execute();
! Ha a settings.php-ban meg van adva az előtag, ami mondjuk dev_, akkor FROM esetén dev_jaratok helyett lehet a {jaratok}-at is használni !
Adatbázis elemek módosítása
$dbi = db_update('jaratok')->fields(array('jarat'=>'222EE'))->condition('sorrend',$sorrend,'=')->execute();
Adatbázis elemek törlése
$dbi = db_delete('jaratok')->condition('sorrend',$sorrend)->execute();
Adatbázis elemek felvitele
$dbi = db_insert('jaratok')->fields(array('jarat'=>'111E','sorrend'=>$sorrend,'tulajdonsag'=>'Autóbusz, Nappal','datum'=>'2014-11-11'))->execute();
! Sajnos minden egyes elemnek értéket kell adni, így az autoinkrementes mezőknek is !
Eredmények kiiratása
foreach ($dbi as $leker) {
$jarat = $leker->jarat;
echo "$jarat,";
}