Example of using ibase_trans with ibase_prepare and ibase_execute:
$dbh = ibase_connect( ... );
$sql = " ... ";
$trans = ibase_trans( IBASE_DEFAULT,$dbh );
$sth = ibase_prepare( $trans, $sql );
$res = ibase_execute( $sth, $params_if_any );
if ($res == false) {
//log failure if you want
}
ibase_commit($trans);
//free if needed
ibase_free_query($sth);
unset($res);
ibase_trans
(PHP 4, PHP 5)
ibase_trans — Inizia una transazione
Descrizione
int ibase_trans
([ int $trans_args
[, int $link_identifier
]] )
Inizia una transazione.
ibase_trans
Aaron Brundle
10-Nov-2005 02:06
10-Nov-2005 02:06
jon at tgpsolutions dot com
11-Jul-2002 06:56
11-Jul-2002 06:56
When using transactions, you must execute queries using the transaction identifier as the link_identifier in ibase_query.
Example:
$db = ibase_connect( ... );
$tr = ibase_trans();
$result = ibase_query($tr, $sql1);
$result = ibase_query($tr, $sql2);
ibase_rollback($tr);
You must use ibase_query($tr, $sql1). Calling ibase_query($db, $sql1) will not allow you to roll back - it will be commited when the script finishes executing.
