<?php

require_once('class.Database.php');

try {
   $db = Database::instance();
} catch (Exception $e) {
   // Nie ma sensu dziaa dalej...
   die("Bd poczenia z baz.");
}

$sql = "SELECT count(1) FROM mojatabela";
$count = $db->getOne($sql);
print "Liczba rekordw w tabeli mojatabela: $count<br>\n";

// rozpoczyna transakcj
$db->startTransaction();

// dodaje nowy rekord, a nastpnie modyfikuje go
try {
   $arValues = array();
   $arValues['id'] = '#id#';
   $arValues['mojawartosc'] = 'bla bla bla';
   $newID = $db->insert('mojatabela', $arValues);

   print "Nowy rekord otrzyma identyfikator $newID<br>\n";

   // modyfikuje utworzony rekord
   $arUpdate = array();
   $arUpdate['mojawartosc'] = 'foobar baz!';
   $affected = $db->update('mojatabela', $arUpdate, "id = $newID");
   print "Liczba zmodyfikowanych rekordw: $affected<br>\n";

   // zatwierdza zmiany w bazie
   $db->commit();
} catch (Exception $e) {
   // wystpi bd, przerywa transakcj
   // i wypisuje komunikat o bdzie
   $db->abort();
   print "Wystpi bd.<br>\n" . $e->getMessage();
}

?>