Sqlite
Elofurdul hogy olyan tarhelyre kell fejleszteni ahol nincsen klasszikus adatbazis,de szuksegunk lenne ra. Van aki ilyenkor fajl-ban tarolja a szukseges adatokat de en azt nem tartom tul gyors es jo megoldasnak, foleg hogy php5 ota alapbol rendelkezesunkre all az sqlite is.
Mi is az sqlite? Ez egy c alapu egyszeru adatbazis szerver ami egy adatbazisfajlba ir es onnan olvas. Hasznalat nem sokban kulonbozik a tobbi relacios adatbazistol,viszont vannak limitacioi.
Hasznalhatjuk klasszikus modon fuggvenyekkel is, vagy objektumkozpontu-an is. En az utobbit fogom bemutatni.
Nezzuk akkor hogyan is mukodik:
$db = new SQLiteDatabase('test.db');
Ezzel megnyitjuk a test.db adatbazis fajtl ha van hozza jogunk, ha nincs akkor allitsuk at hogy legyen. Ha a fajl nem letezik akkor a program letrehozza. Tehat most letrehoztunk egy ures adatbazist. Keszitsunk egy tablat:
$db = new SQLiteDatabase('test.db'); $db->queryExec(" CREATE TABLE test( test_mezo_1 INTEGER PRIMARY KEY, test_mezo_2 INTEGER ); ")
Az sqlite-al ketfele keppen is tudunk lekerdezesek futtatni. Az egyik az queryExec ami olyan lekerdezeshez jo aminek nincs kiolvasott eredmenye. Peldaul tablak letrehozasa,adatok torlese,stb. A masik metodus a query ami barmilyen lekeredezes futtatatasara alkalmas.
A fenti peldaban letrehoztunk a test tablat,ket mezovel. Fontos megjegyezni hogy az sqlite-al az auto increment mezo definialasa nem ugy tortenik mint az mysql-nel hanem itt ha egy integer tipusu,primary key mezonk van, es abba NULL erteket teszuk akkor az automatikusan megnoveli a mezot.
Rakjunk par teszt adatot a tablankba,majd kerdezzuk vissza oket:
$db = new SQLiteDatabase('test.db'); $db->queryExec("insert into test values(1,2)"); $db->queryExec("insert into test values(3,4"); $result = $db->query("select * from test"); while($array = $result->fetch()){ echo $array['test_mezo_1'].' '.$array['test_mezo_2'].' '; }
Az alapokat mostmar tudjuk, de erdemes meg a tobbi sqlite fuggvenyt/metodust is tanulmanyozni.
Hasznunkra valhat meg a phpSQLiteAdmin webes adminisztracios eszkoz.
Cimkék: Adatbáziskezelés, mysql, Php, sqlite
