An error occured: ', $error->getMessage(), ' ', $error->getUserInfo() , ''; } // d as in "dump" for printing variables function d($what) { echo '
'; print_r($what); echo ''; } // DSN string $dsn = 'mysql://root@localhost/db2mdb2'; // create instances $db =& DB::connect($dsn); $mdb2 =& MDB2::factory($dsn); // singleton too, no connection yet // set fetchmode $db->setFetchMode(DB_FETCHMODE_ASSOC); $mdb2->setFetchMode(MDB2_FETCHMODE_ASSOC); // simple select queries $all = $db->getAll('SELECT * FROM people'); //d($all); $all = $mdb2->queryAll('SELECT * FROM people'); //d($all); $one = $db->getOne('SELECT name FROM people WHERE id = 1'); //d($one); $one = $mdb2->queryOne('SELECT name FROM people WHERE id = 1'); //d($one); $row = $db->getRow('SELECT * FROM people WHERE id = 1'); //d($row); $row = $mdb2->queryRow('SELECT * FROM people WHERE id = 1'); //d($row); $col = $db->getCol('SELECT name FROM people'); //d($col); $col = $mdb2->queryCol('SELECT name FROM people'); //d($col); // quoting $one = $db->getOne( 'SELECT name FROM people WHERE id = ' . $db->quoteSmart(1) ); //d($one); $one = $mdb2->queryOne( 'SELECT name FROM people WHERE id = ' . $db->quote(1, 'integer') ); //d($one); // sequence tables //echo $db->nextId('people_db'); //echo $mdb2->nextId('people_mdb2'); // set an option //$mdb2->setOption('seqcol_name','id'); //echo $mdb2->nextId('people_mdb2_again'); // autoExecute $data = array('id' => 5, 'name' => 'Cameron'); //$db->autoExecute('people', $data, DB_AUTOQUERY_INSERT); $data2 = array('name' => 'Matt'); //$mdb2->loadModule('Extended'); //$mdb2->extended->autoExecute('people', $data2, MDB2_AUTOQUERY_UPDATE, 'id=5'); // prepared statements /* $statement = $db->prepare('INSERT INTO people VALUES (?, ?)'); $data = array(6, 'Chris'); $db->execute($statement, $data); $db->freePrepared($statement); */ /* $statement = $mdb2->prepare('INSERT INTO people VALUES (?, ?)'); $data = array(7, 'Dave'); $statement->execute($data); $statement->free(); */ // execute multiple /* $statement = $db->prepare('INSERT INTO people VALUES (?, ?)'); $data = array( array(8, 'James'), array(9, 'Cliff') ); $db->executeMultiple($statement, $data); $db->freePrepared($statement); */ /* $statement = $mdb2->prepare('INSERT INTO people VALUES (?, ?)'); $data = array( array(10, 'Kirk'), array(11, 'Lars') ); $mdb2->loadModule('Extended'); $mdb2->extended->executeMultiple($statement, $data); $statement->free(); */ // transactions /* $db->autoCommit(); $result = $db->query('DELETE people'); if (PEAR::isError($result)) { echo 'rollback'; $db->rollback(); } else { echo 'commit'; $db->commit(); } */ if ($mdb2->supports('transactions')) { $mdb2->beginTransaction(); } $result = $mdb2->query('DELETE people'); if (PEAR::isError($result)) { if ($mdb2->in_transaction) { echo 'rollback'; $mdb2->rollback(); } } else { if ($mdb2->in_transaction) { echo 'commit'; $mdb2->commit(); } } ?>