maxdb_rollback

(PECL)

maxdb_rollback

(no version information, might be only in CVS)

maxdb->rollback -- Rolls back current transaction

Description

bool maxdb_rollback ( resource link )

class maxdb {

bool rollback ( void )

}

Rollbacks the current transaction for the database specified by the link parameter.

Return values

Returns TRUE on success or FALSE on failure.

Example

Example 1. Object oriented style

<?php
$maxdb
= new maxdb("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   
printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* disable autocommit */
$maxdb->autocommit(FALSE);

$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");
$maxdb->query("INSERT INTO temp.mycity SELECT * FROM hotel.city");

/* commit insert */
$maxdb->commit();

/* delete all rows */
$maxdb->query("DELETE FROM temp.mycity");

if (
$result = $maxdb->query("SELECT COUNT(*) FROM temp.mycity")) {
   
$row = $result->fetch_row();
   
printf("%d rows in table mycity.\n", $row[0]);
   
/* Free result */
   
$result->close();
}

/* Rollback */
$maxdb->rollback();

if (
$result = $maxdb->query("SELECT COUNT(*) FROM temp.mycity")) {
   
$row = $result->fetch_row();
   
printf("%d rows in table mycity (after rollback).\n", $row[0]);
   
/* Free result */
   
$result->close();
}

/* Drop table myCity */
$maxdb->query("DROP TABLE temp.mycity");

$maxdb->close();
?>

Example 2. Procedural style

<?php
$link
= maxdb_connect("localhost", "MONA", "RED", "DEMODB");

/* check connection */
if (maxdb_connect_errno()) {
   
printf("Connect failed: %s\n", maxdb_connect_error());
   exit();
}

/* disable autocommit */
maxdb_autocommit($link, FALSE);

maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");
maxdb_query($link, "INSERT INTO temp.mycity SELECT * FROM hotel.city");

/* commit insert */
maxdb_commit($link);

/* delete all rows */
maxdb_query($link, "DELETE FROM temp.mycity");

if (
$result = maxdb_query($link, "SELECT COUNT(*) FROM temp.mycity")) {
   
$row = maxdb_fetch_row($result);
   
printf("%d rows in table mycity.\n", $row[0]);
   
/* Free result */
   
maxdb_free_result($result);
}

/* Rollback */
maxdb_rollback($link);

if (
$result = maxdb_query($link, "SELECT COUNT(*) FROM temp.mycity")) {
   
$row = maxdb_fetch_row($result);
   
printf("%d rows in table mycity (after rollback).\n", $row[0]);
   
/* Free result */
   
maxdb_free_result($result);
}

/* Drop table myCity */
maxdb_query($link, "DROP TABLE temp.mycity");

maxdb_close($link);
?>

The above examples would produce the following output:

0 rows in table mycity.
25 rows in table mycity (after rollback).

Follow phpf1 on Twitter




F1 Site Family
AJAX F1
CSS F1
Database F1
Flash F1
HTML F1
Java F1
JavaScript F1
PhotoShop F1
PHP F1
Scripts F1
Tutorial F1
Windows F1

Total time: 0.0321