PHP Portal » PHP Handbuch » maxdb_rollback

Werbung

maxdb_rollback


(PECL maxdb >= 1.0)

maxdb_rollback -- maxdb->rollbackRolls back current transaction

Beschreibung

bool maxdb_rollback ( resource $link )
maxdb
bool rollback ( void )

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

Rückgabewerte

Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.

Beispiele

PHP Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
$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();

PHP Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
$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);

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

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

Siehe auch