Roll back a transaction

- « cubrid_put

- cubrid_schema »

- PHP Manual
- CUBRID Functions
- Roll back a transaction

# cubrid_rollback

(PECL CUBRID >= 8.3.0)

cubrid_rollback — Roll back a transaction

### Description

cubrid_rollback(resource `$conn_identifier`): bool

The cubrid_rollback() function executes rollback on the transaction pointed by `conn_identifier`, currently in progress.

Connection to server is closed after calling cubrid_rollback(). Connection handle, however, is still valid.

### Parameters

`conn_identifier`

  Connection identifier.

### Return Values

Returns `true` on success or `false` on failure.

### Examples

Example #1 cubrid_rollback() example

    <?php$conn = cubrid_connect("127.0.0.1", 33000, "demodb", "dba");cubrid_set_autocommit($conn,false);@cubrid_execute($conn, "DROP TABLE publishers");$sql = <<<EODCREATE TABLE publishers(pub_id CHAR(3), pub_name VARCHAR(20), city VARCHAR(15), state CHAR(2), country VARCHAR(15))EOD;if (!cubrid_execute($conn, $sql)) {    printf("Error facility: %d\nError code: %d\nError msg: %s\n", cubrid_error_code_facility(), cubrid_error_code(), cubrid_error_msg());    cubrid_disconnect($conn);    exit;}$req = cubrid_prepare($conn, "INSERT INTO publishers VALUES(?, ?, ?, ?, ?)");$id_list = array("P01", "P02", "P03", "P04");$name_list = array("Abatis Publishers", "Core Dump Books", "Schadenfreude Press", "Tenterhooks Press");$city_list = array("New York", "San Francisco", "Hamburg", "Berkeley");$state_list = array("NY", "CA", NULL, "CA");$country_list = array("USA", "USA", "Germany", "USA");for ($i = 0, $size = count($id_list); $i < $size; $i++) {    cubrid_bind($req, 1, $id_list[$i]);    cubrid_bind($req, 2, $name_list[$i]);    cubrid_bind($req, 3, $city_list[$i]);    cubrid_bind($req, 4, $state_list[$i]);    cubrid_bind($req, 5, $country_list[$i]);    if (!($ret = cubrid_execute($req))) {        break;    }}if (!$ret) {    cubrid_rollback($conn);} else {    cubrid_commit($conn);    $req = cubrid_execute($conn, "SELECT * FROM publishers");    while ($result = cubrid_fetch_assoc($req)) {        printf("%-3s %-20s %-15s %-3s %-15s\n",             $result["pub_id"], $result["pub_name"], $result["city"], $result["state"], $result["country"]);    }}cubrid_disconnect($conn);?>

The above example will output:

    P01 Abatis Publishers    New York        NY  USA
    P02 Core Dump Books      San Francisco   CA  USA
    P03 Schadenfreude Press  Hamburg             Germany
    P04 Tenterhooks Press    Berkeley        CA  USA

### See Also

- cubrid_commit() - Commit a transaction
- cubrid_disconnect() - Close a database connection