DB_common::autoCommit() -- Active ou non l'auto-commit
Description
Active ou non l'auto-commit.
Paramètres
- booléen
$onoff
TRUE pour activer l'auto-commit. FALSE pour désactiver l'auto-commit.
Valeur retournée
entier - DB_OK en cas de succès, ou un objet
DB_Error en cas d'échec.
Note
Cette fonction ne peut pas être appelée de façon statique.
Lors de l'utilisation de MySQL en tant que votre DBMS, les transactions ne
peuvent être utilisées que lorsque les tables en question utilisent le
format InnoDB.
Exemple
Exemple 34-1. Exemple avec autocommit() <?php
$db =& DB::connect('ibase(firebird)://user:pw@localhost/path/file');
$db->autoCommit(false);
$db->query('CREATE TABLE blah (a integer)');
$db->query('CREATE TABLE blue (b integer)');
$db->commit();
$db->query('INSERT INTO blah (a) VALUES (11)');
$db->query('INSERT INTO blah (a) VALUES (12)');
$res1 =& $db->query('SELECT a FROM blah');
if (DB::isError($res1)) {
echo $res1->getMessage() . "\n";
}
$i = 1;
while ($res1->fetchInto($row, DB_FETCHMODE_ORDERED)) {
echo "Récupération des données de la ligne n°$row[0]\n";
echo "Insertion du nombre $i...\n";
$res2 =& $db->query("INSERT INTO blue (b) VALUES ($i)");
if (DB::isError($res2)) {
echo $res2->getMessage() . "\n";
}
$i++;
}
$res1->free();
$db->query('DROP TABLE blah');
$db->query('DROP TABLE blue');
$db->commit();
?> |
|